/* Modern visual layer — intentionally isolated from the product layout rules. */
:root{
  --ink:#17231e;
  --muted:#738079;
  --green:#0e3b2c;
  --green-2:#195a43;
  --lime:#d9ff68;
  --cream:#f2f5f0;
  --paper:rgba(255,255,255,.92);
  --line:rgba(22,58,44,.09);
  --shadow:0 16px 50px rgba(16,47,36,.075);
  --radius:24px;
}

html{background:#edf2ed}
body{
  font-family:"Segoe UI Variable","Segoe UI",system-ui,-apple-system,sans-serif;
  background:
    radial-gradient(circle at 77% -10%,rgba(217,255,104,.18),transparent 27rem),
    linear-gradient(145deg,#f5f7f3 0%,#edf2ee 100%);
  letter-spacing:-.005em;
}

.icon{
  display:block;
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}

.brand-mark{
  position:relative;
  border:1px solid rgba(255,255,255,.3);
  background:linear-gradient(145deg,#e5ff8d,#c9f151);
  box-shadow:0 12px 34px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.65);
}
.brand-mark:after{content:"";position:absolute;inset:5px;border:1px solid rgba(14,59,44,.12);border-radius:13px}
.brand-mark.small:after{inset:4px;border-radius:9px}

.login-brand{
  background:
    radial-gradient(circle at 70% 25%,rgba(217,255,104,.16),transparent 23rem),
    linear-gradient(150deg,#082d21 0%,#124d38 100%);
}
.login-brand:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.023) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.023) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 75%)}
.login-brand:after{border-color:rgba(217,255,104,.2);box-shadow:0 0 0 95px rgba(217,255,104,.035),0 0 0 190px rgba(217,255,104,.025),0 0 80px rgba(217,255,104,.06)}
.login-panel{background:rgba(250,252,248,.88);backdrop-filter:blur(18px)}
.login-card{padding:38px;border:1px solid rgba(18,55,42,.08);border-radius:28px;background:rgba(255,255,255,.72);box-shadow:0 30px 70px rgba(22,48,38,.08)}

.app-shell{grid-template-columns:252px 1fr}
.sidebar{
  width:252px;
  padding:25px 16px 18px;
  background:
    radial-gradient(circle at 10% 90%,rgba(217,255,104,.1),transparent 18rem),
    linear-gradient(180deg,#0b3326,#0d402f 72%,#0b3528);
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:12px 0 36px rgba(11,51,38,.08);
}
.logo{padding:3px 10px 35px;font-size:15px;letter-spacing:-.02em}
.sidebar nav{gap:7px}
.nav-item{position:relative;min-height:48px;padding:12px 13px;border:1px solid transparent;border-radius:14px;color:#a8bbb2;transition:background .18s,color .18s,transform .18s,border-color .18s}
.nav-item span{width:25px}
.nav-item .icon{width:19px;height:19px;stroke-width:1.85}
.nav-item:hover{transform:translateX(2px);background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.04)}
.nav-item.active{color:#efffd1;background:linear-gradient(90deg,rgba(217,255,104,.15),rgba(217,255,104,.055));border-color:rgba(217,255,104,.12);box-shadow:none}
.nav-item.active:before{content:"";position:absolute;left:-1px;width:3px;height:24px;border-radius:4px;background:var(--lime);box-shadow:0 0 12px rgba(217,255,104,.5)}
.sidebar-foot{padding:18px 7px 0}
.install-app-button{display:flex;align-items:center;gap:10px;width:100%;margin-top:auto;padding:11px 12px;border:1px solid rgba(217,255,104,.16);border-radius:13px;background:rgba(217,255,104,.08);color:#eaffb0;text-align:left;transition:.18s}
.install-app-button:hover{transform:translateY(-1px);background:rgba(217,255,104,.14);border-color:rgba(217,255,104,.26)}
.install-app-button .icon{flex:0 0 19px;width:19px;height:19px}.install-app-button span{display:flex;flex-direction:column;min-width:0}.install-app-button strong{font-size:11px}.install-app-button small{margin-top:2px;color:rgba(255,255,255,.57);font-size:9px}
.install-app-button:not(.hidden)+.sidebar-foot{margin-top:10px}
.icon-button{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;transition:.18s}
.icon-button:hover{color:white;background:rgba(255,255,255,.08)}
.icon-button .icon{width:18px;height:18px}

.workspace{grid-column:2}
.topbar{min-height:96px;padding:16px 38px;background:rgba(245,248,244,.76);border-bottom:1px solid rgba(18,55,42,.075);box-shadow:0 8px 28px rgba(19,52,40,.025);backdrop-filter:blur(20px) saturate(145%)}
.topbar h2{font-size:24px;letter-spacing:-.04em}
.top-actions{gap:14px}
.month-picker{padding:8px 13px 7px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.72)}
.month-picker input{min-width:122px}
.quick-sale{display:flex;align-items:center;gap:8px;padding:13px 18px}
.quick-sale .icon{width:18px;height:18px}
.content{padding:34px 38px 70px}

.card{border-color:rgba(18,55,42,.075);background:var(--paper);box-shadow:0 8px 30px rgba(17,52,39,.045),inset 0 1px 0 rgba(255,255,255,.72);backdrop-filter:blur(12px)}
.card:not(.dark-card):not(.reward-card){transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.card:not(.dark-card):not(.reward-card):hover{border-color:rgba(18,72,52,.12);box-shadow:0 16px 42px rgba(17,52,39,.075)}
.card h3,.section-title h3,.ranking-hero h3{font-family:inherit;font-weight:750;letter-spacing:-.045em}
.eyebrow{color:#6f8179;font-size:10px;letter-spacing:.16em}

.hero-grid{gap:20px}
.dark-card{
  min-height:230px;
  background:
    radial-gradient(circle at 85% 10%,rgba(217,255,104,.18),transparent 14rem),
    linear-gradient(130deg,#0a3427 0%,#15543d 100%);
  box-shadow:0 22px 48px rgba(14,59,44,.2),inset 0 1px 0 rgba(255,255,255,.08);
}
.store-goal{display:flex;flex-direction:column;justify-content:space-between;padding:30px}
.store-goal h3{font-family:inherit;font-weight:720;font-size:38px;letter-spacing:-.055em}
.status-pill{border:1px solid rgba(217,255,104,.2);background:rgba(217,255,104,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.progress-track{height:8px}
.progress-track.light{background:rgba(255,255,255,.11);box-shadow:inset 0 1px 2px rgba(0,0,0,.12)}
.progress-track.light i{background:linear-gradient(90deg,#c4ee50,#e3ff8c);box-shadow:0 0 16px rgba(217,255,104,.36)}
.goal-footer strong{font-size:16px}
.pulse-card{overflow:hidden;padding:29px}
.pulse-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--lime),#63b387,transparent 78%)}
.daily-goal-card h3{font-size:32px}.progress-track.daily{height:8px;margin:27px 0 19px}.progress-track.daily i{background:linear-gradient(90deg,#008875,#34b3a1)}
.daily-goal-card .pace-row{margin:0 0 18px}.daily-goal-card .pace-row strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}
.daily-heading-actions{display:flex;align-items:center;gap:10px}
.goal-status{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid transparent;border-radius:999px;font-size:9px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.goal-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(112,128,120,.1)}
.goal-status.waiting{background:#f2f4f1;color:#78877f}
.goal-status.in-progress{border-color:#d8ebe6;background:#edf8f5;color:#267362}
.goal-status.reached{border-color:#dfe8a8;background:#f3f8cf;color:#647321}
.spark{width:46px;height:46px;border:1px solid #ddedb4;background:linear-gradient(145deg,#efffc0,#e2f39e);box-shadow:0 9px 20px rgba(86,115,53,.1)}
.spark .icon{width:21px;height:21px}
.pace-row{margin:35px 0 20px}
.pace-row strong{font-weight:750;font-size:25px;letter-spacing:-.04em}
.insight{padding:13px 15px;border:1px solid #ebefea;background:#f6f8f5}

.section-title{margin-top:38px}
.text-button{display:flex;align-items:center;gap:6px;border-radius:10px;padding:8px 10px;transition:.18s}
.text-button:hover{background:rgba(18,74,53,.06)}
.text-button .icon{width:16px;height:16px}
.seller-grid{gap:18px}
.seller-card{overflow:hidden;padding:22px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.seller-card:hover{transform:translateY(-2px);border-color:rgba(0,136,117,.18);box-shadow:0 17px 34px rgba(18,55,42,.075)}
.seller-card:after{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(#83bf93,#d8ff68);opacity:.65}
.seller-card:nth-child(3n+2):after{background:linear-gradient(#7da7d9,#b8d8ff)}
.seller-card:nth-child(3n+3):after{background:linear-gradient(#d69c77,#ffe0a6)}
.seller-card.daily-winner{border-color:rgba(180,172,64,.45);box-shadow:0 16px 42px rgba(146,137,42,.13)}
.seller-card.daily-winner:after{width:5px;background:linear-gradient(#b4ac40,#ece586)}
.avatar{border:1px solid rgba(18,59,44,.06);background:linear-gradient(145deg,#edf4ef,#e1ebe5);box-shadow:inset 0 1px 0 white;font-weight:750}
.seller-value strong{font-family:inherit;font-weight:750;letter-spacing:-.04em}
.mini-progress{background:#e9eee9}
.mini-progress i{background:linear-gradient(90deg,#1c6b4d,#7bb98a)}
.seller-meta .hit{display:flex;align-items:center;gap:4px;padding:3px 6px;border-radius:7px;background:#eaf7e8}
.seller-meta .hit .icon{width:12px;height:12px;stroke-width:2.5}

.bottom-grid{gap:20px;margin-top:36px}
.activity-item{padding:14px 2px}
.activity-icon{background:linear-gradient(145deg,#edf6ef,#e4eee7);border:1px solid #e0e9e2}
.activity-icon .icon{width:18px;height:18px}
.reward-card{background:linear-gradient(135deg,#e8f8aa,#d6f576);box-shadow:0 15px 38px rgba(105,137,45,.12)}
.reward-card:after{content:"";width:190px;height:190px;right:-70px;bottom:-80px;border-radius:50%;background:rgba(255,255,255,.22);box-shadow:0 0 0 32px rgba(255,255,255,.08)}
.podium-mini div{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.48);backdrop-filter:blur(7px)}

input,select{min-height:46px;border-color:rgba(18,55,42,.12);background:rgba(255,255,255,.82);box-shadow:0 1px 1px rgba(18,55,42,.02)}
input:hover,select:hover{border-color:rgba(18,81,57,.22)}
input:focus,select:focus{border-color:#4c8a70;box-shadow:0 0 0 4px rgba(35,111,79,.09)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;letter-spacing:-.01em}
.button.primary{background:linear-gradient(135deg,#0d3a2b,#195b43);box-shadow:0 10px 22px rgba(14,59,44,.17),inset 0 1px 0 rgba(255,255,255,.12)}
.button.primary:hover{background:linear-gradient(135deg,#124c37,#1d674b);box-shadow:0 14px 28px rgba(14,59,44,.21)}
.button.wide{align-items:center}

.data-table,.ranking-list,.team-list{overflow:hidden;border:1px solid rgba(18,55,42,.07);border-radius:16px;background:rgba(250,252,249,.6)}
.table-row,.ranking-row,.team-item{padding-left:14px;padding-right:14px}
.table-row>strong{display:flex;flex-direction:column;gap:2px;min-width:0}.table-row>strong small{overflow:hidden;color:#8a9690;font-size:10px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}
.table-row:not(.header):hover,.ranking-row:hover,.team-item:hover{background:rgba(238,244,239,.7)}
.delete-button,.holiday-item button{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:#9b716c;transition:.18s}
.delete-button:hover,.holiday-item button:hover{background:#f8e9e6;color:#a13f36}
.delete-button .icon,.holiday-item button .icon{width:16px;height:16px}
.ranking-hero{background:radial-gradient(circle at 78% 5%,rgba(217,255,104,.17),transparent 21rem),linear-gradient(135deg,#0a3427,#155840);box-shadow:0 20px 48px rgba(14,59,44,.16)}
.podium-step{background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.08);border-bottom:0;backdrop-filter:blur(8px)}
.podium-person.first .podium-step{background:linear-gradient(#e4ff8b,#d3f75e);box-shadow:0 -10px 30px rgba(217,255,104,.1)}
.calendar-day{border-color:rgba(18,55,42,.075);background:rgba(252,253,251,.85);transition:.16s}
.calendar-day:not(.blank):hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(18,55,42,.06)}
.calendar-day.today{border-color:#1e684c;box-shadow:0 0 0 3px rgba(31,104,76,.08)}
.toggle-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px}
.toggle-button .icon{width:14px;height:14px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.access-profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
.access-profile-card{display:flex;align-items:flex-start;gap:13px;padding:18px;border:1px solid rgba(18,55,42,.08);border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 8px 24px rgba(18,55,42,.035)}
.access-profile-card strong{display:block;font-size:13px}.access-profile-card p{margin:5px 0 0;color:#78877f;font-size:10px;line-height:1.5}
.access-profile-icon{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:12px;background:#e8f5f1;color:#15705d}.access-profile-icon .icon{width:18px;height:18px}
.access-profile-card.manager .access-profile-icon{background:#f2f5d8;color:#6d7628}.access-profile-card.seller .access-profile-icon{background:#eef2f8;color:#587494}
.access-form-help{margin:8px 0 -9px;font-size:11px;line-height:1.5}
.team-item{grid-template-columns:minmax(185px,1fr) 150px 88px 88px;padding-top:12px;padding-bottom:12px}
.team-item.inactive{opacity:.62}.inline-role-label{margin:0}.role-select{min-height:34px;padding:6px 30px 6px 10px;border-radius:9px;font-size:10px;font-weight:750}.role-select:disabled{cursor:not-allowed;background:#f0f2ef;color:#7d8983}
.daily-entry-hint{margin:-4px 0 17px;padding:10px 12px;border:1px solid rgba(0,152,132,.16);border-radius:11px;background:#edf9f6;color:#387368;font-size:11px;line-height:1.45}
.day-closing-panel{margin:18px 0 8px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#f7f9f6}.day-closing-panel.pending{background:#faf8f1;border-color:#ebe3c5}.day-closing-panel.ready{background:#eef8f4;border-color:#cfe8df}.day-closing-panel.closed{background:#f1f5f2;border-color:#d8e4dd}
.closing-heading{display:flex;align-items:center;gap:10px}.closing-heading>div{display:flex;flex-direction:column}.closing-heading strong{font-size:12px}.closing-heading small{margin-top:2px;color:#7a8982;font-size:10px}.closing-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:white;color:#19705a}.closing-icon .icon{width:16px;height:16px}
.closing-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.closing-summary span{display:flex;flex-direction:column;padding:9px;border-radius:10px;background:rgba(255,255,255,.68)}.closing-summary small{color:#7c8983;font-size:9px}.closing-summary strong{margin-top:3px;font-size:12px}.day-closing-panel p{margin:0 0 12px;color:#6b7b73;font-size:10px;line-height:1.45}.day-closing-panel .button{justify-content:center;gap:8px;min-height:44px;padding:10px 14px;font-size:11px;line-height:1.25;text-align:center}.day-closing-panel .button .icon{flex:0 0 17px;width:17px;height:17px}.button:disabled{cursor:not-allowed;opacity:.48;transform:none!important;box-shadow:none!important}
.locked-row{background:#f7f9f7}.locked-label{display:inline-flex!important;align-items:center;gap:3px;margin-top:3px;color:#60756b;font-size:9px}.locked-label .icon{width:10px;height:10px}
.closure-state{display:flex;align-items:center;gap:3px;margin-top:3px;color:#9a8571;font-size:9px;font-weight:700}.closure-state.closed{color:#39705a}.closure-state .icon{width:9px;height:9px}

/* Reports */
.report-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:2px 2px 24px}
.report-toolbar h3{margin:3px 0;font-size:28px;font-weight:760;letter-spacing:-.05em}
.report-toolbar .muted{margin:7px 0 0}
.report-actions{display:flex;gap:10px}
.button.secondary{border:1px solid rgba(18,55,42,.11);background:rgba(255,255,255,.78);color:var(--green);box-shadow:0 5px 14px rgba(18,55,42,.04)}
.button.secondary:hover{background:white;border-color:rgba(18,55,42,.2)}
.report-actions .icon{width:17px;height:17px}
.report-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.report-kpi{display:flex;align-items:flex-start;gap:15px;padding:21px}
.report-kpi-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#e9f4ea,#dfece3);color:#27694e;border:1px solid rgba(18,55,42,.06)}
.report-kpi-icon .icon{width:19px;height:19px}
.report-kpi>div{display:flex;flex-direction:column;min-width:0}
.report-kpi small{color:#7f8d86;font-size:11px}
.report-kpi strong{margin:4px 0 1px;font-size:21px;font-weight:760;letter-spacing:-.045em;white-space:nowrap}
.report-kpi p{overflow:hidden;margin:0;color:#819089;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.report-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:20px;margin-bottom:20px}
.report-performance-card,.report-awards-card{min-height:330px}
.report-bars{display:flex;flex-direction:column;gap:19px;margin-top:28px}
.report-bar-row{display:grid;grid-template-columns:180px 1fr 105px;align-items:center;gap:14px}
.report-bar-person{display:flex;align-items:center;gap:10px;min-width:0}
.report-bar-person .avatar{width:35px;height:35px;border-radius:10px}
.report-bar-person>div{display:flex;flex-direction:column;min-width:0}
.report-bar-person strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.report-bar-person small{color:#89958f;font-size:10px}
.report-bar-track{position:relative;height:12px;border-radius:10px;background:#edf1ed;overflow:hidden}
.report-bar-track i{position:absolute;left:0;border-radius:inherit}
.report-bar-track .target{top:0;height:100%;background:#dbe3dd}
.report-bar-track .actual{top:3px;height:6px;background:linear-gradient(90deg,#1b6549,#89bd88);box-shadow:0 0 8px rgba(46,115,77,.18)}
.report-bar-row>strong{text-align:right;font-size:12px}
.report-awards{margin-top:25px}
.award-total{display:flex;align-items:center;gap:14px;padding:18px;border-radius:16px;background:linear-gradient(135deg,#e8f8aa,#d9f67c)}
.award-total>span{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:rgba(255,255,255,.5);color:#43662d}
.award-total .icon{width:20px;height:20px}
.award-total>div{display:flex;flex-direction:column}
.award-total small{color:#61734f;font-size:10px}
.award-total strong{font-size:24px;letter-spacing:-.045em}
.award-split{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}
.award-split>div{display:flex;flex-direction:column;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8faf7}
.award-split small{color:#8a9690;font-size:9px}.award-split strong{margin-top:3px;font-size:13px}
.award-people{max-height:104px;overflow:auto}
.award-people>div{display:flex;justify-content:space-between;padding:8px 3px;border-bottom:1px solid var(--line);font-size:11px}
.report-table-card{margin-bottom:20px}
.report-table{overflow:auto;margin-top:19px;border:1px solid rgba(18,55,42,.07);border-radius:15px}
.report-table-row{display:grid;grid-template-columns:38px minmax(145px,1.2fr) repeat(5,minmax(105px,1fr));align-items:center;gap:12px;min-width:900px;padding:13px 14px;border-bottom:1px solid var(--line);font-size:11px}
.report-table-row:last-child{border:0}
.report-table-row:not(.header):hover{background:#f6f9f6}
.report-table-row.header{background:#f2f6f2;color:#7d8a84;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.report-table-row .position{width:27px;height:27px;border-radius:8px}
.report-table-row .mini-progress{height:4px;margin-top:5px}
.report-positive{color:#226847;font-weight:750}
.report-daily{display:flex;flex-direction:column;gap:12px;margin-top:22px}
.daily-history-row{display:grid;grid-template-columns:75px repeat(2,minmax(100px,1fr)) 115px minmax(150px,1.2fr) 90px;align-items:center;gap:12px;min-width:760px;padding:12px 13px;border-bottom:1px solid var(--line);font-size:11px}
.daily-history-row.header{border-radius:10px;background:#f2f6f2;color:#7d8a84;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.daily-history-row>span{display:flex;flex-direction:column}.daily-history-row small{margin-top:2px;color:#89958f}.daily-status{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:5px;width:max-content;padding:5px 7px;border-radius:8px;font-size:9px;font-weight:800}.daily-status.won{background:#e7f6ed;color:#2c7247}.daily-status.missed{background:#f5eeeb;color:#9b6358}.daily-status .icon{width:11px;height:11px;stroke-width:2.5}
.report-daily-card .report-daily{overflow:auto}
.daily-row{display:grid;grid-template-columns:62px 1fr 110px;align-items:center;gap:13px}
.daily-row time{color:#718079;font-size:11px;font-weight:700;text-transform:capitalize}
.daily-track{height:8px;border-radius:8px;background:#edf1ed;overflow:hidden}
.daily-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2a7456,#a0cb91)}
.daily-row strong{text-align:right;font-size:11px}
.report-generated{margin:17px 2px;color:#919c96;font-size:10px;text-align:right}

/* Interactive weighted calendar. */
.calendar-card{overflow:hidden}
.calendar-heading{align-items:center}
.calendar-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;margin:24px 0 4px;padding:10px;border:1px solid rgba(18,55,42,.07);border-radius:15px;background:#f5f8f4}
.calendar-nav{display:grid;place-items:center;flex:0 0 40px;height:40px;border:1px solid rgba(18,55,42,.09);border-radius:11px;background:white;color:#27634b;transition:.16s}
.calendar-nav:hover{border-color:rgba(18,55,42,.22);transform:translateY(-1px);box-shadow:0 6px 14px rgba(18,55,42,.07)}
.calendar-nav .icon{width:17px;height:17px}.calendar-nav .previous{transform:rotate(180deg)}
.calendar-month-picker{display:flex;align-items:center;flex-direction:row;gap:11px;margin:0;padding:0 12px;color:#7b8982;font-size:11px}
.calendar-month-picker input{width:155px;border:0;background:transparent;padding:7px 0;color:#243d32;font-weight:800}
.calendar-day{appearance:none;width:100%;text-align:left;color:var(--ink);font-family:inherit;cursor:pointer}
.calendar-day strong{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:rgba(255,255,255,.78);font-size:12px}
.calendar-day span{overflow:hidden;display:block;margin-top:15px;color:#6f7d76;font-size:10px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}
.calendar-day.weekday{background:linear-gradient(145deg,#fcfdfb,#f6f9f5)}
.calendar-day.saturday{border-color:#dde4b8;background:linear-gradient(145deg,#fbfde9,#f4f8d7)}
.calendar-day.saturday span{color:#71813f}
.calendar-day.sunday{background:#f0f2ef;color:#9ba59f;box-shadow:none}
.calendar-day.sunday span{color:#9ba59f}
.calendar-day.disabled{border-color:#efd2c4;background:linear-gradient(145deg,#fff6f1,#fbece5);color:#995d48}
.calendar-day.disabled span{color:#a86b54}
.calendar-day.today strong{background:#1b6248;color:white}
.calendar-info-card .muted{line-height:1.55}
.calendar-legend{display:flex;flex-direction:column;gap:9px;margin-top:22px}
.calendar-legend>div{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid rgba(18,55,42,.07);border-radius:13px;background:#fafcfa}
.calendar-legend span{display:flex;flex-direction:column;gap:2px}.calendar-legend strong{font-size:12px}.calendar-legend small{color:#87948d;font-size:11px}
.legend-dot{flex:0 0 13px;height:13px;border-radius:5px;background:#e7eee8;border:1px solid #d6dfd8}.legend-dot.saturday{background:#eff6c9;border-color:#dce5a6}.legend-dot.nonworking{background:#fae8df;border-color:#edcdbd}
.holiday-item span{color:#7c8983}.holiday-item button{display:grid;place-items:center;width:34px;height:34px;border-radius:10px}.holiday-item button:hover{background:#f9ece8}.holiday-item .icon{width:15px;height:15px}
body.dialog-open{overflow:hidden}
.calendar-dialog{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:22px;background:rgba(9,29,21,.55);backdrop-filter:blur(6px)}
.calendar-dialog-panel{position:relative;width:min(440px,100%);padding:30px;border:1px solid rgba(255,255,255,.45);border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(10,31,22,.28);animation:calendar-dialog-in .2s ease}
@keyframes calendar-dialog-in{from{opacity:0;transform:translateY(8px) scale(.98)}}
.calendar-dialog-panel h3{margin:4px 36px 7px 0;font:800 22px/1.25 Manrope,sans-serif;letter-spacing:-.03em}.calendar-dialog-panel>.muted{margin:0;line-height:1.55}
.calendar-dialog-icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:18px;border-radius:14px;background:#e8f3e9;color:#28664d}.calendar-dialog-icon .icon{width:20px;height:20px}
.calendar-dialog-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:35px;height:35px;border:0;border-radius:11px;background:#f1f4f1;color:#617067;font-size:21px;line-height:1}
.calendar-dialog-close:hover{background:#e7ece8}.calendar-dialog .stack-form{margin-top:24px}.calendar-dialog .button{align-items:center}.calendar-dialog .button .icon{width:16px;height:16px}
.button.danger{background:#a64f42;color:white;box-shadow:0 8px 20px rgba(135,54,43,.14)}.button.danger:hover{background:#923f34}
.percent-input{position:relative}.percent-input input{padding-right:42px}.percent-input>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#edf4ee;color:#2f6a50;font-size:11px;font-weight:850;pointer-events:none}
.field-help{min-height:28px;margin-top:-2px;color:#849089;font-size:10px;font-weight:500;line-height:1.4}
.monthly-bonus-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.monthly-bonus-fields label{margin-bottom:8px}
.monthly-bonus-preview{grid-column:1/-1;display:grid;grid-template-columns:1.1fr .85fr 1.15fr;gap:10px;margin:4px 0 13px;padding:12px;border:1px solid rgba(18,55,42,.08);border-radius:16px;background:linear-gradient(145deg,#f5f9f5,#eef5ef)}
.monthly-bonus-preview>div{display:flex;flex-direction:column;gap:3px;padding:9px 12px;border-right:1px solid rgba(18,55,42,.08)}.monthly-bonus-preview>div:last-child{border:0}.monthly-bonus-preview small{color:#78877f;font-size:10px}.monthly-bonus-preview strong{font-size:13px}.monthly-bonus-preview span{color:#87948d;font-size:10px}

/* Readability pass: slightly larger supporting text across the interface. */
.eyebrow{font-size:11px}
.month-picker{font-size:11px}
.goal-footer small,.pace-row small,.seller-top p,.seller-value small,.seller-meta,.activity-item small,.podium-mini small,.team-person small{font-size:12px}
.insight,.reward-card p:not(.eyebrow),.access-form-help{font-size:13px}
.access-profile-card p,.report-kpi small,.report-kpi p,.report-bar-person small,.award-total small,.award-split small,.award-people>div{font-size:11px}
.report-bar-person strong,.report-bar-row>strong,.daily-row strong,.daily-row time{font-size:12px}
.report-table-row,.daily-history-row{font-size:12px}
.report-table-row.header,.daily-history-row.header,.daily-status{font-size:10px}
.report-generated{font-size:11px}

@media(max-width:1120px){.report-kpis{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:1fr}.report-performance-card,.report-awards-card{min-height:0}}

/* Compact desktop scale: shows more information without reducing mobile legibility. */
@media screen and (min-width:821px){body{zoom:.92}}

@media(min-width:1280px){
  .seller-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .seller-value{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:9px}
}

@media(max-width:820px){
  .app-shell{display:block}
  .sidebar{width:252px}
  .workspace{display:block}
  .topbar{padding:14px 18px}
  .menu-button{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:white;border:1px solid var(--line)}
  .menu-button .icon{width:20px;height:20px}
  .content{padding:24px 18px 50px}
  .login-card{padding:28px}
  .report-toolbar{align-items:flex-start;flex-direction:column}.report-kpis{grid-template-columns:1fr 1fr}.report-bar-row{grid-template-columns:145px 1fr 90px}
  .team-item{grid-template-columns:minmax(160px,1fr) 140px 84px 84px}
  .calendar-layout{grid-template-columns:1fr}.calendar-info-card{position:static}
  .monthly-bonus-fields{grid-template-columns:1fr 1fr}.monthly-bonus-preview{grid-template-columns:1fr}.monthly-bonus-preview>div{border-right:0;border-bottom:1px solid rgba(18,55,42,.08)}.monthly-bonus-preview>div:last-child{border-bottom:0}
}

@media(max-width:580px){
  .month-picker{padding:6px 8px}
  .store-goal{min-height:220px}
  .store-goal h3{font-size:32px}
  .card{border-radius:20px}
  .daily-heading-actions{align-items:flex-end;flex-direction:column;gap:7px}.goal-status{font-size:8px;padding:5px 7px}
  .access-profile-grid{grid-template-columns:1fr;gap:9px}.access-profile-card{padding:14px}
  .team-item{grid-template-columns:1fr auto auto}.team-person{grid-column:1/-1}.inline-role-label{min-width:135px}.role-select{width:100%}
  .report-actions{width:100%}.report-actions .button{flex:1}.report-kpis{grid-template-columns:1fr}.report-bar-row{grid-template-columns:1fr 88px}.report-bar-person{grid-column:1/-1}.daily-row{grid-template-columns:53px 1fr 92px}
  .calendar-heading{align-items:flex-start;flex-direction:column}.calendar-toolbar{justify-content:space-between}.calendar-month-picker{flex:1;flex-direction:column;align-items:flex-start;gap:0;padding:0 3px}.calendar-month-picker input{width:100%;padding:3px 0}.calendar-grid{gap:4px}.calendar-day{min-height:66px;padding:6px}.calendar-day strong{width:24px;height:24px}.calendar-day span{margin-top:9px;font-size:8px}.calendar-dialog-panel{padding:25px 22px}.calendar-dialog{padding:13px}
  .monthly-bonus-fields{grid-template-columns:1fr}
}

@media print{
  @page{size:A4 landscape;margin:10mm}
  body{background:white!important;color:#111!important}
  .sidebar,.topbar,.report-actions,.toast{display:none!important}
  .app-shell{display:block!important}.workspace{display:block!important}.content{max-width:none!important;padding:0!important}
  .view{display:none!important}#view-reports{display:block!important}
  .report-toolbar{margin-bottom:12px}.report-toolbar h3{font-size:22px}.report-kpis{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.report-kpi{padding:12px}
  .report-grid{grid-template-columns:1.3fr .7fr;gap:10px;margin-bottom:10px}.report-performance-card,.report-awards-card{min-height:0}
  .card{break-inside:avoid;border:1px solid #dce2dd!important;background:white!important;box-shadow:none!important;backdrop-filter:none!important}
  .report-bars{gap:10px;margin-top:15px}.report-table-card{margin-bottom:10px}.report-table-row{padding:8px 10px}
  .report-daily-card{break-before:page}.report-generated{margin-top:8px}
}
