@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#20252d;background:#f5f6f8;font-synthesis:none;--ink:#20252d;--muted:#7d8591;--line:#e9ebef;--orange:#ed7a32;--navy:#202a39;--green:#18865b}
*{box-sizing:border-box}body{margin:0}.app-shell{min-height:100vh}.sidebar{width:238px;background:#202a39;color:#fff;position:fixed;inset:0 auto 0 0;padding:25px 16px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;padding:2px 8px 34px}.brand-mark{height:39px;width:39px;border-radius:12px;background:#ed7a32;display:grid;place-items:center;font:800 22px Manrope}.brand b{display:block;font:800 17px Manrope;letter-spacing:.08em}.brand small{display:block;color:#aeb7c4;font-size:9px;letter-spacing:.18em;margin-top:3px}.nav-caption{font-size:9px;letter-spacing:.16em;color:#8390a0;padding:0 12px 12px}.sidebar nav{display:grid;gap:5px}.nav-link{border:0;background:transparent;color:#c4cbd4;text-align:left;padding:12px 13px;border-radius:9px;font:500 13px 'DM Sans';cursor:pointer;display:flex;align-items:center;gap:12px}.nav-link span{width:17px;font-size:17px;text-align:center}.nav-link:hover{background:#ffffff0d;color:#fff}.nav-link.active{background:#fff;color:#202a39;box-shadow:inset 3px 0 #ed7a32}.sidebar-bottom{margin-top:auto;color:#aeb7c4;font-size:10px;display:flex;align-items:center;gap:8px;padding:14px 9px}.secure-dot,.status i{width:7px;height:7px;background:#35b77c;border-radius:50%;display:inline-block}.main{margin-left:238px;padding:0 32px;max-width:1800px}.topbar{height:94px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:14px}.eyebrow{font-size:9px;letter-spacing:.16em;color:#9299a3;font-weight:700}.topbar h1{font:700 23px Manrope;margin:5px 0 0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:17px}.status{font-size:10px;color:#67717e;background:#fff;border:1px solid var(--line);padding:7px 10px;border-radius:20px}.status i{margin-right:6px}.avatar{border:0;border-radius:50%;height:34px;width:34px;background:#fbe8dc;color:#b85b24;font-weight:700}.mobile-menu{display:none}.toolbar{display:flex;align-items:end;gap:12px;padding:19px 0}.toolbar>div{display:grid;gap:5px}.toolbar label:not(.upload-btn){font-size:9px;color:#8c939e;letter-spacing:.12em;font-weight:700}.toolbar input,.toolbar select{height:36px;border:1px solid #e2e5e9;background:#fff;border-radius:7px;padding:0 10px;color:#303844;font:12px 'DM Sans';min-width:135px}.btn{height:36px;border-radius:7px;padding:0 14px;border:1px solid transparent;font:600 11px 'DM Sans';cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn-light{background:#fff;border-color:#e2e5e9;color:#5f6874}.btn-primary{background:#ed7a32;color:#fff}.toolbar-spacer{flex:1}.upload-btn{align-self:end}.notice{background:#fff7f1;border:1px solid #f7dfce;color:#79543d;border-radius:8px;padding:11px 14px;font-size:11px;display:flex;gap:10px;margin:0 0 25px}.notice b{color:#b85b24;white-space:nowrap}.view{display:none}.view.active{display:block}.section-head{display:flex;justify-content:space-between;align-items:end;margin:24px 0 15px}.section-head h2{font:700 17px Manrope;margin:0}.section-head p,.panel-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.muted{font-size:10px;color:#9299a3}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:15px}.kpi,.panel{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 2px 8px #17223505}.kpi{padding:17px 18px}.kpi span{font-size:11px;color:#7d8591}.kpi strong{display:block;font:700 25px Manrope;margin:9px 0 4px;letter-spacing:-.04em}.kpi small{font-size:10px;color:#9aa1aa}.content-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:14px}.panel{padding:19px}.panel-head h3{font:700 13px Manrope;margin:0}.composition{height:12px;border-radius:20px;overflow:hidden;background:#f0f1f3;display:flex;margin:31px 0 16px}.bar-retail{background:#ed7a32;width:0;transition:width .25s}.bar-spa{background:#263b58;width:0;transition:width .25s}.legend{display:flex;gap:24px;font-size:10px;color:#737c87}.legend span{display:flex;align-items:center;gap:7px}.legend b{color:#303844}.legend i{width:8px;height:8px;border-radius:2px}.retail-key{background:#ed7a32}.spa-key{background:#263b58}.summary-row{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #f0f1f3;font-size:11px;color:#7d8591}.summary-row:last-child{border:0}.summary-row b{color:#303844}.empty-state{color:#78818d;font-size:12px;padding:35px;text-align:center}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px}th{text-align:left;color:#858d98;font-size:9px;letter-spacing:.08em;font-weight:700;background:#fafbfc}td,th{padding:12px 13px;border-bottom:1px solid #edf0f2;white-space:nowrap}td{color:#3b444f}.empty-cell{text-align:center;color:#9299a3;padding:28px}footer{border-top:1px solid var(--line);margin-top:34px;padding:18px 0 25px;color:#89919c;font-size:10px}footer span{float:right}@media(max-width:1050px){.main{padding:0 22px}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.main{margin:0;padding:0 15px}.topbar{height:76px}.mobile-menu{display:block;border:0;background:#fff;border-radius:7px;padding:8px}.topbar h1{font-size:19px}.status{display:none}.toolbar{flex-wrap:wrap}.toolbar>div{flex:1;min-width:calc(50% - 8px)}.toolbar input,.toolbar select{width:100%;min-width:0}.toolbar-spacer{display:none}.upload-btn{flex:1}.notice{display:block;line-height:1.5}.notice b{display:block;margin-bottom:3px}.content-grid{grid-template-columns:1fr}.kpi{padding:14px}.kpi strong{font-size:20px}.section-head{align-items:start;gap:8px;flex-direction:column}footer span{float:none;display:block;margin-top:5px}}
.target-panel{margin:0 0 18px}.target-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}.target-inputs label{display:grid;gap:6px;color:#77818d;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.target-inputs input{border:1px solid #e5e8ed;border-radius:8px;padding:10px;font:inherit;color:#29313c}.target-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.target-metrics>div{background:#f8f9fb;border-radius:9px;padding:12px;display:grid;gap:5px}.target-metrics small{color:#7e8793;font-size:10px}.target-metrics b{font-size:17px;color:#26313e}@media(max-width:720px){.target-metrics{grid-template-columns:1fr}.target-inputs{grid-template-columns:1fr}}

.eod-panel{margin-bottom:18px}.eod-controls{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.eod-controls label{display:grid;gap:5px;font-size:10px;color:#7e8793;font-weight:700;text-transform:uppercase}.eod-controls input{border:1px solid #e5e8ed;border-radius:8px;padding:9px;font:inherit}#eodMessage{display:block;width:100%;resize:vertical;border:1px solid #e5e8ed;border-radius:9px;padding:12px;font:12px/1.6 ui-monospace,monospace;color:#303844;margin-bottom:10px}

.employee-target-input{width:100px;min-width:90px;border:1px solid #e2e7ed;border-radius:6px;padding:7px;font:inherit;color:#303844}

.forecast-panel{margin:0 0 18px}.forecast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.forecast-grid>div{background:#f8f9fb;border:1px solid #edf0f2;border-radius:9px;padding:14px;display:grid;gap:7px}.forecast-grid small,.employee-nine-grid small{font-size:9px;color:#7d8793}.forecast-grid strong,.forecast-grid b{font:700 17px Manrope;color:#273342}.employee-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.employee-map-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;min-width:0}.employee-map-card h4{font:700 13px Manrope;margin:0 0 10px;color:#26313e}.employee-nine-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.employee-nine-grid>div{background:#f8f9fb;border-radius:7px;padding:9px;display:grid;gap:5px;min-width:0}.employee-nine-grid b{font-size:12px;color:#303844;overflow-wrap:anywhere}@media(max-width:900px){.forecast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.employee-map-grid{grid-template-columns:1fr}.employee-nine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.forecast-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.pivot-builder,.weekly-review-panel{margin-bottom:16px}.pivot-fields{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.pivot-field{background:#fff7f1;border:1px solid #f2d8c6;color:#a95625;border-radius:20px;padding:7px 12px;font-size:11px;font-weight:700;cursor:grab}.pivot-config{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pivot-config label{display:grid;gap:6px;font-size:10px;color:#77818d;font-weight:700;text-transform:uppercase}.pivot-config select{height:36px;border:1px solid #e2e5e9;background:#fff;border-radius:7px;padding:0 10px;font:12px "DM Sans"}.pivot-dropzones{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.pivot-dropzone{border:1px dashed #d7dce2;border-radius:9px;padding:12px;background:#fafbfc;display:grid;gap:5px;min-height:58px}.pivot-dropzone small{font-size:8px;letter-spacing:.12em;color:#9299a3}.pivot-dropzone b{font-size:12px;color:#303844}.pivot-total td{font-weight:800;background:#f8f9fb}.review-actions{display:flex;gap:8px;flex-wrap:wrap}#weeklyReviewText{display:block;width:100%;margin-top:14px;resize:vertical;border:1px solid #e5e8ed;border-radius:9px;padding:13px;font:12px/1.6 ui-monospace,monospace;color:#303844}@media(max-width:720px){.pivot-config,.pivot-dropzones{grid-template-columns:1fr}.review-actions{width:100%}}

.sales-trend-panel{margin:0 0 18px}.sales-trend-chart{width:100%;overflow:hidden;padding-top:8px}.sales-trend-chart svg{display:block;width:100%;height:auto;min-height:160px}.trend-foot{display:flex;justify-content:space-between;color:#7d8793;font-size:10px;padding:4px 8px 0}.trend-foot b{color:#303844}

.recency-filter{display:flex;align-items:center;gap:8px;color:#7d8793;font-size:9px;font-weight:700;white-space:nowrap}.recency-filter select{height:34px;border:1px solid #e2e5e9;border-radius:7px;padding:0 9px;background:#fff;color:#303844;font:11px "DM Sans"}

.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 12% 10%,#fff2e9 0,transparent 35%),#f5f6f8}.login-card{width:min(430px,100%);background:#fff;border:1px solid #e9ebef;border-radius:18px;padding:30px;box-shadow:0 18px 55px #17223512;display:grid;gap:10px}.login-brand{display:flex;align-items:center;gap:11px;margin-bottom:22px}.login-brand b{display:block;font:800 17px Manrope;letter-spacing:.08em;color:#202a39}.login-brand small{display:block;color:#9299a3;font-size:9px;letter-spacing:.18em;margin-top:3px}.login-card h1{font:800 23px Manrope;color:#202a39;margin:0}.login-card>p{font-size:12px;color:#7d8591;margin:0 0 12px}.login-card label{font-size:10px;color:#66717e;font-weight:700;margin-top:7px}.login-card input{height:43px;border:1px solid #e0e5eb;border-radius:8px;padding:0 12px;font:13px "DM Sans";outline-color:#ed7a32}.login-submit{height:43px;margin-top:10px}.forgot-link{font-size:11px;color:#b85b24;text-decoration:none;text-align:center;padding:7px}.login-message{font-size:12px!important;color:#b42318!important;min-height:16px}.login-security{font-size:10px;color:#9299a3;text-align:center;margin-top:12px}.user-badge{font-size:10px;color:#5e6874;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:720px){.login-card{padding:24px}.user-badge{display:none}}

.first-password-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:#142033d9;backdrop-filter:blur(8px)}.first-password-card{width:min(440px,100%);background:#fff;border-radius:17px;padding:27px;box-shadow:0 24px 80px #0004;display:grid;gap:10px}.first-password-card h2{font:800 22px Manrope;color:#202a39;margin:0}.first-password-card p{font-size:12px;color:#697482;line-height:1.5;margin:0 0 8px}.first-password-card label{font-size:10px;color:#66717e;font-weight:700}.first-password-card input{height:42px;border:1px solid #e0e5eb;border-radius:8px;padding:0 11px;font:13px "DM Sans"}.first-password-card button{width:100%;height:40px}.first-password-card #firstPasswordMessage{color:#b42318;min-height:16px}

.spa-booking-panel{margin-bottom:16px}.spa-booking-upload{cursor:pointer}.booking-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.booking-kpis .kpi{padding:13px}.booking-kpis .kpi strong{font-size:21px}.booking-bar-row{display:grid;grid-template-columns:90px 1fr 28px;gap:9px;align-items:center;margin:12px 0;font-size:10px;color:#67717e}.booking-bar-track{height:9px;border-radius:20px;background:#f0f2f5;overflow:hidden}.booking-bar-track i{display:block;height:100%;background:#ed7a32;border-radius:20px}@media(max-width:900px){.booking-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
