@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ccc01da6a2b3d788-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/fa3e259cafa8f47e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"DM Serif Display Fallback";src:local("Times New Roman");ascent-override:94.37%;descent-override:30.51%;line-gap-override:0.00%;size-adjust:109.78%}.__className_0e4539{font-family:"DM Serif Display","DM Serif Display Fallback";font-weight:400;font-style:normal}.__variable_0e4539{--font-title:"DM Serif Display","DM Serif Display Fallback"}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/aa1b27f9e325731f-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c126d80dc21dff90-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e850464f9dfbb75b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/357067f10075d686-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/68180864d7f93f02-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/aa1b27f9e325731f-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c126d80dc21dff90-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e850464f9dfbb75b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/357067f10075d686-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/68180864d7f93f02-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/aa1b27f9e325731f-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c126d80dc21dff90-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e850464f9dfbb75b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/357067f10075d686-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito Sans;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/68180864d7f93f02-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Sans Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_d96fa1{font-family:Nunito Sans,Nunito Sans Fallback;font-style:normal}.__variable_d96fa1{--font-body:"Nunito Sans","Nunito Sans Fallback"}:root{color-scheme:dark;--bg-0:#0e0f12;--bg-1:#17191e;--bg-2:#1f232a;--text:#f5f2ea;--muted:#b9b2a2;--line:#3a3e46;--primary:#caa15f;--primary-contrast:#111317;--danger:#ee8f8f;--radius-lg:22px;--radius-md:14px;--shadow-soft:0 20px 50px rgba(20,35,65,0.09)}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;font-family:var(--font-body),sans-serif;color:var(--text);background:radial-gradient(circle at 10% 8%,rgba(202,161,95,.12),transparent 42%),radial-gradient(circle at 86% 20%,rgba(202,161,95,.09),transparent 44%),linear-gradient(170deg,#101217,#0a0b0f)}a{color:inherit}.page-shell{width:100%;min-height:100vh;display:grid;place-items:center;padding:1.5rem}.auth-grid{width:min(1060px,100%);display:grid;grid-template-columns:1.15fr .9fr;grid-gap:1rem;gap:1rem}@media (max-width:1024px){.auth-hero{display:none}.auth-grid{grid-template-columns:1fr}}.auth-hero{background:linear-gradient(138deg,rgba(32,28,21,.96),rgba(22,24,29,.94)),repeating-linear-gradient(-45deg,rgba(202,161,95,.18),rgba(202,161,95,.18) 8px,rgba(202,161,95,.07) 0,rgba(202,161,95,.07) 16px);color:#f6f2e7;border-radius:var(--radius-lg);padding:2.2rem;position:relative;overflow:hidden;box-shadow:var(--shadow-soft);isolation:isolate;animation:rise-in .42s ease-out both}.auth-hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(202,161,95,.16);right:-80px;bottom:-80px}.auth-glow{position:absolute;inset:auto auto -120px -90px;width:340px;height:340px;border-radius:999px;background:radial-gradient(circle,rgba(202,161,95,.45),transparent 65%);z-index:-1;animation:glow-drift 7s ease-in-out infinite}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;background:rgba(202,161,95,.16);border:1px solid rgba(202,161,95,.45);letter-spacing:.04em;padding:.4rem .7rem}.eyebrow,.hero-kicker{font-size:.78rem;text-transform:uppercase;font-weight:700}.hero-kicker{margin:.95rem 0 0;color:rgba(232,218,189,.9);letter-spacing:.08em}.auth-title{margin:1rem 0 .75rem;font-family:var(--font-title),serif;line-height:1.06;font-size:clamp(1.8rem,4vw,2.75rem);max-width:16ch}.auth-subtitle{margin:0;max-width:45ch;line-height:1.6;color:rgba(243,235,220,.92)}.auth-points{margin:1.1rem 0 0;padding:0;list-style:none;display:grid;grid-gap:.42rem;gap:.42rem}.auth-points li{position:relative;padding-left:1.15rem;color:rgba(246,237,220,.95);line-height:1.45;font-size:.9rem}.auth-points li:before{content:"";position:absolute;left:0;top:.45rem;width:.5rem;height:.5rem;border-radius:50%;background:linear-gradient(135deg,#f5d59d,#caa15f);box-shadow:0 0 0 2px rgba(202,161,95,.22)}.auth-stats{margin-top:1.7rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.auth-stat{background:rgba(202,161,95,.09);border:1px solid rgba(202,161,95,.26);border-radius:12px;padding:.75rem}.auth-stat-label{margin:0;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:rgba(231,213,182,.8)}.auth-stat-value{margin:.2rem 0 0;font-size:1.2rem;font-weight:700;color:#f8ebd0}.card{border-radius:var(--radius-lg);background:var(--bg-1);border:1px solid rgba(58,62,70,.9);box-shadow:var(--shadow-soft)}.auth-card{padding:2rem;display:flex;flex-direction:column;justify-content:center;animation:rise-in .46s ease-out 70ms both}.section-title{margin:0;font-family:var(--font-title),serif;font-size:2rem}.section-copy{margin:.45rem 0 1.2rem;color:var(--muted)}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--primary);text-decoration:none;font-size:.85rem;font-weight:700;margin-bottom:1.25rem;transition:opacity .12s ease,transform .12s ease;width:-moz-fit-content;width:fit-content}.back-link:hover{opacity:.8;transform:translateX(-3px)}.form-stack{display:grid;grid-gap:.9rem;gap:.9rem}.field-label{display:grid;grid-gap:.42rem;gap:.42rem;font-weight:700;color:#d7d1c5;font-size:.93rem}.field-label-title{display:inline-flex;align-items:center;gap:.25rem;width:-moz-fit-content;width:fit-content}.required-mark{color:#e5ca96}.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-height:2.8rem;border-radius:var(--radius-md);border:1px solid #393d45;background:#111318;font:inherit;color:var(--text);padding:.55rem .8rem;transition:border-color .12s ease,box-shadow .12s ease}.input:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(202,161,95,.23)}.button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;width:100%;border:0;border-radius:var(--radius-md);min-height:2.85rem;font:inherit;font-weight:700;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,opacity .12s ease}.button:disabled{cursor:not-allowed;opacity:.58}.button-primary{background:linear-gradient(135deg,#e4c78f,#caa15f);color:var(--primary-contrast);box-shadow:0 12px 24px rgba(202,161,95,.28)}.button-primary:not(:disabled):hover{box-shadow:0 16px 30px rgba(202,161,95,.34)}.button-secondary{border:1px solid #454b57;background:#1d2027;color:#ece4d3}.button:not(:disabled):hover{transform:translateY(-1px)}.alert{margin:0;padding:.72rem .86rem;border-radius:11px;border:1px solid rgba(238,143,143,.3);background:rgba(99,35,35,.35);color:var(--danger);font-size:.92rem}.muted-link{color:var(--muted);text-decoration:underline;text-underline-offset:3px;font-size:.92rem}.form-hint{margin:-.1rem 0 0;text-align:center;font-size:.8rem;letter-spacing:.03em;color:#9f998d}.tenant-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:0;padding:0;list-style:none}.tenant-item{display:flex;align-items:center;justify-content:space-between;gap:.8rem;border:1px solid #3f4550;border-radius:12px;background:#1a1d24;padding:.7rem}.tenant-name{margin:0;font-weight:700}.tenant-meta{margin:.15rem 0 0;color:var(--muted);font-size:.86rem}.dashboard-shell{width:min(1120px,100%);margin:0 auto;padding:1.35rem 1rem 2rem}.dashboard-app-main,.dashboard-app-shell{width:100%}.dashboard-sidebar{display:none}.dashboard-top-logout{display:inline-flex}.dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dashboard-title{margin:0;font-family:var(--font-title),serif;font-size:clamp(1.6rem,4vw,2.25rem)}.dashboard-subtitle{margin:.45rem 0 0;color:var(--muted)}.dashboard-eyebrow{margin-bottom:.65rem}.dashboard-hero-grid,.dashboard-hero-head{margin-bottom:1.15rem}.dashboard-hero-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.8fr);grid-gap:1.15rem;gap:1.15rem;align-items:stretch}.dashboard-filter-panel,.dashboard-hero-panel,.dashboard-kpi-card,.dashboard-section-card{background:linear-gradient(180deg,rgba(24,26,32,.96),rgba(17,18,23,.98))}.dashboard-hero-panel{position:relative;overflow:hidden;border:1px solid rgba(202,161,95,.18);min-height:290px;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,290px);grid-gap:1.35rem;gap:1.35rem;align-items:stretch;padding:1.35rem}.dashboard-hero-panel:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(202,161,95,.18),transparent 68%);right:-100px;top:-100px;pointer-events:none}.dashboard-hero-copy{position:relative;z-index:1;max-width:38rem;display:flex;flex-direction:column;justify-content:space-between}.dashboard-hero-kicker,.dashboard-section-kicker{margin:0;color:#cfb07a;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.dashboard-hero-copy h2{margin:.6rem 0 .65rem;font-family:var(--font-title),serif;font-size:clamp(2.35rem,3vw,3.7rem);line-height:.92;max-width:13ch;text-wrap:pretty}.dashboard-hero-copy p:last-child{margin:0;color:#c0b7a7;line-height:1.68;max-width:34ch;font-size:1.02rem}.dashboard-hero-stats{display:grid;grid-template-columns:1fr;grid-gap:.8rem;gap:.8rem;position:relative;z-index:1;align-content:end}.dashboard-hero-stats div{border:1px solid rgba(202,161,95,.18);border-radius:14px;background:rgba(28,24,18,.66);padding:.95rem 1rem}.dashboard-daily-item span,.dashboard-hero-stats span,.dashboard-kpi-card span,.dashboard-ranking-item span,.dashboard-status-item span,.dashboard-trend-item span{display:block;color:#ad9f82;font-size:.78rem}.dashboard-daily-item strong,.dashboard-hero-stats strong,.dashboard-kpi-card strong,.dashboard-status-item strong{display:block;margin-top:.25rem;color:#f3e5c9;font-size:1.38rem;line-height:1.05}.dashboard-filter-panel h3,.dashboard-section-head h3{margin:.35rem 0 0;font-size:1.1rem}.dashboard-filter-panel{min-height:290px;display:flex;flex-direction:column;padding:1.35rem}.dashboard-filter-panel p,.dashboard-section-head p:last-child{margin:.35rem 0 0;color:#bbb3a4;line-height:1.55}.dashboard-filter-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;margin-top:auto}.dashboard-filter-form .input{min-height:3.05rem;padding-inline:.95rem}.dashboard-filter-form>button{grid-column:1/-1;margin-top:.15rem}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;margin-bottom:1rem}.dashboard-kpi-card{padding:1rem;border:1px solid rgba(202,161,95,.14)}.dashboard-kpi-card small{display:block;margin-top:.45rem;color:#b9b09f;line-height:1.45}.dashboard-main-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:.9rem;gap:.9rem}.dashboard-section-card{padding:1rem;border:1px solid rgba(202,161,95,.14)}.dashboard-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;margin-bottom:.95rem}.dashboard-main-grid>:first-child,.dashboard-main-grid>:nth-child(2),.dashboard-main-grid>:nth-child(3),.dashboard-main-grid>:nth-child(4),.dashboard-main-grid>:nth-child(5),.dashboard-main-grid>:nth-child(6),.dashboard-main-grid>:nth-child(7){grid-column:span 4}.dashboard-daily-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.7rem;gap:.7rem}.dashboard-daily-item,.dashboard-status-item{border:1px solid #323741;border-radius:14px;background:rgba(19,22,27,.84);padding:.85rem}.dashboard-bar-list,.dashboard-ranking-list,.dashboard-status-grid,.dashboard-trend-list{display:grid;grid-gap:.6rem;gap:.6rem}.dashboard-bar-row,.dashboard-ranking-item,.dashboard-trend-item{display:flex;align-items:center;justify-content:space-between;gap:.8rem;border:1px solid #323741;border-radius:14px;background:rgba(19,22,27,.84);padding:.75rem .8rem}.dashboard-ranking-item strong,.dashboard-trend-item strong{display:block;color:#efe0c2;font-size:.98rem}.dashboard-ranking-item p,.dashboard-trend-item p{margin:0;font-weight:700}.dashboard-trend-item small{color:#aea691}.dashboard-trend-positive{color:#9ce0af}.dashboard-trend-negative{color:#f0aaaa}.dashboard-trend-neutral{color:#ddd2bb}.dashboard-bar-row span{width:88px;flex:0 0 auto}.dashboard-bar-row strong{width:108px;flex:0 0 auto;text-align:right;color:#efe0c2;font-size:.88rem}.dashboard-bar-track{flex:1 1;height:10px;border-radius:999px;background:#232832;overflow:hidden}.dashboard-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#caa15f,#e8c98f)}.dashboard-grid,.dashboard-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid{display:grid;grid-gap:.85rem;gap:.85rem}.panel{padding:1rem}.panel h3{margin:0;font-size:1.02rem}.panel p{margin:.4rem 0 0;color:var(--muted);line-height:1.48}.dashboard-inline-btn{margin-top:.85rem;width:auto;min-width:160px}.dashboard-links-grid{display:flex;gap:.55rem;flex-wrap:wrap}.dashboard-section-card--animated{animation:rise-in .32s ease-out both}.dashboard-donut-wrap{display:flex;align-items:center;gap:1.2rem}.dashboard-donut{position:relative;width:130px;height:130px;border-radius:50%;flex:0 0 auto}.dashboard-donut:after{content:"";position:absolute;inset:22%;border-radius:50%;background:rgba(19,22,27,.96)}.dashboard-donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}.dashboard-donut-center strong{font-size:1.4rem;color:#f3e5c9;line-height:1}.dashboard-donut-center span{font-size:.7rem;color:#ad9f82;text-transform:uppercase;font-weight:700;letter-spacing:.04em;margin-top:.15rem}.dashboard-donut-legend{display:grid;grid-gap:.45rem;gap:.45rem;flex:1 1}.dashboard-donut-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.dashboard-donut-legend-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.dashboard-donut-legend-item span{color:#bbb3a4;flex:1 1}.dashboard-donut-legend-item strong{color:#efe0c2}.dashboard-retention-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;margin-top:.8rem}.dashboard-retention-new{background:linear-gradient(90deg,#caa15f,#e8c98f);transition:width .4s ease-out}.dashboard-retention-returning{background:rgba(156,224,175,.65);transition:width .4s ease-out}.dashboard-retention-labels{display:flex;justify-content:space-between;margin-top:.55rem}.dashboard-retention-label{display:flex;flex-direction:column;gap:.15rem}.dashboard-retention-label span{font-size:.74rem;color:#ad9f82;text-transform:uppercase;font-weight:700;letter-spacing:.04em}.dashboard-retention-label strong{font-size:1.2rem;color:#f3e5c9}.dashboard-bar-row{transition:background .12s ease,border-color .12s ease}.dashboard-bar-row:hover{background:rgba(202,161,95,.06);border-color:rgba(202,161,95,.22)}.dashboard-bar-fill{transition:width .4s ease-out}.dashboard-ranking-bar{width:100%;height:5px;border-radius:999px;background:#232832;margin-top:.4rem;overflow:hidden}.dashboard-ranking-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#caa15f,#e8c98f);transition:width .4s ease-out}.dashboard-main-grid>:nth-child(7){grid-column:span 12}.customers-actions{display:flex;align-items:center;gap:.6rem}.customers-head-button{width:auto;min-width:145px;padding-inline:1rem}.customers-grid{grid-template-columns:1.05fr .95fr}.services-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:.9rem;gap:.9rem}.locations-grid,.staff-grid{display:grid;grid-template-columns:1.08fr .92fr;grid-gap:.9rem;gap:.9rem}.timeoff-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,420px);grid-gap:.9rem;gap:.9rem}.availability-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:.9rem;gap:.9rem}.locations-form-panel,.locations-list-panel,.staff-form-panel,.staff-list-panel{min-height:560px}.timeoff-form-panel,.timeoff-list-panel{min-height:580px;min-width:0}.availability-form-panel,.availability-list-panel{min-height:560px}.availability-toolbar{display:flex;gap:.8rem;margin-bottom:1.25rem}.availability-actions-row{gap:.5rem}.timeoff-form-panel{overflow-x:hidden}.locations-toolbar,.staff-toolbar{display:grid;grid-template-columns:1fr 180px;grid-gap:.6rem;gap:.6rem;margin-bottom:.9rem}.location-form-section{display:grid;grid-gap:.8rem;gap:.8rem;padding:.95rem;border:1px solid #323741;border-radius:14px;background:rgba(19,22,27,.84)}.location-form-section-head h4{margin:0;font-size:.98rem}.location-form-section-head p{margin:.25rem 0 0;color:#b9b09f;line-height:1.48;font-size:.88rem}.timeoff-toolbar{grid-template-columns:1.2fr repeat(2,minmax(0,1fr)) auto;grid-gap:.6rem}.availability-toolbar,.timeoff-toolbar{display:grid;gap:.6rem;margin-bottom:.9rem}.availability-toolbar{grid-template-columns:1fr;grid-gap:.6rem}.availability-table-wrap,.locations-table-wrap,.staff-table-wrap,.timeoff-table-wrap{overflow:auto;border:1px solid #353a44;border-radius:12px}.locations-table,.staff-table{width:100%;border-collapse:collapse;min-width:660px}.timeoff-table{min-width:860px}.availability-table,.timeoff-table{width:100%;border-collapse:collapse}.availability-table{min-width:720px}.locations-table td,.locations-table th,.staff-table td,.staff-table th{text-align:left;border-bottom:1px solid #2d3139;padding:.65rem;font-size:.88rem}.availability-table td,.availability-table th,.timeoff-table td,.timeoff-table th{text-align:left;border-bottom:1px solid #2d3139;padding:.65rem;font-size:.87rem}.availability-table th,.locations-table th,.staff-table th,.timeoff-table th{color:#d9c9aa;background:#1a1d24}.locations-table td strong,.staff-table td strong{display:block}.locations-table td small,.staff-table td small{display:block;color:#aea692;margin-top:.2rem}.availability-row-active td,.locations-row-active td,.staff-row-active td,.timeoff-row-active td{background:rgba(202,161,95,.1)}.availability-actions-row,.locations-actions-row,.staff-actions-row,.timeoff-actions-row{display:flex;gap:.35rem}.locations-mini-btn,.staff-mini-btn{width:auto;min-height:2rem;padding-inline:.55rem;font-size:.79rem}.locations-textarea{min-height:96px;resize:vertical}.availability-mini-btn,.timeoff-filter-btn,.timeoff-mini-btn{width:auto;min-height:2rem;padding-inline:.55rem;font-size:.79rem}.location-status-badge,.staff-status-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.12rem .58rem;font-size:.76rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.location-status-active,.staff-status-active{color:#b5f0c4;background:rgba(61,120,81,.28);border-color:rgba(88,184,126,.45)}.location-status-inactive,.staff-status-inactive{color:#f8b8b8;background:rgba(105,36,36,.34);border-color:rgba(238,143,143,.44)}.timeoff-status-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.12rem .58rem;font-size:.76rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.timeoff-status-active{color:#f5d9a5;background:rgba(202,161,95,.16);border-color:rgba(202,161,95,.35)}.timeoff-status-inactive{color:#f8b8b8;background:rgba(105,36,36,.34);border-color:rgba(238,143,143,.44)}.timeoff-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.availability-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem;gap:.8rem}.availability-weekday-picker{display:grid;grid-gap:.85rem;gap:.85rem;padding:.9rem;border:1px solid #323741;border-radius:14px;background:rgba(19,22,27,.84)}.availability-days-field{gap:.55rem}.availability-weekday-presets{display:flex;flex-wrap:wrap;gap:.55rem}.availability-preset-btn{width:auto;min-height:2rem;padding-inline:.65rem;font-size:.78rem}.availability-weekday-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.availability-weekday-chip{display:flex;align-items:center;gap:.45rem;border:1px solid #343944;border-radius:12px;background:rgba(19,21,27,.9);padding:.72rem .78rem;color:#ddd4c2;cursor:pointer;min-width:0}.availability-weekday-chip input{margin:0}.availability-weekday-chip-active{border-color:rgba(202,161,95,.42);background:rgba(202,161,95,.12)}.timeoff-form-row>*{min-width:0}@media (max-width:1240px){.availability-grid,.timeoff-grid{grid-template-columns:1fr}}.timeoff-textarea{min-height:96px;resize:vertical}.services-form-panel,.services-list-panel{min-height:560px;min-width:0;overflow:hidden}.services-toolbar{display:grid;grid-template-columns:1fr 180px;grid-gap:.6rem;gap:.6rem;margin-bottom:.9rem}.services-table-wrap{overflow:auto;border:1px solid #353a44;border-radius:12px}.services-table-mobile{display:none}.services-table{width:100%;border-collapse:collapse;min-width:680px}.services-table td,.services-table th{text-align:left;border-bottom:1px solid #2d3139;padding:.65rem;font-size:.88rem}.services-table th{color:#d9c9aa;background:#1a1d24}.services-table td strong{display:block}.services-table td small{display:block;color:#aea692;margin-top:.2rem}.services-row-active td{background:rgba(202,161,95,.1)}.services-actions-row{display:flex;gap:.35rem;flex-wrap:wrap}.services-mini-btn{width:auto;min-height:2rem;padding-inline:.55rem;font-size:.79rem}.service-status-badge{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.12rem .58rem;font-size:.76rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.service-status-active{color:#b5f0c4;background:rgba(61,120,81,.28);border-color:rgba(88,184,126,.45)}.service-status-inactive{color:#f8b8b8;background:rgba(105,36,36,.34);border-color:rgba(238,143,143,.44)}.services-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.services-textarea{min-height:90px;resize:vertical}.services-card-list{display:grid;grid-gap:.7rem;gap:.7rem}.services-card-item{padding:.9rem;border:1px solid rgba(202,161,95,.14);min-width:0}.services-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;margin-bottom:.75rem}.services-card-head strong{display:block}.services-card-head p{margin:.25rem 0 0;color:#b8b09d}.services-card-meta{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:.8rem;color:#c9c1b2;font-size:.9rem}.customers-form-panel,.customers-list-panel{min-height:550px;height:100%;min-width:0;overflow:hidden;display:flex;flex-direction:column}.customers-search{display:grid;grid-template-columns:1fr auto;grid-gap:.6rem;gap:.6rem;margin-bottom:.9rem}.customers-search-button{width:auto;min-width:120px;padding-inline:.8rem}.customers-list{margin:0;padding:0;list-style:none;display:grid;grid-gap:.75rem;gap:.75rem}.customer-row{width:100%;border:1px solid #3f4550;border-radius:12px;background:#1a1d24;color:#ebe4d4;display:flex;align-items:center;justify-content:space-between;gap:.9rem;text-align:left;padding:1.15rem 1.25rem;cursor:pointer}.customer-row strong{display:block;font-size:1.12rem}.customer-row small{display:block;color:#ada58f;margin-top:.35rem;font-size:.92rem}.customer-row-meta{font-size:.82rem;color:#e5ca96}.customer-row-active{border-color:#caa15f;background:linear-gradient(140deg,rgba(202,161,95,.16),rgba(27,31,39,.9))}.customers-textarea{min-height:110px;resize:vertical}.customers-check{display:flex;align-items:center;gap:.55rem;color:#d8d1c0;font-size:.92rem}.customers-success{margin:0;padding:.68rem .82rem;border-radius:11px;border:1px solid rgba(202,161,95,.35);background:rgba(85,67,35,.34);color:#efd7a8}.appointments-layout,.customers-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,460px);grid-gap:.9rem;gap:.9rem;align-items:stretch;min-height:calc(100vh - 240px)}.appointments-view-switch{display:inline-flex;gap:.35rem}.appointments-view-btn{width:auto;min-width:88px;min-height:2.35rem;padding-inline:.7rem}.appointments-view-btn-active{border-color:rgba(202,161,95,.54);color:#f1d7a6;background:rgba(202,161,95,.16)}.appointments-form-panel,.appointments-list-panel{min-height:620px;height:100%;min-width:0;overflow:hidden;display:flex;flex-direction:column}.appointments-form-panel{position:-webkit-sticky;position:sticky;top:1rem}.appointments-filters{display:grid;grid-template-columns:1.25fr repeat(5,minmax(0,1fr)) auto;grid-gap:.55rem;gap:.55rem;margin-bottom:.9rem;min-width:0}.appointments-filter-btn{width:auto;min-width:128px;padding-inline:.9rem}.appointments-week-nav{margin-bottom:.9rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.appointments-week-btn{width:auto;min-height:2.2rem;padding-inline:.75rem}.appointments-week-label{margin:0;padding:.42rem .7rem;border-radius:999px;border:1px solid rgba(202,161,95,.35);background:rgba(202,161,95,.11);color:#f0d9ad;font-size:.8rem;font-weight:700}.appointments-table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;border:1px solid #353a44;border-radius:12px;-webkit-overflow-scrolling:touch}.appointments-table{width:100%;border-collapse:collapse;min-width:910px}.appointments-table td,.appointments-table th{text-align:left;border-bottom:1px solid #2d3139;padding:.62rem;font-size:.87rem}.appointments-table th{color:#d9c9aa;background:#1a1d24;position:-webkit-sticky;position:sticky;top:0;z-index:1}.appointments-row-active td{background:rgba(202,161,95,.1)}.appointments-table-actions{display:flex;gap:.35rem;flex-wrap:wrap}.appointments-mini-btn{width:auto;min-height:2rem;padding-inline:.55rem;font-size:.8rem}.appointment-status{display:inline-flex;align-items:center;border-radius:999px;border:1px solid transparent;padding:.12rem .58rem;font-size:.77rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.appointment-status-confirmed{color:#f5d9a5;background:rgba(202,161,95,.16);border-color:rgba(202,161,95,.35)}.appointment-status-completed{color:#b5f0c4;background:rgba(61,120,81,.28);border-color:rgba(88,184,126,.45)}.appointment-status-cancelled{color:#f8b8b8;background:rgba(105,36,36,.34);border-color:rgba(238,143,143,.44)}.appointment-status-no-show,.appointment-status-no_show{color:#e2c8fa;background:rgba(90,66,124,.36);border-color:rgba(171,132,235,.42)}.appointment-status-pending{color:#d6e4ff;background:rgba(51,72,111,.36);border-color:rgba(110,144,211,.44)}.appointments-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.appointments-textarea{min-height:88px;resize:vertical}.appointments-occupied{border:1px solid rgba(238,143,143,.2);border-radius:var(--radius-md);background:rgba(238,143,143,.04);padding:.7rem .8rem;display:grid;grid-gap:.45rem;gap:.45rem}.appointments-occupied-label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#ee8f8f}.appointments-occupied-list{display:grid;grid-gap:.35rem;gap:.35rem}.appointments-occupied-chip{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border-radius:8px;background:rgba(238,143,143,.08);border:1px solid rgba(238,143,143,.15);font-size:.8rem}.appointments-occupied-chip strong{color:#ee8f8f;white-space:nowrap;font-size:.82rem}.appointments-occupied-chip span{color:#bdb4a4;font-size:.76rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointments-occupied-loading{margin:0;font-size:.8rem;color:var(--muted);font-style:italic}.appointments-card-list{display:grid;grid-gap:.7rem;gap:.7rem}.appointments-card-item{padding:.9rem;border:1px solid rgba(202,161,95,.14)}.appointments-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.7rem;margin-bottom:.75rem}.appointments-card-head strong{display:block}.appointments-card-head p{margin:.25rem 0 0;color:#b8b09d}.appointments-card-meta{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:.8rem;color:#c9c1b2;font-size:.9rem}.appointment-status-box{border:1px solid #3e4350;border-radius:12px;padding:.58rem;display:grid;grid-gap:.4rem;gap:.4rem}.appointment-status-help{color:#a8a290;font-size:.78rem}.appointments-details{display:grid;grid-gap:.9rem;gap:.9rem}.appointments-modal-backdrop{position:fixed;inset:0;z-index:80;background:rgba(8,10,14,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:grid;place-items:center;padding:1rem}.appointments-modal{width:min(760px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1rem;border:1px solid rgba(202,161,95,.18)}.appointments-modal-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.85rem}.appointments-modal-head h3{margin:0}.appointments-modal-close{width:auto;min-width:104px}.appointments-details-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.appointments-details-head h3{margin:0}.appointments-kv-grid{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.6rem;gap:.6rem}.appointments-kv-grid dt{color:#ad9f82;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em}.appointments-kv-grid dd{margin:.2rem 0 0;color:#ece3d1;font-weight:600}.appointments-actions-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.appointments-action-btn{min-height:2.3rem}.appointments-action-danger{border-color:rgba(238,143,143,.44);color:#f4b7b7}.appointments-history h4{margin:0;font-size:.95rem}.appointments-history ul{margin:.6rem 0 0;padding:0;list-style:none;display:grid;grid-gap:.45rem;gap:.45rem}.appointments-history li{border:1px solid #373c45;border-radius:11px;padding:.58rem;display:grid;grid-gap:.2rem;gap:.2rem}.appointments-history small,.appointments-history span{color:#bcb5a5}.appointments-weekly{display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));grid-gap:.55rem;gap:.55rem;overflow:auto;padding-bottom:.2rem;flex:1 1}.appointments-day-column{border:1px solid #343942;border-radius:12px;background:#151920;min-height:290px;display:grid;align-content:start}.appointments-day-column header{border-bottom:1px solid #2f343d;padding:.55rem;display:flex;align-items:center;justify-content:space-between;gap:.45rem}.appointments-day-column h4{margin:0;font-size:.88rem;color:#ebddb9}.appointments-day-column header span{font-size:.72rem;color:#ad9f82}.appointments-day-column ul{list-style:none;margin:0;padding:.55rem;display:grid;grid-gap:.45rem;gap:.45rem}.appointments-day-empty{margin:0;padding:.7rem;color:#9f998b;font-size:.82rem}.appointments-calendar-card{border:1px solid #3a404a;border-radius:10px;background:#1a1f27;overflow:hidden}.appointments-calendar-card-active{border-color:rgba(202,161,95,.52);box-shadow:inset 0 0 0 1px rgba(202,161,95,.25)}.appointments-calendar-card-hit{display:grid;grid-gap:.2rem;gap:.2rem;width:100%;border:0;background:transparent;color:#ebe2cf;text-align:left;cursor:pointer;padding:.58rem}.appointments-calendar-card-hit strong{color:#f0d8aa;font-size:.85rem}.appointments-calendar-card-hit p{margin:0;font-size:.84rem}.appointments-calendar-card-hit small{color:#bdb3a1;font-size:.74rem}.appointments-calendar-card .appointments-mini-btn{width:calc(100% - 1rem);margin:0 .5rem .5rem}.panel-chip{display:inline-block;margin-top:.75rem;padding:.2rem .56rem;border-radius:999px;border:1px solid rgba(202,161,95,.35);background:rgba(202,161,95,.12);color:#f3dfb7;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}@media (min-width:1280px){.dashboard-app-shell{display:grid;grid-template-columns:292px minmax(0,1fr);grid-gap:0;gap:0;width:100%;margin:0;padding:0;min-height:100vh}.dashboard-sidebar{display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:0;gap:0;padding:0;height:100vh;overflow:hidden;border-radius:0 24px 24px 0;border-left:0;background:linear-gradient(180deg,rgba(24,26,32,.96),rgba(17,18,23,.98)),radial-gradient(circle at top left,rgba(202,161,95,.08),transparent 38%)}.dashboard-sidebar,.dashboard-sidebar-brand{position:-webkit-sticky;position:sticky;top:0}.dashboard-sidebar-brand{z-index:2;padding:1rem .9rem .85rem;border-bottom:1px solid rgba(202,161,95,.14);background:linear-gradient(180deg,rgba(24,26,32,.99),rgba(17,18,23,.97)),radial-gradient(circle at top left,rgba(202,161,95,.08),transparent 38%)}.dashboard-sidebar-scroll{min-height:0;overflow-y:auto;padding:.95rem .9rem 1rem;display:grid;align-content:start;grid-gap:.9rem;gap:.9rem}.dashboard-sidebar-nav{display:grid;grid-gap:.45rem;gap:.45rem}.dashboard-sidebar-footer{display:grid;grid-gap:.7rem;gap:.7rem;margin-top:auto;padding-top:.75rem;border-top:1px solid rgba(202,161,95,.14)}.dashboard-sidebar-tenant{display:grid;grid-gap:.2rem;gap:.2rem;border:1px solid rgba(202,161,95,.18);border-radius:14px;background:rgba(27,24,19,.65);padding:.8rem .85rem}.dashboard-sidebar-footer-label{margin:0;color:#a79f8f;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.dashboard-sidebar-tenant strong{color:#f1e3c6;font-size:.96rem}.dashboard-sidebar-tenant span{color:#bdb4a4;font-size:.84rem}.dashboard-sidebar-booking-link{display:grid;grid-gap:.35rem;gap:.35rem;border:1px solid rgba(202,161,95,.18);border-radius:14px;background:rgba(27,24,19,.65);padding:.8rem .85rem}.booking-link-row{display:flex;align-items:center;gap:.4rem;min-width:0}.booking-link-url{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e5ca96;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.74rem;background:rgba(0,0,0,.25);padding:.3rem .5rem;border-radius:8px}.booking-link-actions{display:flex;gap:.25rem;flex-shrink:0}.booking-link-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border:1px solid rgba(202,161,95,.22);border-radius:8px;background:rgba(202,161,95,.08);color:#e5ca96;cursor:pointer;transition:background .12s ease,border-color .12s ease;text-decoration:none}.booking-link-btn:hover{background:rgba(202,161,95,.18);border-color:rgba(202,161,95,.35)}.booking-link-hint{color:#8a8279;font-size:.72rem;line-height:1.3}.dashboard-sidebar-logout{width:100%}.dashboard-sidebar-link{display:grid;grid-template-columns:2.1rem minmax(0,1fr);align-items:center;grid-gap:.7rem;gap:.7rem;text-decoration:none;border:1px solid #343944;border-radius:14px;background:rgba(19,21,27,.92);color:#ece3d0;padding:.8rem .85rem;transition:border-color .12s ease,background .12s ease,transform .12s ease}.dashboard-sidebar-scroll::-webkit-scrollbar{width:8px}.dashboard-sidebar-scroll::-webkit-scrollbar-thumb{background:rgba(202,161,95,.18);border-radius:999px}.dashboard-sidebar-link:hover{border-color:rgba(202,161,95,.42);background:rgba(31,27,20,.86);transform:translateY(-1px)}.dashboard-sidebar-link-active{border-color:rgba(202,161,95,.48);background:linear-gradient(135deg,rgba(202,161,95,.16),rgba(29,32,39,.96));box-shadow:inset 0 0 0 1px rgba(202,161,95,.16)}.dashboard-sidebar-link-index{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;height:2.1rem;border-radius:999px;background:rgba(202,161,95,.12);color:#e8c98f;font-size:.74rem;font-weight:700;letter-spacing:.04em}.dashboard-app-main .dashboard-shell{width:100%;max-width:none;margin:0;padding:1.1rem 1.25rem 2rem}.dashboard-top-logout{display:none}}.state-box{border:1px dashed #4a505c;border-radius:12px;padding:.85rem;color:#d5cebf;background:#1a1d23}.state-title{margin:0;font-size:.94rem;font-weight:700}.state-copy{margin:.4rem 0 0;font-size:.9rem;color:var(--muted)}.toast-stack{position:fixed;top:1rem;right:1rem;z-index:9999;display:grid;grid-gap:.65rem;gap:.65rem;width:min(420px,calc(100vw - 2rem))}.toast{border-radius:12px;border:1px solid #3f4550;background:linear-gradient(150deg,#171b23,#10131a);color:#ece5d6;padding:.72rem .8rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;box-shadow:0 14px 26px rgba(0,0,0,.45);animation:toast-slide-in .18s ease-out}.toast-title{margin:0;font-size:.93rem;font-weight:700}.toast-description{margin:.3rem 0 0;color:#c8bea9;font-size:.86rem;line-height:1.4}.toast-close{border:0;background:transparent;color:#ccb381;font:inherit;cursor:pointer;border-radius:8px;width:1.7rem;height:1.7rem;display:inline-flex;align-items:center;justify-content:center}.toast-success{border-color:rgba(202,161,95,.55)}.toast-error{border-color:rgba(238,143,143,.55);background:linear-gradient(150deg,#261719,#191014)}.toast-info{border-color:rgba(202,161,95,.42)}.onboarding-stepper{position:relative;display:flex;justify-content:space-between;margin-bottom:1.35rem;padding-bottom:1rem}.onboarding-step{display:flex;flex-direction:column;align-items:center;gap:.4rem;position:relative;z-index:1;flex:1 1}.onboarding-step-dot{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:999px;font-size:.82rem;font-weight:700;border:2px solid #3a3e46;background:#111318;color:#9f998d;transition:border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}.onboarding-step-active .onboarding-step-dot{border-color:var(--primary);background:rgba(202,161,95,.14);color:#f5d59d;box-shadow:0 0 0 4px rgba(202,161,95,.12)}.onboarding-step-done .onboarding-step-dot{border-color:var(--primary);background:linear-gradient(135deg,#e4c78f,#caa15f);color:#111317}.onboarding-step-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#706b60;transition:color .2s ease}.onboarding-step-active .onboarding-step-label{color:#e5ca96}.onboarding-step-done .onboarding-step-label{color:#c8b88e}.onboarding-stepper-track{position:absolute;top:1.1rem;left:calc(12.5%);right:calc(12.5%);height:2px;background:#3a3e46;z-index:0;border-radius:999px}.onboarding-stepper-fill{height:100%;background:linear-gradient(90deg,#caa15f,#e8c98f);border-radius:999px;transition:width .35s ease}.onboarding-step-content{display:grid;grid-gap:.9rem;gap:.9rem;animation:rise-in .32s ease-out both}.onboarding-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.onboarding-slug-preview{font-size:.78rem;color:#b9a97e;letter-spacing:.02em;margin-top:-.15rem}.onboarding-actions{display:flex;gap:.65rem;margin-top:.35rem}.onboarding-actions .button{flex:1 1}.slug-input-group{display:flex;align-items:stretch}.slug-input{border-radius:var(--radius-md);font-family:SF Mono,Fira Code,Cascadia Code,monospace;letter-spacing:.02em}.slug-hint{color:#8a8279;font-size:.78rem;font-weight:500}.slug-preview{display:flex;align-items:center;gap:.45rem;padding:.6rem .75rem;border-radius:var(--radius-md);background:rgba(202,161,95,.08);border:1px solid rgba(202,161,95,.18);font-size:.84rem;color:#bdb4a4}.slug-preview svg{color:var(--primary);flex-shrink:0}.slug-preview-url{color:#e5ca96;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;word-break:break-all}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-drift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(8px,-10px) scale(1.05)}}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:980px){.auth-grid{grid-template-columns:1fr}.auth-card,.auth-hero{padding:1.35rem}.onboarding-form-row{grid-template-columns:1fr}.onboarding-step-label{font-size:.62rem}.dashboard-grid,.dashboard-hero-grid,.dashboard-kpi-grid,.dashboard-main-grid{grid-template-columns:1fr}.dashboard-filter-panel,.dashboard-hero-panel{min-height:auto;padding:1rem}.dashboard-hero-panel{grid-template-columns:1fr}.dashboard-hero-copy h2,.dashboard-hero-copy p:last-child{max-width:none}.dashboard-filter-form,.dashboard-hero-stats{grid-template-columns:1fr}.dashboard-main-grid>:first-child,.dashboard-main-grid>:nth-child(2),.dashboard-main-grid>:nth-child(3),.dashboard-main-grid>:nth-child(4),.dashboard-main-grid>:nth-child(5),.dashboard-main-grid>:nth-child(6),.dashboard-main-grid>:nth-child(7){grid-column:1/-1}.dashboard-hero-stats,.dashboard-status-grid{grid-template-columns:1fr}.dashboard-daily-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-donut-wrap{flex-direction:column;align-items:center;gap:1.25rem}.dashboard-donut{width:140px;height:140px}.dashboard-donut-legend{width:100%;max-width:280px}.dashboard-ranking-item,.dashboard-trend-item{flex-direction:column;align-items:stretch;gap:.4rem}.dashboard-section-head{flex-wrap:wrap;row-gap:.35rem}.dashboard-bar-row{gap:.45rem}.dashboard-bar-row span{width:36px;flex:0 0 auto;font-size:.7rem}.dashboard-bar-row strong{width:68px;flex:0 0 auto;font-size:.78rem;text-align:right}.dashboard-bar-track{min-width:0;flex:1 1}.customers-grid,.services-grid{grid-template-columns:1fr}.services-form-panel,.services-list-panel{overflow:visible}.services-table-desktop{display:none}.services-table-mobile{display:grid}.availability-form-row,.locations-grid,.locations-toolbar,.services-toolbar,.staff-grid,.staff-toolbar,.timeoff-grid,.timeoff-toolbar{grid-template-columns:1fr}.availability-weekday-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appointments-layout,.services-form-row,.timeoff-form-row{grid-template-columns:1fr}.appointments-form-panel,.appointments-list-panel{overflow:visible}.appointments-form-panel{position:static}.appointments-view-switch{width:100%}.appointments-view-btn{flex:1 1}.appointments-filters{grid-template-columns:1fr}.appointments-filter-btn,.appointments-week-btn{width:100%}.appointments-actions-row,.appointments-form-row,.appointments-kv-grid{grid-template-columns:1fr}.appointments-card-head,.appointments-modal-head{flex-direction:column;align-items:flex-start}.customers-actions{width:100%;flex-direction:column;align-items:stretch}.customers-head-button{width:100%}.customers-search{grid-template-columns:1fr}.customers-search-button{width:100%}.customers-grid{grid-template-columns:1fr!important}.modal-overlay{position:fixed;inset:0;z-index:1000;background:rgba(10,11,15,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:fade-in .24s ease-out}.modal-overlay .customers-form-panel{width:100%;max-width:540px;max-height:90vh;overflow-y:auto;animation:rise-in .32s ease-out;border-color:rgba(202,161,95,.35);box-shadow:0 30px 60px rgba(0,0,0,.5)}.availability-toolbar{flex-direction:column;gap:.7rem}.toast-stack{left:1rem;right:1rem;width:auto;z-index:1100}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.mobile-bottom-nav{display:none}@media (max-width:1279px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:100;background:linear-gradient(180deg,rgba(20,22,28,.98),rgba(14,15,18,.99));border-top:1px solid rgba(202,161,95,.18);padding:.45rem .5rem env(safe-area-inset-bottom,.5rem);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);gap:.2rem}.dashboard-app-main{padding-bottom:72px}}.mobile-bottom-nav-item{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:.35rem .2rem;border-radius:12px;color:var(--muted);font-size:.66rem;font-weight:600;letter-spacing:.02em;line-height:1.2;text-align:center;cursor:pointer;transition:color .15s ease,background .15s ease;background:transparent;border:none;text-decoration:none}.mobile-bottom-nav-item:hover{color:#e8c98f}.mobile-bottom-nav-item.active{color:var(--primary);background:rgba(202,161,95,.1)}.mobile-nav-sheet-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-nav-sheet{position:fixed;bottom:0;left:0;right:0;z-index:201;background:linear-gradient(180deg,rgba(24,26,32,.99),rgba(17,18,23,.99));border-top:1px solid rgba(202,161,95,.22);border-radius:20px 20px 0 0;padding:.75rem 1.25rem env(safe-area-inset-bottom,1.5rem);animation:sheet-up .24s cubic-bezier(.32,.72,0,1) both}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-nav-sheet-handle{width:36px;height:4px;background:rgba(202,161,95,.3);border-radius:999px;margin:0 auto .85rem}.mobile-nav-sheet-title{margin-bottom:.75rem}.mobile-nav-sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.5rem;gap:.5rem}.mobile-nav-sheet-item{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem .25rem;border-radius:14px;border:1px solid rgba(202,161,95,.1);background:rgba(24,26,32,.96);color:var(--muted);font-size:.68rem;font-weight:600;text-align:center;text-decoration:none;transition:border-color .15s,background .15s,color .15s}.mobile-nav-sheet-item:hover{border-color:rgba(202,161,95,.3);background:rgba(202,161,95,.07);color:#e8c98f}.mobile-nav-sheet-item.active{border-color:rgba(202,161,95,.4);background:rgba(202,161,95,.1);color:var(--primary);box-shadow:inset 0 0 0 1px rgba(202,161,95,.18)}.mobile-nav-sheet-index{display:inline-flex;width:2rem;height:2rem;border-radius:999px;background:rgba(202,161,95,.12);color:#e8c98f;font-size:.72rem;font-weight:700}.mobile-nav-sheet-index,.upgrade-gate{align-items:center;justify-content:center}.upgrade-gate{display:flex;flex-direction:column;text-align:center;padding:2.5rem 1.5rem;background:var(--bg-1);border:1px dashed rgba(58,62,70,.6);border-radius:var(--radius-lg);min-height:200px}.upgrade-gate-icon{font-size:2rem;margin-bottom:.75rem}.upgrade-gate-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:700;color:var(--text)}.upgrade-gate-desc{margin:0 0 1.2rem;max-width:36ch;font-size:.88rem;color:var(--muted);line-height:1.55}.upgrade-gate-btn{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1.15rem;border-radius:var(--radius-md);background:var(--primary);color:var(--primary-contrast);font-weight:700;font-size:.88rem;text-decoration:none;transition:filter .2s}.upgrade-gate-btn:hover{filter:brightness(1.1)}