:root{
  font-family:Poppins,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  color:#f5f7ff;
  background:#080b13;
  --bg:#080b13;
  --panel:#0e1422;
  --panel-2:#121a2b;
  --panel-3:#171f32;
  --line:#26314b;
  --line-soft:#1a2337;
  --text:#f5f7ff;
  --muted:#94a0b8;
  --muted-2:#6f7b92;
  --primary:#7c3aed;
  --primary-2:#6d28d9;
  --accent:#22d3ee;
  --danger:#ef4444;
  --success:#22c55e;
  --warning:#f59e0b;
  --shadow:0 18px 50px rgba(0,0,0,.24)
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}
button,input,select{font:inherit}
button{color:inherit}
a{color:inherit}
input,select{width:100%;border:1px solid var(--line);background:#0b1120;color:#fff;border-radius:12px;padding:11px 13px;outline:none;transition:.18s border,.18s box-shadow,.18s background}
input:focus,select:focus{border-color:#7457ff;box-shadow:0 0 0 3px rgba(124,58,237,.13);background:#0d1424}
input[type=color]{padding:3px;height:42px;min-width:52px;cursor:pointer}
input[type=file]{padding:8px;font-size:12px;background:#0b1120}
label{display:grid;gap:7px;color:#b8c1d3;font-size:13px;font-weight:600}
small,.muted{color:var(--muted)}
h1,h2,h3,p{margin-top:0}
h1{font-size:28px;letter-spacing:-.035em}
h2{font-size:21px;letter-spacing:-.02em}
h3{font-size:15px;letter-spacing:-.01em;color:#dbe1ee}

/* shared */
.btn{border:0;border-radius:11px;padding:10px 14px;cursor:pointer;background:var(--primary);color:#fff;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s transform,.18s background,.18s opacity;white-space:nowrap}
.btn:hover{background:var(--primary-2);transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn.secondary{background:#1a2337;border:1px solid #2b3856}
.btn.secondary:hover{background:#212c43}
.btn.ghost{background:transparent;border:1px solid var(--line)}
.btn.ghost:hover{background:#141c2d}
.btn.danger{background:#b42318}.btn.danger:hover{background:#d33124}
.btn.sm{padding:8px 11px;border-radius:9px;font-size:12px}
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#1b2742;color:#b8c8ed;font-size:11px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
.pill.active{background:rgba(34,197,94,.12);color:#69dc8b;border:1px solid rgba(34,197,94,.18)}
.pill.locked{background:rgba(239,68,68,.12);color:#ff8989;border:1px solid rgba(239,68,68,.18)}
.card{background:linear-gradient(180deg,rgba(18,26,43,.96),rgba(13,20,34,.96));border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 1px 0 rgba(255,255,255,.02) inset}
.grid{display:grid;gap:14px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.actions,.toolbar,.top{display:flex;gap:10px;align-items:center}.top,.toolbar{justify-content:space-between}.actions{flex-wrap:wrap}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px}.section-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.section-head h2{margin:0}
.empty{padding:30px;text-align:center;color:var(--muted);border:1px dashed #33405e;border-radius:14px;background:rgba(11,17,32,.35)}

/* admin shell */
.admin-body{overflow-x:hidden}
.admin-shell{display:grid;grid-template-columns:285px minmax(0,1fr);min-height:100vh}
.admin-sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;border-right:1px solid var(--line-soft);background:#090e19;display:flex;flex-direction:column;gap:16px}
.brand-lockup{display:flex;align-items:center;gap:11px;padding:7px 9px}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#7c3aed,#22d3ee);display:grid;place-items:center;font-weight:900;box-shadow:0 7px 24px rgba(124,58,237,.25)}.brand-lockup strong{display:block;font-size:14px}.brand-lockup span{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.sidebar-block{min-height:0;display:flex;flex-direction:column;gap:8px}.sidebar-label{padding:0 9px;color:#738099;font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:800}.event-list{display:grid;gap:6px;overflow:auto;padding-right:2px}.sidebar-event{width:100%;border:1px solid transparent;background:transparent;color:#cbd3e3;border-radius:12px;padding:11px;text-align:left;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.sidebar-event:hover{background:#101827}.sidebar-event.selected{background:#151f34;border-color:#2b3856}.sidebar-event strong{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-event small{font-size:11px;color:var(--muted);display:block;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success)}.status-dot.locked{background:var(--danger)}
.sidebar-footer{margin-top:auto;border-top:1px solid var(--line-soft);padding-top:13px}.secret-mini{display:flex;gap:7px}.secret-mini input{font-size:12px;padding:9px 10px}.secret-mini .btn{padding:9px 11px}
.admin-main{min-width:0;padding:28px clamp(24px,3vw,46px) 56px;max-width:1540px;width:100%;margin:0 auto}
.admin-blank{min-height:70vh;display:grid;place-items:center}.admin-blank .inner{text-align:center;max-width:430px}.admin-blank .icon{width:64px;height:64px;border-radius:18px;background:#141e32;border:1px solid #293650;margin:0 auto 18px;display:grid;place-items:center;font-size:25px}
.event-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:22px}.event-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.event-header h1{margin:0}.event-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:13px}.event-meta span{display:inline-flex;align-items:center;gap:5px}.event-meta span+span:before{content:"•";color:#4f5d77;margin-right:3px}
.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:22px;overflow:auto}.tab{border:0;background:transparent;color:#8592aa;padding:11px 13px;cursor:pointer;font-weight:700;font-size:13px;border-bottom:2px solid transparent;margin-bottom:-1px}.tab:hover{color:#d5dbea}.tab.active{color:#fff;border-bottom-color:#8b5cf6}
.panel-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:16px;align-items:start}.sticky-card{position:sticky;top:24px}
.form-card .form-actions{display:flex;justify-content:flex-end;margin-top:4px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.color-field{display:grid;grid-template-columns:1fr 56px;gap:9px;align-items:end}.color-field input[type=text]{min-width:0}
.info-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.info-tile{background:#0b1120;border:1px solid var(--line-soft);border-radius:13px;padding:13px}.info-tile span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.info-tile strong{display:block;font-size:18px;margin-top:6px}

/* team */
.add-panel{background:#0c1322;border:1px solid var(--line);border-radius:16px;padding:16px}.people-list{display:grid;gap:9px}.person-row{display:grid;grid-template-columns:42px minmax(180px,1fr) minmax(240px,1.25fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line-soft);border-radius:13px;background:#0b1120}.avatar{width:38px;height:38px;border-radius:11px;background:#1d2944;display:grid;place-items:center;color:#a9b7d5;font-weight:900;font-size:12px}.person-main strong{display:block;font-size:13px}.person-main small{display:block;margin-top:3px}.person-link{font-size:11px;color:#8190ad;background:#090f1c;border:1px solid #202b41;border-radius:9px;padding:8px 9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-btn{border:1px solid var(--line);background:#151d2f;border-radius:9px;padding:8px 10px;cursor:pointer;font-size:11px;font-weight:750}.copy-btn:hover{background:#1d2740}

/* metrics */
.metric-category-list{display:grid;gap:22px}.metric-category-section{display:grid;gap:10px}.metric-category-head{display:flex;align-items:center;justify-content:space-between;padding:0 2px 8px;border-bottom:1px solid var(--line-soft)}.metric-category-head>div{display:flex;align-items:center;gap:9px}.metric-category-head h3{margin:0;color:#f0f3fa;font-size:15px}.metric-category-head span{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:#141d30;color:#8491a9;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.combo-field{position:relative}.combo-field:after{content:"⌄";position:absolute;right:13px;top:50%;transform:translateY(-54%);color:#72809a;font-size:16px;pointer-events:none}.combo-field input{padding-right:38px}
.metric-admin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric-admin-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:12px;align-items:center;position:relative}.metric-admin-card img{width:58px;height:58px;object-fit:cover;border-radius:13px;background:#1c2740;border:1px solid #2b3856}.metric-admin-card strong{display:block;font-size:13px}.metric-meta{font-size:11px;color:var(--muted);margin-top:4px}.metric-upload{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px;border-top:1px solid var(--line-soft);padding-top:10px}.metric-upload input{max-width:190px;padding:6px;font-size:10px}.metric-target{display:inline-flex;padding:3px 7px;border-radius:999px;background:#1b2539;color:#aebbd5;margin-left:4px}

/* appearance */
.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.asset-card{min-height:176px;border:1px dashed #34415f;border-radius:15px;background:#0b1120;padding:14px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.asset-preview{height:90px;border-radius:11px;background:linear-gradient(135deg,#171f32,#0e1626);display:grid;place-items:center;color:#6f7c95;background-size:cover;background-position:center}.asset-card .asset-title{font-size:13px;font-weight:800;margin-bottom:8px}
.theme-preview{border-radius:18px;min-height:260px;padding:22px;border:1px solid var(--line);background:#0b1020;position:relative;overflow:hidden}.theme-preview:after{content:"";position:absolute;inset:auto -80px -100px auto;width:260px;height:260px;border-radius:50%;background:var(--preview-accent,#22d3ee);filter:blur(80px);opacity:.13}.preview-banner{height:85px;border-radius:13px;background:linear-gradient(120deg,var(--preview-primary,#7c3aed),#17213a);margin-bottom:18px;background-size:cover;background-position:center}.preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.preview-kpi{background:rgba(10,16,29,.72);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px}.preview-kpi small{display:block}.preview-kpi strong{display:block;font-size:22px;margin-top:6px}

/* reports */
.export-card{display:grid;grid-template-columns:minmax(210px,.8fr) minmax(170px,.6fr) 1fr;gap:12px;align-items:end}.export-actions{display:flex;justify-content:flex-end;gap:8px}.report-note{margin-top:10px;color:var(--muted);font-size:12px}

/* reporter / PIC */
.wrap{max-width:1180px;margin:auto;padding:24px}.banner{min-height:132px;border-radius:19px;padding:20px;background:linear-gradient(120deg,#48208b,#0c7a8f);background-size:cover;background-position:center;display:flex;align-items:flex-end;box-shadow:var(--shadow)}.banner h1{margin:7px 0 2px}.datebox{display:flex;justify-content:space-between;align-items:end;margin-top:14px}.datebox label{display:grid;gap:6px}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.item-card{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center}.item-card img{width:58px;height:58px;object-fit:cover;border-radius:13px;background:#202a42}.item-info{display:grid;gap:4px}.counter{display:flex;align-items:center;gap:7px}.counter button{width:42px;height:42px;border:1px solid #34405f;border-radius:11px;background:#1a243a;color:#fff;font-size:21px;cursor:pointer}.counter button:hover{background:#24304b}.counter input{width:72px;text-align:center}.counter button:disabled,.counter input:disabled{opacity:.45}.notice{margin-top:18px;text-align:center}.kpi strong{font-size:28px;display:block;margin-top:5px}.team-row{display:grid;grid-template-columns:1.3fr repeat(4,.75fr);gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.team-row input{width:100%}.report16{aspect-ratio:16/9;width:100%;border:1px solid var(--line);border-radius:18px;padding:24px;overflow:hidden}.report-head{display:flex;justify-content:space-between;gap:16px}.report-head h2{margin:8px 0 3px}.big{font-size:42px;font-weight:800}.report-body{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;margin-top:16px}.barrow{display:grid;grid-template-columns:120px 1fr 48px;gap:8px;align-items:center;margin-bottom:10px}.bar{height:10px;border-radius:999px;background:#202a42;overflow:hidden}.fill{height:100%;background:#22d3ee;border-radius:999px}.report-table{width:100%;border-collapse:collapse;font-size:13px}.report-table th,.report-table td{padding:7px;border-bottom:1px solid var(--line);text-align:right}.report-table th:first-child,.report-table td:first-child{text-align:left}

/* modal */
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(6px);display:grid;place-items:center;padding:20px;z-index:50}.modal{width:min(720px,100%);background:#0f1625;border:1px solid #2c3855;border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.55);padding:20px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal-head h2{margin:0}.icon-btn{border:1px solid var(--line);background:#151d2f;width:34px;height:34px;border-radius:10px;cursor:pointer;font-size:18px}
.toast{position:fixed;right:22px;bottom:22px;background:#172139;border:1px solid #33415f;border-radius:12px;padding:11px 14px;box-shadow:var(--shadow);font-size:13px;z-index:70}

@media(max-width:1080px){.metric-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-grid{grid-template-columns:1fr}.sticky-card{position:static}.admin-shell{grid-template-columns:235px minmax(0,1fr)}.person-row{grid-template-columns:42px 1fr auto}.person-link{grid-column:2/4}.info-strip{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.admin-shell{display:block}.admin-sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line-soft)}.event-list{max-height:220px}.admin-main{padding:20px 14px 42px}.event-header{display:grid}.tabs{margin-left:-14px;margin-right:-14px;padding:0 14px}.g4,.g3,.g2,.metric-grid,.metric-admin,.asset-grid,.field-row,.export-card,.info-strip{grid-template-columns:1fr}.export-actions{justify-content:flex-start}.person-row{grid-template-columns:42px 1fr}.person-link,.copy-btn{grid-column:1/-1}.wrap{padding:12px}.item-card{grid-template-columns:52px 1fr}.item-card .counter{grid-column:1/-1;justify-content:flex-end}.counter button{width:52px;height:48px}.counter input{height:48px;width:86px;font-size:18px}.top,.toolbar{align-items:flex-start;flex-wrap:wrap}.actions{flex-wrap:wrap}.team-row{grid-template-columns:1fr 1fr}.report16{min-height:700px;aspect-ratio:auto}.report-body{grid-template-columns:1fr}}

/* v0.5 theme + metric management */
:root{font-family:Poppins,Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color-scheme:dark}
[data-theme="light"]{
  color-scheme:light;
  --bg:#f5f7fb;
  --panel:#ffffff;
  --panel-2:#ffffff;
  --panel-3:#f4f6fb;
  --line:#dce2ec;
  --line-soft:#e8ecf3;
  --text:#182033;
  --muted:#68748a;
  --muted-2:#8a94a6;
  --shadow:0 16px 42px rgba(24,32,51,.08)
}
[data-theme="light"] body,[data-theme="light"] html{background:var(--bg);color:var(--text)}
[data-theme="light"] input,[data-theme="light"] select{background:#fff;color:#182033;border-color:#d7deea}
[data-theme="light"] input:focus,[data-theme="light"] select:focus{background:#fff;border-color:#7457ff}
[data-theme="light"] input[type=file]{background:#fff;color:#48546a}
[data-theme="light"] label{color:#465169}
[data-theme="light"] h3{color:#273147}
[data-theme="light"] .card{background:#fff;border-color:#dde3ed;box-shadow:0 1px 0 rgba(20,30,50,.02),0 8px 24px rgba(20,30,50,.035)}
[data-theme="light"] .add-panel,[data-theme="light"] .info-tile,[data-theme="light"] .person-row,[data-theme="light"] .asset-card{background:#fff;border-color:#dde3ed}
[data-theme="light"] .person-link{background:#f6f8fc;border-color:#e0e6ef;color:#69758b}
[data-theme="light"] .copy-btn,[data-theme="light"] .icon-btn{background:#f7f8fb;border-color:#dbe1eb;color:#28334a}
[data-theme="light"] .copy-btn:hover,[data-theme="light"] .icon-btn:hover{background:#eef2f7}
[data-theme="light"] .btn.secondary{background:#eef2f8;border-color:#dce3ed;color:#28334a}
[data-theme="light"] .btn.secondary:hover{background:#e5eaf2}
[data-theme="light"] .btn.ghost{color:#354158;border-color:#d9e0eb}
[data-theme="light"] .btn.ghost:hover{background:#f0f3f8}
[data-theme="light"] .tabs{border-color:#dde3ed}
[data-theme="light"] .tab{color:#758197}
[data-theme="light"] .tab:hover{color:#273147}
[data-theme="light"] .tab.active{color:#182033}
[data-theme="light"] .metric-category-head{border-color:#e3e8f0}
[data-theme="light"] .metric-category-head h3{color:#202a3e}
[data-theme="light"] .metric-category-head span,[data-theme="light"] .metric-target{background:#f0f3f8;color:#69758b}
[data-theme="light"] .metric-admin-card img{background:#eef2f8;border-color:#dbe2ed}
[data-theme="light"] .metric-upload{border-color:#e8ecf3}
[data-theme="light"] .asset-preview{background:linear-gradient(135deg,#eef2f7,#e5eaf2);color:#8a94a6}
[data-theme="light"] .theme-preview{border-color:#dce3ed}
[data-theme="light"] .preview-kpi{background:rgba(255,255,255,.85);border-color:rgba(30,40,60,.09);color:#182033}
[data-theme="light"] .modal{background:#fff;border-color:#dce3ed;box-shadow:0 30px 90px rgba(20,30,50,.16)}
[data-theme="light"] .toast{background:#fff;border-color:#dce3ed;color:#182033}
[data-theme="light"] .empty{background:#fff;border-color:#d6deea}
[data-theme="light"] .counter button{background:#f0f3f8;border-color:#d9e0eb;color:#1f293d}
[data-theme="light"] .counter button:hover{background:#e8edf4}
[data-theme="light"] .bar{background:#e4e9f1}
[data-theme="light"] .report-table th,[data-theme="light"] .report-table td,[data-theme="light"] .team-row{border-color:#e1e6ee}
[data-theme="light"] .admin-main{background:#f7f9fc}
/* Sidebar stays branded/dark in both themes, matching the QR admin pattern. */
[data-theme="light"] .admin-sidebar{background:#09101d;color:#f5f7ff;border-color:#182236}
[data-theme="light"] .admin-sidebar .sidebar-label,[data-theme="light"] .admin-sidebar small{color:#8592aa}
[data-theme="light"] .admin-sidebar input{background:#0d1524;color:#fff;border-color:#28354e}
[data-theme="light"] .admin-sidebar .btn.secondary{background:#182338;border-color:#2a3854;color:#fff}
[data-theme="light"] .sidebar-event{color:#cbd3e3}
[data-theme="light"] .sidebar-event:hover{background:#101827}
[data-theme="light"] .sidebar-event.selected{background:#151f34;border-color:#2b3856}
.theme-toggle{width:100%;border:1px solid #2a3650;background:#111a2b;color:#d9e1ef;border-radius:11px;padding:9px 11px;display:flex;gap:9px;align-items:center;cursor:pointer;font-weight:700;font-size:12px}
.theme-toggle:hover{background:#172238}.theme-icon{font-size:15px}
.floating-theme-toggle{position:fixed;right:16px;top:16px;z-index:35;width:40px;height:40px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--text);box-shadow:var(--shadow);cursor:pointer;font-size:17px}
.category-title{min-width:0}.category-actions,.metric-card-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.icon-btn.sm{width:30px;height:30px;border-radius:8px;font-size:13px}.icon-btn:disabled{opacity:.3;cursor:not-allowed}
.metric-admin-card{grid-template-columns:58px minmax(0,1fr) auto}.metric-card-copy{min-width:0}.metric-card-actions{justify-content:flex-end}.metric-card-actions .btn{padding:7px 9px;font-size:10px}.metric-upload{grid-column:1/-1}
@media(max-width:760px){.metric-admin-card{grid-template-columns:52px minmax(0,1fr)}.metric-card-actions{grid-column:1/-1;justify-content:flex-start}.metric-category-head{align-items:flex-start;gap:10px}.category-actions{justify-content:flex-end}.floating-theme-toggle{right:10px;top:10px}}


/* v0.5.1 metric card layout polish */
.metric-category-list{gap:30px}
.metric-category-section{gap:14px}
.metric-category-head{padding:0 4px 12px}
.category-title>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.metric-category-head h3{font-size:18px;letter-spacing:-.02em}
.category-actions{gap:8px;flex-wrap:nowrap}
.category-actions .btn{min-height:36px}
.metric-admin{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.metric-admin-card{grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto;gap:16px;padding:18px;align-items:center;min-height:188px;overflow:hidden}
.metric-admin-card img{width:72px;height:72px;border-radius:16px;grid-row:1;align-self:start}
.metric-card-copy{grid-column:2;grid-row:1;align-self:start;padding-right:108px;min-width:0}
.metric-admin-card strong{font-size:17px;line-height:1.25;overflow-wrap:anywhere}
.metric-meta{font-size:12px;line-height:1.6;margin-top:6px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.metric-target{margin-left:0;white-space:nowrap}
.metric-card-actions{position:absolute;right:18px;top:18px;display:grid;gap:9px;justify-items:end}
.metric-order-actions,.metric-edit-actions{display:flex;align-items:center;gap:6px}
.metric-edit-actions .btn{min-width:60px;padding:8px 10px;font-size:11px}
.metric-upload{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:minmax(110px,1fr) minmax(190px,240px);align-items:center;gap:16px;margin-top:0;padding-top:14px}
.metric-upload>div{display:flex;align-items:center;gap:8px;min-width:0}
.metric-upload small{font-size:12px;font-weight:700;color:var(--text)}
.metric-upload-hint{font-size:10px;color:var(--muted);padding:3px 6px;border:1px solid var(--line-soft);border-radius:999px}
.metric-upload input{width:100%;max-width:none;padding:7px 8px;font-size:11px;min-width:0}

@media(max-width:1180px){
  .metric-admin{grid-template-columns:1fr}
}
@media(max-width:760px){
  .metric-category-head{display:grid;gap:12px;align-items:start}
  .category-actions{justify-content:flex-start}
  .metric-admin-card{grid-template-columns:58px minmax(0,1fr);min-height:0;padding:16px;gap:12px}
  .metric-admin-card img{width:58px;height:58px;border-radius:14px}
  .metric-card-copy{padding-right:0}
  .metric-card-actions{position:static;grid-column:1/-1;grid-row:2;display:flex;justify-content:space-between;align-items:center;width:100%}
  .metric-upload{grid-row:3;grid-template-columns:1fr;gap:9px}
  .metric-upload input{width:100%}
}

/* v0.6 operational UI */
.team-manage-row{grid-template-columns:42px minmax(150px,.85fr) minmax(180px,1fr) auto}.team-manage-row.is-inactive{opacity:.62}.person-name-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.status-chip{font-size:9px;font-weight:800;letter-spacing:.05em;border-radius:999px;padding:4px 7px}.status-chip.active{background:rgba(34,197,94,.14);color:#4ade80}.status-chip.inactive{background:rgba(148,163,184,.14);color:#94a3b8}.team-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.pic-ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 26px}.pic-quick{padding:18px}.pic-quick .section-head{margin-bottom:12px}.full{grid-column:1/-1}.team-row-v6{display:grid;grid-template-columns:210px minmax(0,1fr) 74px;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.team-row-v6:last-child{border-bottom:0}.team-person{min-width:0}.team-person strong{display:block}.text-btn{border:0;background:none;padding:4px 0;color:var(--accent,#22d3ee);font:inherit;font-size:11px;cursor:pointer}.team-metrics{display:grid;grid-template-columns:repeat(4,minmax(80px,1fr));gap:8px}.team-metrics label{display:grid;gap:5px}.team-metrics input{width:100%}.team-total{text-align:right}.team-total span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}.team-total strong{font-size:22px}
.mobile-report-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 2px 14px}.mobile-report-copy h1{margin:8px 0 3px;font-size:27px}.report-state{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(34,197,94,.13);color:#4ade80;font-size:10px;font-weight:800;letter-spacing:.05em}.report-state.locked{background:rgba(148,163,184,.14);color:#94a3b8}.mobile-datebox{align-items:center}.mobile-hint{max-width:350px;color:var(--muted);font-size:12px;line-height:1.5}.mobile-metric-section{margin-top:22px}.mobile-section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.mobile-section-title h3{margin:0;font-size:16px}.mobile-section-title span{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase}.mobile-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mobile-item-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:11px;padding:14px}.mobile-item-card img{width:58px;height:58px;border-radius:14px;object-fit:cover;background:var(--input)}.mobile-item-info{min-width:0;align-self:center}.mobile-item-info strong{display:block;font-size:14px}.mobile-item-info small{display:block;color:var(--muted);margin-top:4px}.mobile-counter{grid-column:1/-1;display:grid;grid-template-columns:64px 1fr 64px;gap:8px;align-items:center;margin-top:2px}.mobile-counter button{height:54px;border:1px solid var(--line);border-radius:13px;background:var(--input);color:var(--text);font-size:27px;font-weight:600}.mobile-counter input{height:54px;text-align:center;font-size:22px;font-weight:800;border-radius:13px}.mobile-counter button:disabled,.mobile-counter input:disabled{opacity:.48}.mobile-submit-wrap{position:sticky;bottom:0;margin:18px -12px -12px;padding:12px;background:linear-gradient(180deg,transparent,var(--bg) 25%);z-index:20}.mobile-submit{width:100%;height:54px;font-size:15px}.mobile-submit-wrap small{display:block;text-align:center;color:var(--muted);margin-top:7px}.mobile-final{text-align:center;margin-top:18px}
[data-theme="light"] .status-chip.active{background:#eaf8ef;color:#238b49}[data-theme="light"] .report-state{background:#eaf8ef;color:#238b49}[data-theme="light"] .status-chip.inactive,[data-theme="light"] .report-state.locked{background:#eef1f5;color:#758096}
@media(max-width:900px){.team-manage-row{grid-template-columns:42px 1fr}.team-manage-row .person-link,.team-manage-row .team-actions{grid-column:2}.pic-ops-grid{grid-template-columns:1fr}.team-row-v6{grid-template-columns:1fr}.team-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.team-total{text-align:left}}
@media(max-width:760px){.mobile-metric-grid{grid-template-columns:1fr}.mobile-item-card{padding:13px}.mobile-counter{grid-template-columns:64px minmax(0,1fr) 64px}.mobile-datebox{display:grid;gap:12px}.mobile-hint{max-width:none}.mobile-submit-wrap{margin-left:-12px;margin-right:-12px}.team-actions{justify-content:flex-start}.team-manage-row .team-actions{grid-column:1/-1}.team-manage-row .person-link{grid-column:1/-1}.pic-ops-grid{margin-top:14px}.team-metrics{grid-template-columns:1fr 1fr}}

/* v0.7.0 shared workspace + categorized reports */
.unsaved-state{align-items:center;gap:6px;font-size:12px;font-weight:700;color:#f59e0b}.check-row{display:flex!important;align-items:center!important;gap:10px!important}.check-row input[type=checkbox]{width:18px!important;height:18px!important;margin:0!important}.reassign-select{min-width:150px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--text)}
.report-category-card{margin-bottom:18px;padding:0;overflow:hidden}.report-category-title{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.report-category-title h3{margin:0 0 4px}.report-category-title strong{font-size:28px}.table-scroll{overflow:auto}.category-report-table{width:100%;border-collapse:collapse;min-width:760px}.category-report-table th,.category-report-table td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}.category-report-table th:first-child,.category-report-table td:first-child{text-align:left;position:sticky;left:0;background:var(--surface);z-index:1}.category-report-table td:first-child small{display:block;color:var(--muted);margin-top:3px}.category-report-table thead th{font-size:12px;color:var(--muted);font-weight:700;background:var(--surface-2)}.item-head{display:flex;min-width:100px;flex-direction:column;align-items:center;gap:5px}.item-head img{width:42px;height:42px;object-fit:cover;border-radius:10px;background:var(--surface-2);border:1px solid var(--line)}.item-head span{color:var(--text);font-weight:700}.item-head small{font-size:10px;color:var(--muted)}.table-number{width:84px!important;text-align:center;padding:8px!important}.total-row td{font-weight:700;background:var(--surface-2)}.summary-line{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12)}
@media(max-width:900px){.event-header>.actions{flex-wrap:wrap}.unsaved-state{width:100%}.team-actions{flex-wrap:wrap}.reassign-select{width:100%}}

/* v0.7.1 PIC split navigation + safer category pricing */
.pic-main-tabs{display:flex;gap:7px;margin:22px 0 24px;padding:5px;background:var(--panel);border:1px solid var(--line);border-radius:14px;width:max-content;max-width:100%}.pic-main-tab{border:0;background:transparent;color:var(--muted);font-weight:750;padding:10px 16px;border-radius:10px;cursor:pointer;white-space:nowrap}.pic-main-tab.active{background:var(--primary);color:#fff}.pic-manage-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.pic-manage-intro h2{margin-bottom:5px}.pic-manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pic-manage-card{padding:20px;align-self:start}.manage-list-head{display:flex;justify-content:space-between;align-items:center;margin:24px 0 8px;padding-top:17px;border-top:1px solid var(--line)}.manage-list-head span{font-size:11px;color:var(--muted);font-weight:700}.manage-person-row,.manage-category-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-soft)}.manage-person-row:last-child,.manage-category-row:last-child{border-bottom:0}.manage-person-row small,.manage-category-row small{display:block;color:var(--muted);margin-top:3px}.price-capability-box{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2)}.price-capability-box label{margin:0}.price-capability-box input:disabled{opacity:.65}.locked-panel{text-align:center;padding:36px}.locked-panel h2{margin-bottom:6px}
[data-theme="light"] .pic-main-tabs{background:#fff}.pic-main-tab.active{color:#fff}[data-theme="light"] .price-capability-box{background:#f7f9fc}
@media(max-width:900px){.pic-manage-grid{grid-template-columns:1fr}}@media(max-width:760px){.pic-main-tabs{width:100%}.pic-main-tab{flex:1}.pic-manage-intro{display:grid}.price-capability-box{align-items:flex-start;flex-direction:column}}

/* v0.8.0 achievement workflow polish */
.mobile-status-stack{display:grid;justify-items:end;gap:7px}.report-state.reopened{background:rgba(245,158,11,.14);color:#f59e0b}.save-state{font-size:10px;font-weight:700;color:var(--muted)}.save-state.saving{color:#f59e0b}.save-state.error{color:#ef4444}.save-state.saved{color:#22c55e}.v8-datebox{display:grid;grid-template-columns:42px minmax(170px,220px) 42px minmax(0,1fr);gap:10px}.date-step{width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2);color:var(--text);font-size:24px;cursor:pointer}.date-step:disabled{opacity:.35;cursor:not-allowed}.mobile-kpi-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0 6px}.mobile-kpi-strip>div{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.mobile-kpi-strip span{display:block;color:var(--muted);font-size:10px;font-weight:700;text-transform:uppercase}.mobile-kpi-strip strong{display:block;margin-top:4px;font-size:20px}.mobile-section-title small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.mobile-item-card.has-value{border-color:color-mix(in srgb,var(--primary) 45%,var(--line))}.mobile-final{display:grid;gap:5px}.mobile-final span{font-size:12px;color:var(--muted)}
.achievement-toolbar{position:sticky;top:10px;z-index:12;box-shadow:var(--shadow)}.achievement-date-controls{display:flex;align-items:center;gap:8px}.desktop-step{flex:0 0 42px}.achievement-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0 24px}.operational-kpi.success strong{color:#22c55e}.operational-kpi.warning strong{color:#f59e0b}.status-filters{display:flex;gap:7px;flex-wrap:wrap}.filter-chip{border:1px solid var(--line);background:var(--panel);color:var(--muted);padding:8px 11px;border-radius:999px;font-size:11px;font-weight:700;cursor:pointer}.filter-chip.active{background:var(--primary);border-color:var(--primary);color:#fff}.team-status-card{padding:4px 18px}.team-row-v8{display:grid;grid-template-columns:minmax(260px,1fr) 150px minmax(140px,auto);gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line-soft)}.team-row-v8:last-child{border-bottom:0}.team-person-v8{display:flex;gap:12px;align-items:center;min-width:0}.avatar-initial{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--panel-3);color:var(--text);font-weight:800}.person-status-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.team-person-v8 small{display:block;color:var(--muted);margin-top:2px}.report-chip{font-size:9px;font-weight:800;letter-spacing:.04em;padding:4px 7px;border-radius:999px}.report-chip.submitted{background:rgba(34,197,94,.13);color:#22c55e}.report-chip.reopened{background:rgba(245,158,11,.14);color:#f59e0b}.report-chip.draft{background:rgba(148,163,184,.14);color:#94a3b8}.team-progress-mini span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;font-weight:700}.team-progress-mini strong{font-size:22px}.status-note{font-size:11px;color:var(--muted);font-weight:700}.table-number.saving{border-color:#f59e0b!important}.table-number.saved{border-color:#22c55e!important}
[data-theme="light"] .report-state.reopened{background:#fff5df;color:#b77900}[data-theme="light"] .filter-chip{background:#fff}[data-theme="light"] .avatar-initial{background:#eef2f8}
@media(max-width:980px){.achievement-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.team-row-v8{grid-template-columns:1fr 120px}.team-row-v8 .team-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:760px){.mobile-status-stack{justify-items:start}.mobile-report-head{display:grid}.v8-datebox{grid-template-columns:42px minmax(0,1fr) 42px}.v8-datebox .mobile-hint{grid-column:1/-1}.mobile-kpi-strip{grid-template-columns:1fr 1fr}.mobile-kpi-strip>div:first-child{grid-column:1/-1}.achievement-toolbar{position:static}.achievement-date-controls{width:100%;flex-wrap:wrap}.achievement-date-controls select{width:100%}.achievement-date-controls input{flex:1}.achievement-kpis{grid-template-columns:1fr 1fr}.team-row-v8{grid-template-columns:1fr}.team-progress-mini{padding-left:54px}.team-row-v8 .team-actions{grid-column:auto}.status-filters{margin-top:10px}.section-head{align-items:flex-start}}

/* v0.9.0 PIC chart/full report + category status */
.achievement-kpis-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.category-kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0 0 26px}
.category-kpi{padding:16px 18px}.category-kpi span{display:block;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.category-kpi strong{display:block;font-size:28px;margin-top:5px}.category-kpi small{display:block;color:var(--muted);margin-top:3px}
.team-row-v9{display:grid;grid-template-columns:minmax(250px,.9fr) minmax(360px,1.8fr) minmax(140px,auto);gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line-soft)}.team-row-v9:last-child{border-bottom:0}
.team-category-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px}.team-category-results>div{padding:9px 10px;border:1px solid var(--line-soft);background:var(--panel-2);border-radius:10px;min-width:0}.team-category-results span{display:block;color:var(--muted);font-size:9px;font-weight:750;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-category-results strong{display:block;font-size:18px;margin-top:2px}
.full-report-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:20px 0 12px}.full-report-head h2{margin-bottom:4px}
.chart-controls{display:flex;align-items:end;gap:12px;margin-bottom:14px;padding:14px 16px}.chart-controls label{min-width:230px}.chart-controls select{width:100%}
.report-chart-card{padding:20px 22px;margin-bottom:26px}.report-chart-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:20px}.report-chart-heading h2{margin-bottom:4px}.report-chart-heading p{margin:0;color:var(--muted)}.report-chart-heading>span{font-size:10px;font-weight:800;color:var(--muted);background:var(--panel-2);border:1px solid var(--line-soft);padding:6px 9px;border-radius:999px}
.report-chart-bars{display:grid;gap:12px}.report-chart-row{display:grid;grid-template-columns:auto minmax(130px,220px) minmax(180px,1fr) minmax(70px,auto);gap:12px;align-items:center}.report-chart-row>img{width:36px;height:36px;object-fit:cover;border-radius:9px;background:var(--panel-3)}.report-chart-row:not(:has(img)){grid-template-columns:minmax(130px,220px) minmax(180px,1fr) minmax(70px,auto)}.chart-label{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-track{height:18px;border-radius:999px;background:var(--panel-3);overflow:hidden;border:1px solid var(--line-soft)}.chart-bar-fill{height:100%;min-width:2px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:999px}.report-chart-row strong{text-align:right;font-size:14px}
[data-theme="light"] .team-category-results>div{background:#f8fafc}
@media(max-width:980px){.team-row-v9{grid-template-columns:1fr}.team-actions{justify-content:flex-start}.achievement-kpis-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.achievement-kpis-3{grid-template-columns:1fr}.category-kpi-strip{grid-template-columns:1fr 1fr}.chart-controls{display:grid}.chart-controls label{min-width:0}.report-chart-row,.report-chart-row:not(:has(img)){grid-template-columns:minmax(90px,1fr) minmax(120px,1.6fr) auto}.report-chart-row>img{display:none}.report-chart-heading{display:grid}.team-category-results{grid-template-columns:repeat(2,minmax(0,1fr))}.pic-main-tabs{overflow:auto}.pic-main-tab{flex:0 0 auto}}


/* v0.10 Full Report Builder + shared event team */
.report-builder-toolbar{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(560px,1.8fr);align-items:center;gap:24px;margin:16px 0;padding:20px 22px}.builder-toolbar-copy h2{margin:0 0 5px;font-size:22px}.builder-toolbar-copy p{margin:0;color:var(--muted);max-width:560px;line-height:1.5}.builder-toolbar-panel{display:grid;grid-template-columns:minmax(190px,1fr) minmax(210px,1fr) auto;gap:10px;align-items:end}.builder-control-group{display:grid;gap:6px}.builder-control-group>label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)}.builder-control-group>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.builder-control-group select{min-width:0}.builder-primary-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}.btn.compact{padding-inline:14px;min-width:auto}.snapshot-stage{overflow:auto;border-radius:22px;padding:2px 0 14px}.snapshot-scale-note{display:flex;align-items:center;gap:8px;width:max-content;font-size:9px;font-weight:800;letter-spacing:.08em;color:var(--muted);margin:0 0 9px 4px;text-transform:uppercase}.snapshot-scale-note b{padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--text);background:var(--panel)}.report-builder-canvas{position:relative;width:100%;aspect-ratio:16/9;min-height:720px;overflow:hidden;border:1px solid var(--line);border-radius:22px;padding:28px 28px 40px;background-color:var(--event-bg);background-image:linear-gradient(rgba(0,0,0,.018),rgba(0,0,0,.018)),var(--event-bg-image);background-size:cover;background-position:center;box-shadow:var(--shadow);color:var(--text)}[data-theme=light].report-builder-canvas{--text:#172033;--muted:#67738a;--panel:#fff;--panel-2:#f7f9fc;--panel-3:#eef2f8;--line:#d8e0ec;--line-soft:#e8edf4}[data-theme=dark].report-builder-canvas{--text:#f4f7ff;--muted:#9ba6ba;--panel:#111a2c;--panel-2:#0e1627;--panel-3:#202b43;--line:#2a3854;--line-soft:#202c43}.builder-report-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;min-height:100px;padding-bottom:16px;border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent);margin-bottom:16px}.builder-report-header h2{font-size:27px;line-height:1.1;margin:9px 0 4px}.builder-report-header p{margin:0;color:var(--muted);font-size:12px}.builder-brand{display:flex;gap:12px;align-items:center;min-height:58px}.builder-brand img{max-width:105px;max-height:54px;object-fit:contain}.report-builder-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:stretch;padding-bottom:30px}.report-builder-block{min-width:0;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--line);border-radius:16px;padding:14px 15px 15px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.065);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.report-builder-block:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));box-shadow:0 10px 28px rgba(0,0,0,.09)}.report-builder-block.h1{height:172px}.report-builder-block.h2{height:310px}.report-builder-block.h3{height:450px}.report-builder-block>header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;min-height:26px}.report-builder-block>header>div:first-child{display:flex;align-items:center;gap:8px;min-width:0}.report-builder-block>header strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.drag-handle{cursor:grab;color:var(--muted);font-weight:900;letter-spacing:-3px;opacity:.7}.builder-actions{display:flex;gap:3px;flex:0 0 auto}.mini-btn{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:7px;padding:4px 6px;min-width:27px;height:27px;font-size:9px;font-weight:800;cursor:pointer;line-height:1}.mini-btn:hover{border-color:var(--accent)}.mini-btn.danger{color:#ef4444}.builder-block-settings{display:flex;gap:5px;flex-wrap:nowrap;overflow-x:auto;margin:0 -2px 10px;padding:0 2px 3px;scrollbar-width:thin}.builder-block-settings select{width:auto;min-width:82px;max-width:165px;padding:5px 26px 5px 8px;font-size:9px;border-radius:8px;flex:0 0 auto}.builder-block-body{height:calc(100% - 61px);overflow:auto;padding-right:2px}.builder-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:9px}.builder-kpis>div{border:1px solid var(--line-soft);background:var(--panel-2);border-radius:11px;padding:10px 11px;min-width:0}.builder-kpis span,.builder-kpis small{display:block;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-kpis strong{display:block;font-size:23px;line-height:1.05;margin:4px 0}.builder-svg{width:100%;height:100%;min-height:185px}.builder-hbars{display:grid;gap:8px}.builder-hbars>div{display:grid;grid-template-columns:minmax(78px,145px) 1fr auto;gap:8px;align-items:center;font-size:10px}.builder-hbars .chart-track{height:10px}.builder-hbars .chart-track i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:999px}.donut-wrap{display:grid;grid-template-columns:minmax(160px,1fr) minmax(135px,.75fr);align-items:center;height:100%;gap:10px}.donut-wrap svg{width:100%;height:100%}.chart-legend{display:grid;gap:7px}.chart-legend span{display:flex;justify-content:space-between;gap:10px;font-size:10px}.ranking-list{display:grid;gap:5px}.ranking-list>div{display:grid;grid-template-columns:24px 30px 1fr auto;gap:8px;align-items:center;border-bottom:1px solid var(--line-soft);padding:5px 0}.ranking-list img{width:28px;height:28px;border-radius:7px;object-fit:cover;background:var(--panel-3)}.ranking-list span{font-size:10px;font-weight:700}.ranking-list strong{font-size:11px}.builder-table-wrap .report-category-card{border:0;box-shadow:none;padding:0;background:transparent}.builder-table-wrap .report-category-title{display:none}.builder-table-wrap table{font-size:9px}.builder-table-wrap th,.builder-table-wrap td{padding:6px 7px}.builder-table-wrap .item-head img{width:24px;height:24px}.builder-footer{position:absolute;left:28px;right:28px;bottom:13px;color:var(--muted);font-size:8px;display:flex;justify-content:space-between}.builder-empty{grid-column:1/-1;min-height:240px;display:grid;place-items:center}.report-builder-block.dragging{opacity:.45;outline:2px dashed var(--accent)}
@media(max-width:1100px){.report-builder-toolbar{grid-template-columns:1fr}.builder-toolbar-panel{grid-template-columns:1fr 1fr}.builder-primary-actions{grid-column:1/-1;justify-content:flex-start}.report-builder-canvas{min-width:1180px;min-height:664px}.report-builder-block.h1{height:160px}.report-builder-block.h2{height:280px}.report-builder-block.h3{height:410px}}

/* v0.10.3 report builder sizing hotfix */
.report-canvas,
.snapshot-canvas,
#reportCanvas,
#snapshotCanvas {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.report-grid,
.report-builder-grid,
.report-blocks,
#reportBlocks {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  align-items: start;
}
.report-block,
.builder-block,
.report-widget,
[data-report-block] {
  min-height: 220px;
  height: var(--block-height, auto);
  max-height: none !important;
  overflow: visible !important;
}
.report-block .block-body,
.builder-block .block-body,
.report-widget .block-body,
[data-report-block] .block-body {
  height: calc(var(--block-height, auto) - 92px);
  min-height: 120px;
  max-height: none !important;
  overflow: visible !important;
}
.report-block canvas,
.report-block svg,
.builder-block canvas,
.builder-block svg,
.report-widget canvas,
.report-widget svg {
  max-height: none !important;
}

/* v0.10.4 — true auto-height report canvas + real block height resizing */
.snapshot-stage{
  overflow-x:auto !important;
  overflow-y:visible !important;
}
.report-builder-canvas{
  width:100% !important;
  aspect-ratio:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding-bottom:28px !important;
}
.report-builder-grid{
  display:grid !important;
  grid-template-columns:repeat(12,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:start !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding-bottom:0 !important;
}
.report-builder-block{
  min-height:180px !important;
  max-height:none !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}
.report-builder-block>header{
  flex:0 0 auto !important;
}
.builder-block-settings{
  flex:0 0 auto !important;
}
.builder-block-body{
  flex:1 1 auto !important;
  min-height:0 !important;
  height:auto !important;
  max-height:none !important;
  overflow:hidden !important;
  padding-right:0 !important;
}
.builder-svg{
  width:100% !important;
  height:100% !important;
  min-height:120px !important;
}
.builder-table-wrap{
  height:100% !important;
  overflow:hidden !important;
}
.builder-table-wrap .report-category-card{
  height:100% !important;
  overflow:hidden !important;
}
.builder-footer{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  margin-top:18px !important;
  padding-top:12px !important;
  border-top:1px solid var(--line-soft) !important;
}
@media(max-width:1100px){
  .report-builder-canvas{
    min-width:1180px !important;
    min-height:0 !important;
  }
}
/* v0.11.0 report builder hardening */
.report-builder-block{position:relative}
.report-builder-block.is-hidden{opacity:.5;border-style:dashed}
.report-builder-block.is-hidden .builder-block-body{filter:grayscale(1);opacity:.45}
.hidden-badge{font-size:8px;font-weight:900;letter-spacing:.08em;padding:3px 6px;border-radius:999px;background:var(--panel-3);color:var(--muted)}
.block-resize-handle{position:absolute;left:18px;right:18px;bottom:2px;height:12px;cursor:ns-resize;border-radius:999px}
.block-resize-handle:after{content:"";position:absolute;left:50%;top:5px;width:54px;height:3px;transform:translateX(-50%);border-radius:999px;background:color-mix(in srgb,var(--muted) 45%,transparent)}
.report-builder-block:hover .block-resize-handle:after{background:var(--accent)}
.resizing-report-block{user-select:none;cursor:ns-resize!important}
.resizing-report-block *{cursor:ns-resize!important}
.stacked-chart-wrap{height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px}
.stacked-legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:9px;color:var(--muted)}
.stacked-legend span{display:inline-flex;align-items:center;gap:5px}.stacked-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}
/* v0.11.0 admin event management */
.event-tools{display:grid;gap:7px;margin:8px 0 10px}.event-tools input,.event-tools select{font-size:11px;padding:9px 10px}.event-tool-row{display:grid;grid-template-columns:1fr 1fr;gap:6px}.sidebar-event.archived{opacity:.58}.status-dot.archived{background:#94a3b8}.admin-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-summary-card{padding:15px 17px}.admin-summary-card span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.admin-summary-card strong{display:block;font-size:28px;margin-top:5px}@media(max-width:1000px){.admin-summary-strip{grid-template-columns:repeat(2,1fr)}}

/* v0.11.2 — PIC Full Report toolbar polish */
.pic-top-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.full-report-builder-toolbar{
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(640px,2fr);
  gap:24px;
  align-items:end;
}
.full-report-builder-controls{
  display:grid;
  grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;
  gap:14px 18px;
  align-items:end;
}
.builder-primary-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  align-items:center;
  grid-column:1 / -1;
  padding-top:4px;
  flex-wrap:wrap;
}
@media(max-width:1200px){
  .full-report-builder-toolbar{grid-template-columns:1fr}
  .full-report-builder-controls{grid-template-columns:1fr 1fr}
  .builder-primary-actions{justify-content:flex-start}
}
@media(max-width:760px){
  .full-report-builder-controls{grid-template-columns:1fr}
}

/* v0.13.0 — UI Polish Baseline */
:root{
  --page-max:1440px;
  --section-gap:28px;
  --card-pad:24px;
}
.app-shell,.page-shell,.admin-shell,.pic-shell,.reporter-shell{
  max-width:var(--page-max);
  margin:0 auto;
}
.section-head p,.section-subtitle,.helper-copy,.muted-copy{
  display:none !important;
}
.section-head{
  margin-bottom:18px !important;
}
.section-head h2,.section-head h1{
  margin-bottom:0 !important;
}
.card,.panel,.section-card{
  border-radius:20px !important;
}
.admin-tabs,.pic-tabs{
  gap:8px !important;
}
.admin-tabs button,.pic-tabs button{
  min-height:46px;
  padding:0 18px;
}
.event-details-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:18px 24px !important;
}
.event-details-grid .field{
  margin-bottom:0 !important;
}
.event-details-card{
  display:block !important;
}
.event-summary-empty,.glance-empty{
  display:none !important;
}
.team-card{
  display:grid !important;
  grid-template-columns:auto minmax(180px,1fr) minmax(260px,420px) auto !important;
  gap:18px !important;
  align-items:center !important;
}
.team-card .team-actions-inline{
  display:none !important;
}
.team-action-menu{
  position:relative;
}
.team-action-menu details{
  position:relative;
}
.team-action-menu summary{
  list-style:none;
  cursor:pointer;
}
.team-action-menu summary::-webkit-details-marker{display:none}
.team-action-menu-popover{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  min-width:190px;
  z-index:30;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 14px 40px rgba(15,23,42,.16);
  padding:8px;
}
.team-action-menu-popover button{
  width:100%;
  justify-content:flex-start;
  margin:0 0 6px;
}
.team-action-menu-popover button:last-child{margin-bottom:0}
.team-action-menu-popover .danger{
  color:#fff;
  background:#c9251c;
}
.metric-category-card,.category-card{
  overflow:hidden !important;
}
.price-toggle-row{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:56px !important;
}
.price-toggle-row input[type="checkbox"]{
  width:22px !important;
  height:22px !important;
  flex:0 0 auto !important;
}
.report-table-wrap,.table-scroll{
  width:100% !important;
  overflow-x:auto !important;
  overflow-y:visible !important;
  border-radius:16px;
}
.report-table{
  min-width:900px;
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.report-table th{
  position:sticky;
  top:0;
  z-index:2;
}
.report-table th,.report-table td{
  vertical-align:middle !important;
  padding:14px 16px !important;
}
.report-table img{
  max-width:54px !important;
  max-height:54px !important;
  object-fit:contain;
}
.team-status-filters{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.team-status-filters button:empty{display:none !important}
.team-status-summary{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) !important;
  gap:12px !important;
}
.team-status-summary .summary-card{
  min-height:92px;
}
.pic-overview-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:16px;
}
.pic-member-breakdown{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:10px;
}
.reporter-greeting{
  margin-bottom:8px !important;
}
.reporter-greeting h1{
  font-size:clamp(28px,5vw,42px) !important;
  line-height:1.1 !important;
}
.reporter-date-help{display:none !important}
.metric-mobile-card .metric-meta{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:2px !important;
}
.metric-mobile-card .metric-meta .unit,
.metric-mobile-card .metric-meta .price{
  display:block !important;
}
.submit-note{
  text-align:center;
  max-width:560px;
  margin:14px auto 0;
}
.app-footer{
  margin-top:36px;
  padding:24px 16px 32px;
  text-align:center;
  color:var(--muted);
  font-size:14px;
}
.app-footer .heart{font-size:16px;vertical-align:-1px}
@media(max-width:980px){
  .team-card{
    grid-template-columns:auto 1fr auto !important;
  }
  .team-card .team-link-cell{
    grid-column:2 / -1;
  }
}
@media(max-width:720px){
  .event-details-grid{grid-template-columns:1fr !important}
  .team-card{
    grid-template-columns:auto 1fr !important;
  }
  .team-action-menu{grid-column:1/-1;justify-self:stretch}
  .team-action-menu summary{width:100%}
}

/* v0.13.1 — targeted UI fix pass */

/* Admin shell: fixed sidebar, scroll only content */
.admin-layout{
  min-height:100vh !important;
  display:grid !important;
  grid-template-columns:332px minmax(0,1fr) !important;
  align-items:start !important;
}
.admin-sidebar{
  position:sticky !important;
  top:0 !important;
  height:100vh !important;
  overflow-y:auto !important;
  align-self:start !important;
  z-index:20 !important;
}
.admin-main{
  min-width:0 !important;
  overflow-x:hidden !important;
}

/* Event details + glance */
.event-overview-grid,
.overview-two-col{
  display:grid !important;
  grid-template-columns:minmax(0,1.65fr) minmax(320px,.9fr) !important;
  gap:20px !important;
  align-items:start !important;
}
.event-details-card,
.glance-card{
  height:auto !important;
  min-height:0 !important;
}
.event-details-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 22px !important;
}
.event-details-grid .field{
  min-width:0 !important;
}
.event-details-grid input,
.event-details-grid select{
  width:100% !important;
  min-width:0 !important;
}
.glance-card{
  overflow:hidden !important;
}
.glance-card *{
  overflow-wrap:anywhere;
}

/* Metric cards */
.metric-card,
.metric-item-card{
  overflow:hidden !important;
}
.metric-card-main,
.metric-card-head{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:16px !important;
  align-items:start !important;
}
.metric-card-title{
  min-width:0 !important;
}
.metric-card-title h3,
.metric-card-title strong{
  overflow-wrap:anywhere !important;
  line-height:1.18 !important;
}
.metric-actions-compact{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
}
.metric-action-menu{
  position:relative;
}
.metric-action-menu details{
  position:relative;
}
.metric-action-menu summary{
  list-style:none;
  cursor:pointer;
  min-width:94px;
  text-align:center;
}
.metric-action-menu summary::-webkit-details-marker{display:none}
.metric-action-menu-popover{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  z-index:40;
  min-width:170px;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:14px;
  padding:8px;
  box-shadow:0 16px 38px rgba(15,23,42,.18);
}
.metric-action-menu-popover button{
  width:100%;
  margin:0 0 6px;
  justify-content:flex-start;
}
.metric-action-menu-popover button:last-child{margin-bottom:0}
.metric-price{
  font-weight:800 !important;
  color:var(--primary) !important;
}
[data-theme="dark"] .metric-price{
  color:var(--accent) !important;
}
.price-chip{
  font-weight:800 !important;
  color:#0f7a3a !important;
  background:#e8f8ee !important;
  border-color:#ccefd8 !important;
}
.no-price-chip{
  font-weight:700 !important;
}

/* Pricing checkbox row */
.price-toggle-row,
.category-price-toggle{
  overflow:hidden !important;
  width:100% !important;
}
.price-toggle-row label,
.category-price-toggle label{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  white-space:normal !important;
}

/* Report/Performance tables */
.report-category-card,
.performance-card{
  overflow:hidden !important;
}
.report-table-wrap,
.performance-table-wrap,
.table-scroll{
  overflow-x:auto !important;
  overflow-y:visible !important;
  width:100% !important;
  max-width:100% !important;
}
.report-table,
.performance-table{
  min-width:max-content !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
}
.report-table th,
.report-table td,
.performance-table th,
.performance-table td{
  padding:12px 14px !important;
  white-space:nowrap !important;
}
.report-table th:first-child,
.report-table td:first-child,
.performance-table th:first-child,
.performance-table td:first-child{
  position:sticky !important;
  left:0 !important;
  z-index:3 !important;
  background:var(--panel) !important;
}
.report-table thead th:first-child,
.performance-table thead th:first-child{
  z-index:5 !important;
}
.report-table .item-head,
.performance-table .item-head{
  width:150px !important;
  min-width:150px !important;
  max-width:150px !important;
  white-space:normal !important;
  text-align:center !important;
}
.report-table .item-head img,
.performance-table .item-head img{
  width:44px !important;
  height:44px !important;
  object-fit:contain !important;
  margin:0 auto 6px !important;
}
.report-table .team-cell,
.performance-table .team-cell{
  min-width:150px !important;
}
.report-table .team-cell strong,
.performance-table .team-cell strong{
  display:block;
  line-height:1.15;
}
.report-table .team-cell small,
.performance-table .team-cell small{
  display:block;
  margin-top:4px;
  color:var(--muted);
}

/* PIC status filters: remove empty ghost control */
.team-status-filters button:empty,
.team-status-filters .chip:empty,
.team-status-filters .filter-chip:empty{
  display:none !important;
}

/* PIC totals */
.category-summary-strip{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr)) !important;
  gap:12px !important;
}
.category-summary-strip .summary-card strong{
  font-size:22px !important;
}
.category-summary-strip .summary-card .revenue{
  margin-top:4px !important;
  font-weight:800 !important;
  color:var(--primary) !important;
}

/* SPG fixed footer */
.reporter-shell,
body.reporter-page{
  padding-bottom:64px !important;
}
.reporter-page .app-footer,
body.reporter-page .app-footer{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  z-index:60 !important;
  margin:0 !important;
  padding:12px 16px !important;
  background:color-mix(in srgb, var(--bg) 94%, transparent) !important;
  backdrop-filter:blur(12px);
  border-top:1px solid var(--line) !important;
}

/* Responsive */
@media(max-width:1100px){
  .admin-layout{grid-template-columns:280px minmax(0,1fr) !important}
  .event-overview-grid,.overview-two-col{grid-template-columns:1fr !important}
}
@media(max-width:860px){
  .admin-layout{display:block !important}
  .admin-sidebar{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
  }
}

/* v0.13.2 — component-level UI rewrite */

/* lock admin viewport correctly */
.admin-body{
  margin:0;
  overflow:hidden !important;
  height:100vh;
}
.admin-shell{
  display:grid !important;
  grid-template-columns:285px minmax(0,1fr) !important;
  width:100vw;
  height:100vh !important;
  min-height:100vh !important;
  max-width:none !important;
  margin:0 !important;
  overflow:hidden !important;
}
.admin-sidebar{
  position:relative !important;
  top:auto !important;
  height:100vh !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  align-self:stretch !important;
}
.admin-main{
  height:100vh !important;
  max-height:100vh !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  max-width:none !important;
  margin:0 !important;
  padding-bottom:0 !important;
}
.admin-main-content{
  max-width:1540px;
  margin:0 auto;
  padding-bottom:24px;
}
.admin-main-footer{
  margin-top:24px !important;
  padding-bottom:26px !important;
}
.admin-body > .app-footer{
  display:none !important;
}

/* real overview layout */
.overview-layout{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.78fr);
  gap:20px;
  align-items:start;
}
.event-details-form{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 22px;
}
.event-details-form > label{
  min-width:0;
}
.event-details-form input{
  width:100%;
  min-width:0;
}
.event-form-actions{
  grid-column:1/-1;
  display:flex;
  justify-content:flex-end;
  margin-top:4px;
}
.glance-card{
  padding:20px !important;
  display:grid;
  gap:14px;
}
.glance-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.glance-access{
  min-height:118px;
}
.glance-access small{
  display:block;
  margin-top:8px;
  line-height:1.45;
  color:var(--muted);
  overflow-wrap:anywhere;
}

/* metric cards / real action menu */
.metric-admin-card{
  grid-template-columns:64px minmax(0,1fr) auto !important;
  align-items:start !important;
}
.metric-admin-card > img{
  width:64px !important;
  height:64px !important;
}
.metric-card-copy{
  min-width:0;
}
.metric-card-copy strong{
  display:block;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.metric-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}
.metric-price{
  font-weight:900 !important;
  color:#0a8a49 !important;
  background:#e7f8ef !important;
}
[data-theme="dark"] .metric-price{
  color:#7bf0b3 !important;
  background:rgba(34,197,94,.14) !important;
}
.metric-card-actions{
  display:flex;
  align-items:flex-start;
  gap:8px;
}
.metric-order-actions{
  display:flex;
  gap:6px;
}
.metric-action-menu{
  position:relative;
}
.metric-action-menu > summary{
  list-style:none;
  cursor:pointer;
}
.metric-action-menu > summary::-webkit-details-marker{display:none}
.metric-action-menu-popover{
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  z-index:80;
  min-width:160px;
  padding:8px;
  display:grid;
  gap:6px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel);
  box-shadow:0 18px 40px rgba(15,23,42,.22);
}
.metric-action-menu-popover button{
  width:100%;
  margin:0 !important;
}
.metric-upload{
  grid-column:1/-1 !important;
}

/* proper pricing checkbox */
.price-check-row{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
}
.price-check-row input{
  flex:0 0 20px;
}
.price-check-row span{
  min-width:0;
  overflow-wrap:anywhere;
}

/* PIC summary cards */
.category-kpi-main{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:10px;
}
.category-kpi-main > div{
  min-width:0;
}
.category-kpi-main small{
  display:block;
  color:var(--muted);
  margin-bottom:4px;
}
.category-kpi-main strong{
  display:block;
  font-size:20px;
  overflow-wrap:anywhere;
}
.filter-chip.active{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* report tables: prevent bleed-through */
.report-category-card{
  isolation:isolate;
}
.table-scroll{
  position:relative;
  max-width:100%;
  overflow-x:auto !important;
  overflow-y:hidden !important;
}
.category-report-table{
  width:max-content !important;
  min-width:100% !important;
}
.category-report-table th,
.category-report-table td{
  background:var(--surface) !important;
}
.category-report-table thead th{
  background:var(--surface-2) !important;
  z-index:2;
}
.category-report-table .team-col,
.category-report-table .team-cell{
  position:sticky !important;
  left:0 !important;
  min-width:160px;
  z-index:5 !important;
  box-shadow:1px 0 0 var(--line);
}
.category-report-table thead .team-col{
  z-index:7 !important;
}
.category-report-table .item-column{
  min-width:150px;
  max-width:150px;
  white-space:normal !important;
}
.category-report-table .item-head{
  width:140px;
  min-width:140px;
  max-width:140px;
  margin:auto;
}
.category-report-table .item-head span{
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
}
.category-report-table td{
  min-width:92px;
}

/* reporter fixed footer */
body.reporter-page{
  min-height:100vh;
  padding-bottom:58px !important;
}
body.reporter-page > .app-footer{
  position:fixed !important;
  left:0;
  right:0;
  bottom:0;
  z-index:100;
  margin:0 !important;
  padding:11px 16px !important;
  border-top:1px solid var(--line);
  background:var(--bg);
  text-align:center;
}

@media(max-width:1080px){
  .admin-shell{
    grid-template-columns:235px minmax(0,1fr) !important;
  }
  .overview-layout{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .admin-body{
    overflow:auto !important;
    height:auto;
  }
  .admin-shell{
    display:block !important;
    width:auto;
    height:auto !important;
    overflow:visible !important;
  }
  .admin-sidebar{
    height:auto !important;
  }
  .admin-main{
    height:auto !important;
    max-height:none !important;
    overflow:visible !important;
  }
  .event-details-form{
    grid-template-columns:1fr;
  }
  .glance-kpis{
    grid-template-columns:1fr 1fr 1fr;
  }
  .metric-admin-card{
    grid-template-columns:58px minmax(0,1fr) !important;
  }
  .metric-card-actions{
    grid-column:1/-1;
    justify-content:flex-end;
  }
}

/* v0.13.3 — QA-locked UI corrections */

/* Admin sidebar is truly viewport-fixed; only content scrolls */
@media(min-width:761px){
  .admin-body{height:100dvh!important;overflow:hidden!important}
  .admin-shell{display:block!important;width:100%!important;height:100dvh!important;min-height:0!important;overflow:hidden!important;max-width:none!important;margin:0!important}
  .admin-sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:285px!important;height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;z-index:100!important}
  .admin-main{margin-left:285px!important;width:calc(100% - 285px)!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important;padding:28px clamp(24px,3vw,46px) 30px!important;max-width:none!important}
  .admin-main-content{max-width:1540px;margin:0 auto}
}

/* Overview: no phantom cell / balanced dates */
.overview-layout{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(330px,.78fr)!important;gap:22px!important;align-items:start!important}
.event-details-form{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 22px!important;padding:22px!important}
.event-details-form>label{min-width:0!important}
.event-details-form input{min-width:0!important;width:100%!important}
.event-form-actions{grid-column:1/-1!important;justify-content:flex-end!important;margin-top:4px!important}
.glance-card{padding:20px!important;height:auto!important;min-height:0!important}

/* Action popovers — visible, functional, not clipped */
.team-manage-row,.metric-admin-card{overflow:visible!important;position:relative!important}
.team-actions-menu,.metric-action-menu{position:relative!important;z-index:5!important}
.team-actions-menu[open],.metric-action-menu[open]{z-index:200!important}
.team-actions-menu>summary,.metric-action-menu>summary{list-style:none!important;cursor:pointer!important}
.team-actions-menu>summary::-webkit-details-marker,.metric-action-menu>summary::-webkit-details-marker{display:none!important}
.team-actions-popover,.metric-action-menu-popover{position:absolute!important;right:0!important;top:calc(100% + 8px)!important;z-index:300!important;min-width:190px!important;padding:8px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:var(--panel)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important;display:grid!important;gap:7px!important}
.team-actions-popover .btn,.metric-action-menu-popover .btn{width:100%!important;margin:0!important;justify-content:flex-start!important}
.action-select-label{display:grid!important;gap:5px!important;padding:6px 2px!important;font-size:10px!important;color:var(--muted)!important}
.action-select-label select{font-size:11px!important;padding:8px!important}

/* Metric card hierarchy */
.metric-admin-card{grid-template-columns:76px minmax(0,1fr) auto!important;gap:16px!important;align-items:start!important;padding:18px!important}
.metric-admin-card>img{width:76px!important;height:76px!important;border-radius:16px!important}
.metric-card-copy strong{font-size:17px!important;line-height:1.23!important}
.metric-meta{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:9px!important;align-items:center!important}
.metric-unit{font-size:12px!important;color:var(--muted)!important}
.metric-price,.metric-price-text,.pic-item-price,.item-price{font-weight:900!important;color:#148449!important}
[data-theme="dark"] .metric-price,[data-theme="dark"] .metric-price-text,[data-theme="dark"] .pic-item-price,[data-theme="dark"] .item-price{color:#6ee7a5!important}
.metric-price{display:inline-flex!important;padding:4px 9px!important;border-radius:999px!important;background:#e9f8ef!important}
[data-theme="dark"] .metric-price{background:rgba(34,197,94,.14)!important}
.metric-card-actions{display:flex!important;gap:8px!important;align-items:flex-start!important}
.metric-upload{grid-column:1/-1!important}

/* Pricing checkbox never bleeds */
.price-check-row,.price-capability-box .check-row{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:14px 16px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:var(--panel-3)!important;overflow:hidden!important}
.price-check-row input,.price-capability-box .check-row input{width:22px!important;height:22px!important;flex:0 0 22px!important;margin:0!important}
.price-check-row span,.price-capability-box .check-row{overflow-wrap:anywhere!important;white-space:normal!important}

/* PIC Manage: show full item inventory */
.pic-performance-list{display:grid;gap:14px;margin-top:10px}
.pic-performance-category{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--panel-2)}
.pic-performance-category-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.pic-performance-category-head strong{display:block;font-size:15px}.pic-performance-category-head small{display:block;margin-top:3px;color:var(--muted)}
.pic-performance-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.pic-performance-item{display:grid;grid-template-columns:52px minmax(0,1fr);gap:11px;align-items:start;padding:13px 15px;border-bottom:1px solid var(--line-soft)}
.pic-performance-item:nth-child(odd){border-right:1px solid var(--line-soft)}
.pic-performance-item img{width:52px;height:52px;border-radius:11px;object-fit:cover;background:var(--panel-3);border:1px solid var(--line)}
.pic-performance-item strong{display:block;font-size:13px;line-height:1.25;overflow-wrap:anywhere}.pic-performance-item small{display:block;margin-top:3px;color:var(--muted)}

/* PIC filters always readable */
.status-filters{display:flex!important;gap:8px!important;flex-wrap:wrap!important}
.filter-chip{display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--muted)!important;-webkit-text-fill-color:currentColor!important;background:var(--panel)!important}
.filter-chip b{font-size:11px!important;color:inherit!important}
.filter-chip.active{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
[data-theme="light"] .filter-chip.active{background:var(--primary)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}

/* Total Qty / Revenue spacing */
.category-kpi-strip{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:14px!important}
.category-kpi{padding:18px!important}.category-kpi-title{font-size:14px;font-weight:800;margin-bottom:13px}
.category-kpi-main{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin:0!important}
.category-kpi-main>div{padding:12px 13px!important;border:1px solid var(--line-soft)!important;border-radius:12px!important;background:var(--panel-3)!important;min-width:0!important}
.category-kpi-main span{display:block!important;color:var(--muted)!important;font-size:10px!important;text-transform:uppercase!important;font-weight:800!important;letter-spacing:.04em!important;margin-bottom:5px!important}
.category-kpi-main strong{display:block!important;font-size:20px!important;line-height:1.15!important;overflow-wrap:anywhere!important}

/* Report tables: solid sticky cells; no content can show through */
.report-category-card{overflow:hidden!important;isolation:isolate!important;background:var(--panel)!important}
.report-category-title{background:var(--panel)!important}
.report-table-scroll,.table-scroll{position:relative!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;background:var(--panel)!important;isolation:isolate!important}
.category-report-table{border-collapse:separate!important;border-spacing:0!important;width:max-content!important;min-width:100%!important;background:var(--panel)!important}
.category-report-table th,.category-report-table td{padding:13px 14px!important;border-right:1px solid var(--line-soft)!important;border-bottom:1px solid var(--line)!important;text-align:center!important;vertical-align:middle!important;background:var(--panel)!important;white-space:nowrap!important}
.category-report-table thead th{background:var(--panel-3)!important;color:var(--muted)!important;font-weight:800!important;position:relative!important;z-index:2!important}
.category-report-table .team-col,.category-report-table .team-cell{position:sticky!important;left:0!important;width:180px!important;min-width:180px!important;max-width:180px!important;text-align:left!important;background:var(--panel)!important;z-index:20!important;box-shadow:5px 0 8px -8px rgba(0,0,0,.55)!important}
.category-report-table thead .team-col{background:var(--panel-3)!important;z-index:30!important}
.category-report-table .team-cell strong{display:block!important}.category-report-table .team-cell small{display:block!important;margin-top:4px!important;color:var(--muted)!important}
.category-report-table .item-column{width:160px!important;min-width:160px!important;max-width:160px!important;white-space:normal!important}
.category-report-table .item-head{width:132px!important;min-width:132px!important;max-width:132px!important;margin:auto!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:5px!important}
.category-report-table .item-head img{width:46px!important;height:46px!important;object-fit:cover!important;border-radius:10px!important}
.category-report-table .item-head span{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.2!important;text-align:center!important}
.category-report-table .summary-col,.category-report-table .summary-cell{min-width:115px!important;background:var(--panel-2)!important;font-weight:800!important}
.category-report-table .revenue-col{min-width:150px!important}
.category-report-table .total-row td{background:var(--panel-3)!important;font-weight:900!important}
.category-report-table .total-row .team-cell{background:var(--panel-3)!important}
[data-theme="light"] .category-report-table th,[data-theme="light"] .category-report-table td,[data-theme="light"] .category-report-table .team-cell{background:#fff!important}
[data-theme="light"] .category-report-table thead th,[data-theme="light"] .category-report-table thead .team-col,[data-theme="light"] .category-report-table .total-row td,[data-theme="light"] .category-report-table .total-row .team-cell{background:#f2f5fa!important}
[data-theme="light"] .category-report-table .summary-col,[data-theme="light"] .category-report-table .summary-cell{background:#f8fafc!important}

/* SPG exact requested layout */
.mobile-report-copy h1{max-width:520px!important}
.mobile-datebox{margin-bottom:16px!important}.mobile-datebox .mobile-hint{display:none!important}
.mobile-item-info{min-width:0!important}.mobile-item-meta{display:grid!important;gap:5px!important;margin-top:7px!important}
.mobile-item-meta span{display:grid!important;grid-template-columns:70px minmax(0,1fr)!important;gap:8px!important;font-size:12px!important;color:var(--muted)!important}
.mobile-item-meta b{color:var(--text)!important;font-weight:700!important}
.mobile-submit-wrap small{display:block!important;line-height:1.45!important;margin-top:12px!important}
body.reporter-page{padding-bottom:64px!important}
body.reporter-page>.app-footer{position:fixed!important;left:0!important;right:0!important;bottom:0!important;z-index:500!important;margin:0!important;padding:11px 16px!important;background:var(--bg)!important;border-top:1px solid var(--line)!important;box-shadow:0 -8px 24px rgba(0,0,0,.08)!important}

@media(max-width:1080px){.overview-layout{grid-template-columns:1fr!important}.pic-performance-items{grid-template-columns:1fr!important}.pic-performance-item:nth-child(odd){border-right:0!important}}
@media(max-width:760px){
  .admin-body{height:auto!important;overflow:auto!important}.admin-shell{height:auto!important;overflow:visible!important}.admin-sidebar{position:relative!important;width:100%!important;height:auto!important;bottom:auto!important}.admin-main{margin-left:0!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important}
  .event-details-form{grid-template-columns:1fr!important}.metric-admin-card{grid-template-columns:60px minmax(0,1fr)!important}.metric-card-actions{grid-column:1/-1!important;justify-content:flex-end!important}
  .category-kpi-main{grid-template-columns:1fr 1fr!important}.mobile-item-meta span{grid-template-columns:62px minmax(0,1fr)!important}
}


/* v0.13.4 — final pre-live item management polish */
.modal-backdrop,.pic-modal-backdrop{z-index:1000!important}
.modal{position:relative;z-index:1001!important}
.metric-action-menu[open],.team-actions-menu[open],.pic-metric-action-menu[open]{z-index:210!important}
.metric-page-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;flex-wrap:wrap!important}
.item-limit-control{display:inline-flex!important;align-items:center!important;gap:8px!important;font-size:12px!important;font-weight:700!important;color:var(--muted)!important;white-space:nowrap!important}
.item-limit-control select{width:auto!important;min-width:82px!important;padding:8px 30px 8px 10px!important;border-radius:10px!important;font-size:12px!important}
.item-pager{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 4px 2px;color:var(--muted);font-size:12px;font-weight:700}
.item-pager .btn{min-height:34px!important;padding:7px 11px!important}
.performance-list-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important}
.performance-list-head>div{display:grid;gap:2px}.performance-list-head>div>span{color:var(--muted);font-size:12px}
.pic-performance-item{grid-template-columns:52px minmax(0,1fr) auto!important;position:relative!important;overflow:visible!important}
.pic-performance-copy{min-width:0!important}
.pic-performance-actions{display:flex;align-items:flex-start;gap:6px;position:relative;z-index:3}
.pic-metric-action-menu{position:relative!important}
.pic-metric-action-menu>summary{list-style:none!important;cursor:pointer!important}.pic-metric-action-menu>summary::-webkit-details-marker{display:none!important}
.pic-metric-action-popover{position:absolute!important;right:0!important;top:calc(100% + 7px)!important;z-index:220!important;min-width:150px!important;padding:7px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:var(--panel)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important;display:grid!important;gap:6px!important}
.pic-metric-action-popover .btn{width:100%!important;margin:0!important;justify-content:flex-start!important}
.pic-performance-category{overflow:visible!important}
.mobile-item-limit{margin:12px 0 4px;padding:0 2px}
.mobile-item-pager{justify-content:center!important;padding:14px 0 4px!important}
#picEditMetricForm .form-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important}
@media(max-width:720px){
 .item-limit-control{width:100%;justify-content:flex-end}
 .pic-performance-item{grid-template-columns:46px minmax(0,1fr)!important}
 .pic-performance-actions{grid-column:1/-1;justify-content:flex-end}
 .pic-performance-item img{width:46px!important;height:46px!important}
 .metric-page-head .item-limit-control{width:auto}
}

/* v0.13.5 — metric card squeeze hotfix
   Actions never consume the title column. Keep content row separate from controls. */
.metric-admin{
  grid-template-columns:repeat(auto-fit,minmax(360px,1fr))!important;
}
.metric-admin-card{
  grid-template-columns:76px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  min-width:0!important;
  align-items:start!important;
}
.metric-card-copy{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  padding-right:0!important;
}
.metric-card-copy strong{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  white-space:normal!important;
}
.metric-card-actions{
  position:relative!important;
  right:auto!important;
  top:auto!important;
  grid-column:1/-1!important;
  grid-row:2!important;
  width:100%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:2px!important;
  min-width:0!important;
}
.metric-order-actions{
  display:flex!important;
  gap:6px!important;
  flex:0 0 auto!important;
}
.metric-action-menu{
  flex:0 0 auto!important;
}
.metric-action-menu>summary{
  min-width:94px!important;
}
.metric-upload{
  grid-column:1/-1!important;
  grid-row:3!important;
  min-width:0!important;
}

/* PIC item list uses the same safe layout: controls get their own row. */
.pic-performance-item{
  grid-template-columns:52px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  min-width:0!important;
}
.pic-performance-copy{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
}
.pic-performance-copy strong{
  word-break:normal!important;
  overflow-wrap:break-word!important;
  white-space:normal!important;
}
.pic-performance-actions{
  grid-column:1/-1!important;
  grid-row:2!important;
  width:100%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:6px!important;
  margin-top:4px!important;
  min-width:0!important;
}

@media(max-width:900px){
  .metric-admin{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  .metric-admin-card{grid-template-columns:60px minmax(0,1fr)!important;padding:14px!important;gap:12px!important}
  .metric-admin-card>img{width:60px!important;height:60px!important}
  .metric-card-actions{justify-content:space-between!important}
  .pic-performance-actions{justify-content:space-between!important}
}

/* =========================================================
   v1.0.3 UI RECOVERY / PRE-LIVE QUICK FIX
   Keeps the complete production stylesheet above intact.
   ========================================================= */

/* Action dropdown: keep each menu anchored to its own card */
.team-card,
.person-card,
.member-card,
.metric-admin-card,
.metric-card {
  position: relative;
}

.team-card details,
.person-card details,
.member-card details,
.metric-admin-card details,
.metric-card details,
.metric-action-menu {
  position: relative;
}

.team-card details[open],
.person-card details[open],
.member-card details[open],
.metric-admin-card details[open],
.metric-card details[open],
.metric-action-menu[open] {
  z-index: 70;
}

.team-card details > .action-menu,
.person-card details > .action-menu,
.member-card details > .action-menu,
.metric-admin-card details > .action-menu,
.metric-card details > .action-menu,
.metric-action-menu > .action-menu,
.action-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  left: auto;
  z-index: 80;
}

/* Achievement category totals: proper padding + label/value spacing */
.achievement-category,
.achievement-category-card,
.category-performance,
.category-report-card {
  padding: 22px 24px;
}

.achievement-category .summary,
.achievement-category .totals,
.category-performance .summary,
.category-report-card .summary,
.category-total-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 28px;
  flex-wrap: wrap;
}

.achievement-category .summary > *,
.achievement-category .totals > *,
.category-performance .summary > *,
.category-report-card .summary > *,
.category-total-row > * {
  display: inline-flex;
  align-items: baseline;
  gap: 10px;
}

/* Fallback: avoid label and large number visually touching */
.total-qty strong,
.total-revenue strong,
.summary-value strong {
  margin-left: 8px;
}

/* Mobile/tablet action menus stay inside viewport */
@media (max-width: 760px) {
  .team-card details > .action-menu,
  .person-card details > .action-menu,
  .member-card details > .action-menu,
  .metric-admin-card details > .action-menu,
  .metric-card details > .action-menu,
  .metric-action-menu > .action-menu,
  .action-popover {
    max-width: min(320px, calc(100vw - 32px));
  }
}



/* FINAL_UI_LOCK_2026_10_TEAM_ACTION_INLINE */

/* Admin > Team
   Action menu is part of the row flow.
   Opening it increases row height instead of covering the rows below. */
.team-manage-row{
  align-items:start !important;
}

.team-actions-menu{
  position:relative !important;
  z-index:auto !important;
  align-self:start !important;
  min-width:150px !important;
}

.team-actions-menu[open]{
  z-index:auto !important;
}

.team-actions-menu > summary{
  width:100% !important;
}

.team-actions-popover{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  margin-top:8px !important;
  width:100% !important;
  min-width:220px !important;
  max-width:320px !important;
  z-index:auto !important;
  box-shadow:0 12px 28px rgba(15,23,42,.12) !important;
}

/* Old floating rules must not win. */
.team-actions-menu[open] .team-actions-popover{
  position:static !important;
}

/* SPG item limit/pager are intentionally disabled.
   JS already renders nothing; these rules guard stale cached markup. */
.mobile-item-limit,
.mobile-item-pager{
  display:none !important;
}

@media(max-width:760px){
  .team-actions-menu{
    width:100% !important;
  }
  .team-actions-popover{
    min-width:0 !important;
    max-width:none !important;
  }
}
