@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--navy:#061b3a;--blue:#0757d7;--cyan:#18cfff;--yellow:#ffcf24;--bg:#f3f6fa;--ink:#101828;--muted:#667085;--line:#e3e9f1;--white:#fff;--green:#087f5b;--red:#b42318}*{box-sizing:border-box}body{margin:0;font:14px/1.5 'DM Sans',sans-serif;color:var(--ink);background:var(--bg)}h1,h2,h3{font-family:Manrope,sans-serif;margin:0;line-height:1.1}p{margin:0;color:var(--muted)}a{text-decoration:none;color:inherit}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#0d7ce3,#061b3a 52%,#020915)}.login-card{width:min(440px,calc(100% - 30px));background:#fff;border-radius:24px;padding:36px;display:grid;gap:17px;box-shadow:0 35px 90px #0007}.admin-logo{width:52px;height:52px;display:grid;place-items:center;background:var(--yellow);color:var(--navy);font:800 20px Manrope;border-radius:15px}.login-card>p{font-weight:800;color:var(--blue);letter-spacing:.14em;font-size:.72rem}.login-card h1{font-size:2.1rem}.login-card label,.admin-form label,.editor-card label{display:grid;gap:6px;font-size:.8rem;font-weight:700}.login-card input,.admin-body input,.admin-body select,.admin-body textarea{width:100%;min-height:44px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font:inherit;background:#fff;outline:none}.login-card input:focus,.admin-body input:focus,.admin-body select:focus,.admin-body textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0757d714}.login-card button,.button{border:0;background:var(--blue);color:#fff;padding:12px 17px;border-radius:9px;font:700 13px Manrope;cursor:pointer}.login-card small{color:var(--muted);background:#f4f7fb;padding:10px;border-radius:8px}.login-card>a{color:var(--blue);font-weight:700}.admin-body>aside{position:fixed;inset:0 auto 0 0;width:250px;background:var(--navy);color:#fff;padding:25px 14px;display:flex;flex-direction:column;z-index:30}.side-brand{display:flex;align-items:center;gap:11px;padding:0 10px 28px;font:800 16px Manrope}.side-brand b{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--yellow);color:var(--navy)}.side-brand span{display:grid}.side-brand small{font-size:.55rem;color:#7ca1c7;letter-spacing:.16em}.admin-body aside nav{display:grid;gap:5px}.admin-body aside nav a{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 12px;border-radius:9px;color:#a9bed6;font-weight:600}.admin-body aside nav a:hover,.admin-body aside nav a.active{color:#fff;background:#12345c}.admin-body aside nav i{font-style:normal;width:20px;color:var(--cyan);font-size:17px;text-align:center}.admin-body aside nav em{font-style:normal;font-size:.7rem;background:var(--yellow);color:var(--navy);border-radius:99px;padding:2px 7px;margin-left:auto}.side-foot{display:grid;gap:8px;margin-top:auto;padding:15px 12px;border-top:1px solid #ffffff17;color:#a9bed6}.admin-main{margin-left:250px;padding:0 34px 60px}.admin-main>header{height:100px;display:flex;align-items:center;border-bottom:1px solid var(--line);margin-bottom:28px}.admin-main>header h1{font-size:1.6rem}.admin-main>header p{font-size:.75rem}.user-pill{margin-left:auto;display:flex;align-items:center;gap:9px}.user-pill>b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#dfeeff;color:var(--blue)}.user-pill span{display:grid;font-weight:700}.user-pill small{font-weight:400;color:var(--muted);text-transform:capitalize}.side-toggle{display:none;border:0;background:none;font-size:22px;margin-right:12px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.stat-grid article{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;display:grid;gap:7px}.stat-grid span{color:var(--muted);font-weight:600}.stat-grid strong{font:800 1.9rem Manrope;color:var(--navy)}.stat-grid small{color:var(--blue)}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:22px}.panel.narrow{max-width:920px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.panel-head h2{font-size:1.25rem}.panel-head p{font-size:.84rem;margin-top:4px}.actions{display:flex;gap:9px}.table-search{max-width:230px}.text-button,.row-action{color:var(--blue);font-weight:700}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:780px}th{text-align:left;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;padding:11px;border-bottom:1px solid var(--line)}td{padding:14px 11px;border-bottom:1px solid #edf1f6;white-space:nowrap}td small,td b{display:block}.status{display:inline-block;padding:4px 8px;border-radius:99px;background:#edf2f7;text-transform:capitalize;font-size:.72rem;font-weight:700}.status.confirmed,.status.paid,.status.completed{background:#e7f8ef;color:var(--green)}.status.pending,.status.deposit_paid,.status.part_paid{background:#fff6d8;color:#8b6500}.status.cancelled,.status.declined,.status.refunded{background:#fff0ef;color:var(--red)}.empty{text-align:center;padding:35px!important;color:var(--muted)}.alert{padding:12px 15px;border-radius:10px;margin-bottom:16px;font-weight:700}.alert.success{background:#e7f8ef;color:var(--green)}.alert.error{background:#fff0ef;color:var(--red)}.booking-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.booking-summary span{background:var(--bg);padding:13px;border-radius:9px;color:var(--muted);font-size:.75rem}.booking-summary b{display:block;font-size:.95rem;color:var(--ink);margin-top:4px}.split{display:grid;grid-template-columns:1.5fr .5fr;gap:24px}.admin-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}.admin-form .wide{grid-column:1/-1}.admin-form textarea,.editor-card textarea{min-height:82px;resize:vertical}.admin-form button{justify-self:start}.admin-form.compact{grid-template-columns:1fr}.danger-zone{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.danger-zone button{border:0;background:none;color:var(--red);font-weight:700;cursor:pointer}.editor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.editor-card{border:1px solid var(--line);border-radius:12px;padding:16px;display:grid;gap:11px;align-content:start}.editor-card h3{font-size:1rem}.editor-card small{color:var(--muted)}.toggle{display:flex!important;align-items:center;gap:8px}.toggle input{display:none}.toggle span{width:36px;height:21px;border-radius:99px;background:#c9d3df;position:relative}.toggle span:after{content:'';position:absolute;width:15px;height:15px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.toggle input:checked+span{background:var(--blue)}.toggle input:checked+span:after{transform:translateX(15px)}.hidden{display:none}.message-list{display:grid;gap:12px}.message-list article{display:grid;grid-template-columns:.6fr 1.2fr auto;gap:20px;align-items:start;border:1px solid var(--line);border-radius:11px;padding:16px}.message-list article>div{display:grid}.message-list span,.message-list small{color:var(--muted)}.message-list p{color:var(--ink)}
@media(max-width:1100px){.stat-grid{grid-template-columns:1fr 1fr}.editor-grid{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.booking-summary{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.admin-body>aside{transform:translateX(-100%);transition:.2s}.side-open>aside{transform:none}.admin-main{margin-left:0;padding:0 15px 40px}.side-toggle{display:block}.admin-main>header{height:80px}.user-pill span{display:none}.stat-grid,.editor-grid,.booking-summary{grid-template-columns:1fr}.panel{padding:15px}.panel-head{align-items:flex-start;flex-direction:column}.actions{width:100%;flex-direction:column}.table-search{max-width:none}.admin-form{grid-template-columns:1fr}.admin-form>*{grid-column:1}.message-list article{grid-template-columns:1fr}.split{grid-template-columns:1fr}}
