@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Playfair+Display:wght@600&display=swap');
:root{--ink:#171518;--muted:#777178;--paper:#f5f2f0;--line:#e2dcda;--rose:#c97386;--green:#2d9365}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.admin-sidebar{position:fixed;inset:0 auto 0 0;width:236px;background:var(--ink);color:#fff;padding:28px 18px;display:flex;flex-direction:column;z-index:20}
.admin-brand{display:grid;grid-template-columns:36px 1fr;align-items:center;padding:0 8px 32px}.admin-brand>span,.login-brand span{grid-row:1/3;width:34px;height:34px;border-radius:11px;background:#fff;color:var(--ink);display:grid;place-items:center;font:italic 25px Playfair Display,serif}.admin-brand strong{font-size:18px;line-height:1}.admin-brand small{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#9c959e}
.admin-sidebar nav{display:grid;gap:5px}.admin-sidebar nav a{padding:12px;border-radius:10px;color:#aaa4ac;font-size:13px;font-weight:600;display:flex;align-items:center;gap:11px}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:#29262a}.admin-sidebar nav i{font-style:normal;width:22px;text-align:center}
.sidebar-user{margin-top:auto;border-top:1px solid #333035;padding:20px 6px 0;display:grid;grid-template-columns:38px 1fr 20px;gap:10px;align-items:center}.sidebar-user>span{width:38px;height:38px;border-radius:12px;background:#dba3b0;display:grid;place-items:center;color:var(--ink);font-weight:700}.sidebar-user div{display:grid;gap:3px;min-width:0}.sidebar-user strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:10px;color:#928b94}
.admin-main{margin-left:236px;padding:36px 42px 70px;min-height:100vh}.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-kicker{font-size:9px;color:var(--rose);font-weight:700;letter-spacing:.18em}.admin-topbar h1{font:600 40px Playfair Display,serif;margin:5px 0 0}.admin-primary,.admin-secondary{border:0;border-radius:10px;padding:12px 17px;font-size:12px;font-weight:700;display:inline-flex;background:var(--ink);color:#fff}.admin-secondary{background:#eee9e6;color:#6f686f}.admin-secondary:disabled{opacity:.55}
.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stats-row article{background:#fff;border:1px solid #ebe6e3;border-radius:16px;padding:18px;display:grid;gap:8px}.stats-row span{font-size:11px;color:var(--muted)}.stats-row strong{font-size:25px}.stats-row .integration-stat strong{font-size:12px;color:#aa555f}.integration-stat a{font-size:10px;font-weight:700}
.calendar-card,.table-card,.settings-card,.integration-note{background:#fff;border:1px solid #e9e3e0;border-radius:18px;overflow:hidden}.calendar-toolbar{height:68px;border-bottom:1px solid #eee9e6;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 20px}.calendar-toolbar>div{display:flex;gap:8px}.calendar-toolbar a{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:11px}.calendar-toolbar h2{font-size:14px;margin:0}.calendar-toolbar>span{text-align:right;color:var(--muted);font-size:10px}
.week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));overflow-x:auto}.day-column{min-height:500px;border-right:1px solid #eee9e6}.day-column:last-child{border:0}.day-head{padding:15px;display:flex;align-items:center;justify-content:center;gap:7px;border-bottom:1px solid #eee9e6}.day-head span{font-size:10px;text-transform:uppercase;color:var(--muted)}.day-head strong{font-size:14px}.day-head.today strong{background:var(--ink);color:#fff;border-radius:50%;width:30px;height:30px;display:grid;place-items:center}
.day-events{padding:9px;display:grid;align-content:start;gap:8px}.day-empty{font-size:10px;color:#b3adb2;text-align:center;padding:20px 0}.calendar-event{border-left:3px solid var(--event-color);background:#f7f3f2;border-radius:8px;padding:10px;display:grid;gap:4px}.calendar-event time{font-size:9px;color:var(--muted)}.calendar-event strong{font-size:11px}.calendar-event span,.calendar-event small{font-size:9px;color:var(--muted)}
.table-head{padding:18px 22px;border-bottom:1px solid #eee9e6;display:flex;justify-content:space-between}.table-head span{font-size:11px;color:var(--muted)}.booking-row{display:grid;grid-template-columns:42px 1.3fr 1.5fr 1fr 110px 150px;gap:14px;align-items:center;padding:15px 20px;border-bottom:1px solid #f0ece9}.booking-row>div{display:grid;gap:4px}.booking-row strong{font-size:12px}.booking-row a,.booking-row span{font-size:10px;color:var(--muted)}.client-avatar{width:38px;height:38px;border-radius:12px;background:#f0d9df;display:grid!important;place-items:center;color:#8e5361;font-weight:700}.booking-row select{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px;font-size:10px}.status{justify-self:start;padding:6px 8px;border-radius:99px;background:#eee}.status-confirmed{background:#dff3e9!important;color:#24714d!important}.status-cancelled{background:#f7dfe3!important;color:#9b3f50!important}.status-completed{background:#e2e4f7!important;color:#4e579b!important}.table-empty{padding:70px;text-align:center;color:var(--muted)}
.alert{border-radius:12px;padding:14px 16px;font-size:12px;margin-bottom:20px}.alert strong{display:block;margin-bottom:4px}.alert-warning{background:#fff4d5;color:#715c21}.alert-error{background:#f9dfe4;color:#8b3041}.alert-success{background:#dcf3e7;color:#246c49}
.integration-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.integration-card{background:#fff;border:1px solid #e9e3e0;border-radius:18px;padding:24px}.integration-card-head{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center}.integration-card-head>span{width:48px;height:48px;border-radius:14px;background:var(--master-color);display:grid;place-items:center;color:#fff;font-weight:700}.integration-card h2{font-size:15px;margin:0}.integration-card p{font-size:10px;color:var(--muted);margin:4px 0 0}.integration-card-head b,.backup-overview b{font-size:9px;color:#9e4857;background:#f7dfe4;border-radius:99px;padding:6px 9px}.integration-card-head b.connected,.backup-overview b.connected{color:#26714e;background:#dff3e9}.integration-card dl{display:grid;margin:22px 0}.integration-card dl div{display:flex;justify-content:space-between;border-top:1px solid #f0ebe8;padding:11px 0;font-size:10px}.integration-card dt{color:var(--muted)}.integration-card dd{margin:0;max-width:55%;overflow:hidden;text-overflow:ellipsis}.integration-note{padding:26px;margin-top:18px}.integration-note h2{font:600 22px Playfair Display,serif}.integration-note ol{color:var(--muted);font-size:12px;line-height:2}
.backup-overview{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.backup-overview article{background:#fff;border:1px solid #e9e3e0;border-radius:18px;padding:22px;display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center}.provider-logo{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-weight:700;color:#fff}.supabase-logo{background:#2fa976}.sheets-logo{background:#1f9258}.backup-overview h2{font-size:15px;margin:0}.backup-overview p{font-size:10px;color:var(--muted);margin:5px 0 0;line-height:1.5}.backup-overview a{font-size:10px;font-weight:700}
.settings-card{padding:25px;margin-bottom:18px}.settings-heading h2{font:600 23px Playfair Display,serif;margin:0}.settings-heading p{font-size:11px;color:var(--muted)}.settings-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.settings-form label{font-size:10px;font-weight:700;display:grid;gap:7px}.settings-form input{border:1px solid var(--line);border-radius:9px;padding:11px}.settings-form button{align-self:end;justify-self:start}.destination-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eee9e6;padding:15px 0}.destination-row>div{display:grid;gap:5px}.destination-row strong{font-size:12px}.destination-row span{font-size:10px;color:var(--muted)}
.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eee4e1,#f8f6f3)}.login-card{width:min(440px,calc(100% - 30px));background:#fff;border-radius:24px;padding:42px;box-shadow:0 30px 80px rgba(43,32,37,.12)}.login-brand{display:flex;align-items:center;gap:10px}.login-kicker{font-size:9px;color:var(--rose);letter-spacing:.18em;font-weight:700;margin:35px 0 8px}.login-card h1{font:600 38px Playfair Display,serif;margin:0 0 10px}.login-card>p:not(.login-kicker){font-size:12px;color:var(--muted)}.login-card form{display:grid;gap:15px;margin-top:25px}.login-card label{font-size:10px;font-weight:700;display:grid;gap:7px}.login-card input{border:1px solid var(--line);border-radius:10px;padding:13px}.login-card button{border:0;border-radius:10px;background:var(--ink);color:#fff;padding:13px;font-weight:700}.login-hint{display:block;color:var(--muted);margin-top:20px}
@media(max-width:1000px){.admin-sidebar{width:74px}.admin-brand{grid-template-columns:36px;padding-left:0}.admin-brand strong,.admin-brand small,.admin-sidebar nav a:not(.active){font-size:0}.admin-sidebar nav a{justify-content:center}.sidebar-user div,.sidebar-user>a{display:none}.admin-main{margin-left:74px;padding:28px 20px}.stats-row{grid-template-columns:repeat(2,1fr)}.integration-grid,.backup-overview{grid-template-columns:1fr}.booking-row{grid-template-columns:42px 1fr 1fr}.booking-row>*:nth-child(n+4){display:none}.settings-form{grid-template-columns:1fr}}

/* Glass dashboard direction from the approved admin references. */
:root{--admin-bg:#e8eef4;--admin-panel:rgba(255,255,255,.58);--admin-border:rgba(255,255,255,.76);--admin-shadow:0 24px 70px rgba(39,54,76,.11);--admin-gradient:linear-gradient(110deg,#ff541f,#ec277b 55%,#7137f5)}
body{background:radial-gradient(circle at 18% 8%,#f8fbff 0,transparent 34%),radial-gradient(circle at 75% 18%,#dbe7ff 0,transparent 36%),linear-gradient(145deg,#eaf0f6,#dfe8ef);min-height:100vh}
.admin-sidebar{inset:24px auto 24px 24px;width:210px;border-radius:28px;background:rgba(248,251,255,.72);color:var(--ink);border:1px solid var(--admin-border);box-shadow:var(--admin-shadow);backdrop-filter:blur(26px);padding:24px 14px}
.admin-brand{padding-bottom:25px}.admin-brand>span{background:#101426;color:#fff}.admin-brand small{color:#7c8490}
.admin-sidebar nav{gap:7px}.admin-sidebar nav a{color:#626b78;border:1px solid transparent}.admin-sidebar nav a:hover{color:#161927;background:rgba(255,255,255,.66)}.admin-sidebar nav a.active{color:#fff;background:#111526;box-shadow:0 10px 24px rgba(17,21,38,.18)}
.sidebar-user{border-color:rgba(43,54,70,.1)}.sidebar-user>span{background:linear-gradient(135deg,#ffe5dd,#e7dcff)}.sidebar-user strong{color:#171b29}.sidebar-user small{color:#77808b}
.admin-main{margin-left:250px;padding:44px 48px 70px;min-height:100vh}.admin-topbar h1{font:700 38px Manrope,sans-serif;letter-spacing:-.045em}.admin-kicker{color:#7137f5}
.admin-primary{background:var(--admin-gradient);box-shadow:0 9px 24px rgba(236,39,123,.2)}.admin-secondary{background:rgba(255,255,255,.62);border:1px solid rgba(80,91,110,.1)}
.stats-row article,.calendar-card,.table-card,.settings-card,.integration-note,.integration-card,.backup-overview article,.service-admin-card{background:var(--admin-panel);border:1px solid var(--admin-border);box-shadow:0 14px 44px rgba(55,70,92,.07);backdrop-filter:blur(20px)}
.stats-row article{border-radius:22px;min-height:118px}.stats-row strong{font-size:29px}
.calendar-card,.table-card,.settings-card,.integration-note,.integration-card{border-radius:24px}.calendar-toolbar,.day-head,.booking-row,.table-head{border-color:rgba(62,74,92,.09)}
.calendar-event{background:rgba(255,255,255,.62);border-radius:12px}.day-head.today strong{background:#111526}.day-empty{color:#9ca5af}
.topbar-note,.topbar-select{background:rgba(255,255,255,.66);border:1px solid var(--admin-border);border-radius:999px;padding:11px 16px;color:#5d6673;font-size:11px}.topbar-select{outline:0}
.admin-split{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(500px,1.28fr);gap:18px;align-items:start}.service-admin-list{display:grid;gap:14px}.service-admin-card{border-radius:22px;padding:20px}.service-admin-card.is-muted{opacity:.62}.service-admin-head{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;margin-bottom:17px}.service-icon{width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,#ffe5dd,#eadfff);display:grid;place-items:center;color:#ec277b}.service-admin-head div{display:grid;gap:3px}.service-admin-head small{color:var(--muted);font-size:10px}.service-admin-head b{font-size:9px;background:#ddf4e9;color:#27714f;padding:6px 9px;border-radius:99px}
.service-edit-grid{display:grid;grid-template-columns:1fr 120px 100px;gap:11px}.service-edit-grid label,.block-form label{font-size:10px;font-weight:700;display:grid;gap:6px}.service-edit-grid input,.service-edit-grid textarea,.settings-form select,.settings-form textarea,.week-form input,.block-form input{border:1px solid rgba(63,73,91,.13);background:rgba(255,255,255,.7);border-radius:11px;padding:10px;outline:0}.form-wide{grid-column:1/-1}.service-actions{display:flex;gap:9px;margin-top:14px}
.schedule-layout{display:grid;grid-template-columns:minmax(520px,1.1fr) minmax(330px,.9fr);gap:18px;align-items:start}.schedule-side{display:grid;gap:18px}.week-form{display:grid;gap:9px;margin-top:20px}.weekday-row{display:grid;grid-template-columns:1fr 115px 18px 115px;gap:9px;align-items:center;padding:10px;border-radius:14px;background:rgba(255,255,255,.43)}.switch-label{display:flex;align-items:center;gap:9px;font-size:11px}.switch-label input{display:none}.switch-label span{width:34px;height:19px;border-radius:99px;background:#c7ced5;position:relative}.switch-label span:after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:#fff;top:3px;left:3px;transition:.2s}.switch-label input:checked+span{background:linear-gradient(90deg,#ff541f,#7137f5)}.switch-label input:checked+span:after{left:18px}.week-form>.admin-primary{justify-self:start;margin-top:10px}
.block-form{display:grid;gap:13px;margin-top:18px}.inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.block-form .admin-primary{justify-self:start}.block-list{display:grid;margin-top:12px}.block-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-top:1px solid rgba(55,66,82,.09)}.block-row>div{display:grid;gap:4px}.block-row strong{font-size:11px}.block-row span,.muted-copy{font-size:10px;color:var(--muted)}.block-row button{border:0;background:rgba(255,255,255,.7);width:30px;height:30px;border-radius:50%;font-size:18px;color:#8b5360}
.settings-form input,.settings-form select,.settings-form textarea{width:100%}.service-create-form{grid-template-columns:1fr 1fr}
.login-body{background:radial-gradient(circle at 20% 10%,#fff,transparent 35%),radial-gradient(circle at 80% 20%,#dbe7ff,transparent 38%),linear-gradient(145deg,#eaf0f6,#dfe8ef)}.login-card{background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(24px);box-shadow:var(--admin-shadow)}.login-card button{background:var(--admin-gradient)}.login-hint{line-height:1.8}
@media(max-width:1180px){.admin-split,.schedule-layout{grid-template-columns:1fr}.service-edit-grid{grid-template-columns:1fr 110px 90px}}
@media(max-width:1000px){.admin-sidebar{inset:16px auto 16px 16px;width:72px}.admin-main{margin-left:92px}.admin-brand strong,.admin-brand small,.admin-sidebar nav a{font-size:0}.admin-sidebar nav i{font-size:15px}.sidebar-user{grid-template-columns:38px}.service-create-form{grid-template-columns:1fr}}
@media(max-width:680px){.admin-sidebar{position:static;width:calc(100% - 20px);height:auto;margin:10px;inset:auto;flex-direction:row;overflow:auto;padding:10px;border-radius:18px}.admin-brand,.sidebar-user{display:none}.admin-sidebar nav{display:flex}.admin-sidebar nav a{min-width:44px;padding:11px}.admin-main{margin:0;padding:20px 12px 50px}.admin-topbar h1{font-size:29px}.stats-row{grid-template-columns:1fr 1fr}.weekday-row{grid-template-columns:1fr 88px 12px 88px}.service-edit-grid{grid-template-columns:1fr 1fr}.service-edit-grid label:first-child{grid-column:1/-1}.week-grid{grid-template-columns:repeat(7,minmax(105px,1fr))}}
.integration-guide{margin-top:20px;padding:34px;border-radius:26px;background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.8);box-shadow:0 18px 55px rgba(55,70,92,.08);backdrop-filter:blur(20px)}.guide-heading{max-width:700px}.guide-badge{font-size:8px;letter-spacing:.16em;color:#7137f5;font-weight:700}.guide-heading h2{font:700 29px Manrope,sans-serif;letter-spacing:-.04em;margin:10px 0}.guide-heading p{font-size:11px;line-height:1.7;color:var(--muted)}.guide-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0}.guide-flow article{min-height:170px;padding:18px;border-radius:18px;background:rgba(255,255,255,.62);display:flex;flex-direction:column}.guide-flow article>span{font-size:9px;color:#ec277b;font-weight:700}.guide-flow article div{margin-top:auto}.guide-flow strong{font-size:12px}.guide-flow p{font-size:9px;line-height:1.55;color:var(--muted);margin:7px 0 0}.guide-copy-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;border-radius:16px;background:#111526;color:#fff}.guide-copy-card div{display:grid;gap:6px;min-width:0}.guide-copy-card span{font-size:7px;color:#9299aa;letter-spacing:.14em}.guide-copy-card strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.guide-copy-card button{border:0;border-radius:10px;padding:10px 13px;background:linear-gradient(110deg,#ff541f,#ec277b 55%,#7137f5);color:#fff;font-size:9px;font-weight:700}.guide-details{display:grid;gap:8px;margin-top:18px}.guide-details details{border-radius:14px;background:rgba(255,255,255,.52);padding:15px 17px}.guide-details summary{cursor:pointer;font-size:11px;font-weight:700}.guide-details ol{font-size:9px;color:var(--muted);line-height:1.9;margin-bottom:0}.guide-details code{background:rgba(113,55,245,.08);color:#5c31b9;border-radius:5px;padding:2px 5px}@media(max-width:1000px){.guide-flow{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.integration-guide{padding:23px}.guide-flow{grid-template-columns:1fr}.guide-flow article{min-height:130px}.guide-copy-card{align-items:flex-start;flex-direction:column}}
.guide-flow a{color:#7137f5;font-weight:700}.guide-copy-card+.guide-copy-card{margin-top:9px}.guide-copy-card a{border-radius:10px;padding:10px 13px;background:#fff;color:#111526;font-size:9px;font-weight:700;text-decoration:none;white-space:nowrap}.guide-copy-card-light{background:rgba(255,255,255,.68);color:#111526;border:1px solid rgba(17,21,38,.08)}.guide-copy-card-light div span{color:#73798a}.guide-code-card{margin-top:18px;border-radius:18px;overflow:hidden;background:#111526;color:#eff1f7}.guide-code-card>div{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;border-bottom:1px solid rgba(255,255,255,.1)}.guide-code-card>div span{font-size:7px;letter-spacing:.14em;color:#9299aa}.guide-code-card button{border:0;border-radius:9px;padding:8px 11px;background:linear-gradient(110deg,#ff541f,#ec277b 55%,#7137f5);color:#fff;font-size:8px;font-weight:700}.guide-code-card pre{margin:0;padding:18px;overflow:auto;font-size:9px;line-height:1.7}.guide-details details p{font-size:9px;color:var(--muted);line-height:1.75;margin:10px 0 0}
