/* Layout: sticky header with tabs, a shared filter bar, then one working view at a time (overview report, range table, timeline, key dates) */
:root{
  --bg:#F4F5F9; --surface:#FFFFFF; --sunken:#ECEEF5; --ink:#191C34; --muted:#5D6283; --line:#DFE2EC;
  --accent:#041E42; --accent-soft:#E1E7F1; --on-accent:#FFFFFF; --accent-2:#1F4E8C; --brand:#4C86C6; --own:#23807F; --own-soft:#DDF1F0;
  --ok:#2F8A4A; --ok-soft:#E1F3E6; --warn:#B86E00; --warn-soft:#FCEFD9; --crit:#C92A2A; --crit-soft:#FBE2E2;
  --f-display:"Bricolage Grotesque", "Figtree", system-ui, sans-serif;
  --f-body:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
  --r:10px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#11121D; --surface:#1A1C2C; --sunken:#151726; --ink:#ECEDF6; --muted:#9DA1BF; --line:#2C2F46;
  --accent:#8FB0E3; --accent-soft:#1B2745; --on-accent:#041E42; --accent-2:#B9CDEE; --brand:#5FA0E0; --own:#4FB8B6; --own-soft:#173332;
  --ok:#5DC07A; --ok-soft:#173022; --warn:#E5A23C; --warn-soft:#352812; --crit:#F06A6A; --crit-soft:#3A1A1C; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#11121D; --surface:#1A1C2C; --sunken:#151726; --ink:#ECEDF6; --muted:#9DA1BF; --line:#2C2F46;
  --accent:#8FB0E3; --accent-soft:#1B2745; --on-accent:#041E42; --accent-2:#B9CDEE; --brand:#5FA0E0; --own:#4FB8B6; --own-soft:#173332;
  --ok:#5DC07A; --ok-soft:#173022; --warn:#E5A23C; --warn-soft:#352812; --crit:#F06A6A; --crit-soft:#3A1A1C; color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:14px;line-height:1.45}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.wrap{max-width:1280px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.lg{height:22px;width:auto;max-width:72px;object-fit:contain;vertical-align:middle;margin-right:6px}
.lg-lg{height:28px;max-width:96px}
.lic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.lic{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.lic .logo{height:72px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;border:1px solid var(--line)}
.lic .logo img{max-height:60px;max-width:90%;object-fit:contain}
.lic .logo span{font-family:var(--f-display);font-weight:800;font-size:22px;color:#9aa0b8}
.lic .nm{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lic .row{display:flex;gap:6px;flex-wrap:wrap}
.lic .btn{padding:5px 10px;font-size:12px}
.site-set{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}
.site-set .r{display:flex;gap:8px;flex-wrap:wrap}
.site-set input{flex:1 1 320px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:0}
.brand b{font-family:var(--f-display);font-weight:800;font-size:24px;letter-spacing:-.02em;color:var(--accent)}
.brand span{font-family:var(--f-display);font-weight:600;font-size:18px}
.sync{font-size:12px;color:var(--muted)}
nav{display:flex;gap:4px;overflow-x:auto;padding-block:10px 0}
nav button{background:none;border:0;padding:8px 12px 10px;border-bottom:3px solid transparent;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}
nav button[aria-selected="true"]{color:var(--ink);border-color:var(--accent)}
nav button .n{font-family:var(--f-mono);font-size:11px;background:var(--sunken);border-radius:99px;padding:1px 7px;margin-left:6px}
.filters{display:flex;flex-wrap:wrap;gap:8px;padding-block:12px}
.filters input,.filters select,.ctl{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px;min-width:0}
.filters input[type=search]{flex:1 1 220px}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}
.seg button{border:0;background:none;padding:6px 12px;cursor:pointer;font-weight:600;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--accent);color:var(--on-accent)}
.dd-ctl{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:10px;font-size:13px;color:var(--muted)}
.dd{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.dd-row,.dd summary{display:grid;grid-template-columns:minmax(0,1fr) 80px 80px 90px 100px 90px;gap:10px;align-items:center;padding:9px 14px}
.dd-head{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--sunken)}
.dd-head span:not(:first-child),.dd summary span:not(:first-child),.dd-p span.n{text-align:right}
.dd summary{cursor:pointer;list-style:none;border-top:1px solid var(--line)}
.dd summary::-webkit-details-marker{display:none}
.dd summary:hover{background:var(--accent-soft)}
.dd .nm{display:flex;align-items:center;gap:8px;min-width:0;font-weight:600}
.dd .nm::before{content:"";width:0;height:0;border-left:6px solid var(--muted);border-top:5px solid transparent;border-bottom:5px solid transparent;transition:transform .15s;flex:none}
.dd details[open]>summary .nm::before{transform:rotate(90deg)}
.dd .lv1>summary{font-size:14px}
.dd .lv2>summary{padding-left:34px;background:color-mix(in srgb,var(--sunken) 50%,transparent)}
.dd .lv3>summary{padding-left:54px}
.dd .lv2>summary .nm,.dd .lv3>summary .nm{font-weight:500}
.dd-p{display:grid;grid-template-columns:minmax(0,1fr) 80px 80px 90px 100px 90px;gap:10px;align-items:center;padding:6px 14px 6px 54px;border-top:1px solid var(--line);cursor:pointer;font-size:13px}
.dd-p:hover{background:var(--accent-soft)}
.dd-p .pc{display:flex;gap:8px;align-items:center;min-width:0}
.dd-p .pc .thumb{width:30px;height:30px}
.dd .lvp-2{padding-left:74px}.dd .lvp-3{padding-left:94px}
.dd-k{font-size:11px;color:var(--muted);font-weight:500}
@media (max-width:760px){ .dd-row,.dd summary,.dd-p{grid-template-columns:minmax(0,1fr) 60px 70px} .dd .hide-sm{display:none} .dd-p{padding-left:24px} .dd .lvp-2,.dd .lvp-3{padding-left:30px} .dd .lv2>summary,.dd .lv3>summary{padding-left:22px} }
.star{background:none;border:0;padding:0 2px;font-size:18px;line-height:1;cursor:pointer;color:var(--muted)}
.star.on{color:#E0A100}
.dp-ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 14px}
.dp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.dp-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.dp-img{position:relative;aspect-ratio:4/3;background:var(--sunken);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}
.dp-img img{width:100%;height:100%;object-fit:cover;display:block}
.dp-badge{position:absolute;left:8px;bottom:8px;background:rgba(4,30,66,.86);color:#fff;font-size:12px;font-weight:600;border-radius:99px;padding:3px 9px}
.dp-b{padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:13px;flex:1}
.dp-b .t{font-weight:700;font-size:15px}
.dp-b .row{margin-top:auto;padding-top:8px;display:flex;gap:6px;flex-wrap:wrap}
.sc-grid{columns:3 280px;column-gap:14px}
.sc-grid figure{break-inside:avoid;margin:0 0 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.sc-grid img{width:100%;display:block}
.sc-grid figcaption{padding:10px 12px;font-size:13px;display:flex;flex-direction:column;gap:2px}
.sc-grid figcaption b{font-size:14px}
body.no-cost .cost-only,body.hide-cm .cost-only{display:none!important}body.no-cost .cost-gate{display:none!important}
/* Settings / permissions */
.perm-note{font-size:14px}
.perm-lock{background:var(--accent-soft);border-radius:8px;padding:10px 12px;font-size:13px}
.perm-t td,.perm-t th{text-align:center}.perm-t td:first-child,.perm-t th:first-child{text-align:left}
.perm-t input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}
/* Modals */
.mwrap{position:fixed;inset:0;z-index:70;display:flex;align-items:flex-start;justify-content:center;padding:max(24px,env(safe-area-inset-top,0px)) 16px 24px;overflow-y:auto}
.mwrap[hidden]{display:none}
.mwrap .scrim{position:fixed;inset:0;background:rgba(4,30,66,.45);z-index:0}
.modal{position:relative;z-index:1;background:var(--surface);border-radius:14px;width:min(640px,100%);box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:calc(100vh - 48px)}
.modal.wide{width:min(860px,100%)}
.modal .md-b{overflow-y:auto;margin:0;border:0;border-radius:0;box-shadow:none}
.modal .drawer-f{border-top:1px solid var(--line)}
.ct-ed{display:flex;flex-direction:column;gap:6px}
.ct-row{display:grid;grid-template-columns:1.2fr 1fr 1.4fr 1fr 1fr auto;gap:6px;align-items:center}
.ct-row input{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;min-width:0}
@media (max-width:760px){.ct-row{grid-template-columns:1fr 1fr}.ct-row button{grid-column:1/-1;justify-self:start}}
.logo-ed{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.chk{display:flex;gap:8px;align-items:center;text-transform:none;letter-spacing:0;font-size:14px;color:var(--ink)}
/* Retail Groups */
.rlogo{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:#fff;border:1px solid var(--line);overflow:hidden;flex:none;vertical-align:middle}
.rlogo img{max-width:88%;max-height:88%;object-fit:contain}
.rlogo b{font-family:var(--f-display);color:var(--accent);font-size:18px}
.rlogo.sm{width:28px;height:28px;border-radius:7px;margin-right:6px}.rlogo.sm b{font-size:11px}
.rlogo.lg{width:88px;height:88px;border-radius:16px}.rlogo.lg b{font-size:26px}
.g-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.gcard,.rcard,.pgcard{display:flex;gap:12px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;cursor:pointer;font:inherit;color:inherit}
.gcard:hover,.rcard:hover,.pgcard:hover{border-color:var(--accent);box-shadow:0 2px 12px rgba(4,30,66,.08)}
.gc-b{display:flex;flex-direction:column;gap:4px;min-width:0;font-size:13px}
.gc-b .nm,.rcard .nm,.pgcard .nm{font-weight:700;font-size:15px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gc-f{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:2px}
.r-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.rcard{flex-direction:column;gap:6px;font-size:13px}
.crumbs{font-size:13px;color:var(--muted);margin:14px 0 6px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.ghead{display:flex;gap:18px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:14px;flex-wrap:wrap}
.gh-b{flex:1;min-width:240px;display:flex;flex-direction:column;gap:4px}.gh-b h2{margin:0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.gh-a{display:flex;flex-direction:column;gap:8px}
.co{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;margin:10px 0 0;font-size:13px}.co dt{color:var(--muted)}.co dd{margin:0}
.co a,.ct a{color:var(--accent);text-decoration:none;font-weight:600}
.ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.ct{display:flex;flex-direction:column;gap:2px;background:var(--bg);border-radius:10px;padding:10px 12px;font-size:13px}
.subtabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:4px 0 14px;overflow-x:auto}
.subtabs button{background:none;border:0;border-bottom:3px solid transparent;padding:8px 12px;font-weight:600;color:var(--muted);cursor:pointer;white-space:nowrap}
.subtabs button[aria-selected="true"]{color:var(--ink);border-color:var(--accent)}
.subtabs .n{margin-left:6px;font-size:11px;background:var(--sunken);border-radius:99px;padding:1px 7px}
.bar-mini{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.panel-h .btn{margin-left:auto}
.rc-panel{margin-bottom:6px}
.pill.rc-crit,.tag.rc-crit{background:var(--crit-soft);color:var(--crit)}.pill.rc-warn,.tag.rc-warn{background:var(--warn-soft);color:var(--warn)}
.pill.rc-ok{background:var(--accent-soft);color:var(--accent)}.pill.rc-done{background:var(--ok-soft);color:var(--ok)}
.rc-t td{vertical-align:middle}.rc-row-crit td:first-child{box-shadow:inset 3px 0 0 var(--crit)}.rc-row-warn td:first-child{box-shadow:inset 3px 0 0 var(--warn)}.rc-row-done{opacity:.65}
.row-btns{white-space:nowrap}.row-btns .btn{margin-left:4px}
.chips-row{display:flex;gap:8px;flex-wrap:wrap}
/* Display history */
.hist-list{display:flex;flex-direction:column;gap:10px}
.tagsets{display:flex;flex-direction:column;gap:12px}.tagset{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}
.tag-h{width:100%;gap:10px}.tag-h h3{font-size:16px;display:flex;align-items:center;gap:4px}.tag-h .muted{margin-left:auto;font-size:13px}
.tag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin-top:10px}
.tg-pic{position:relative;padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--sunken);cursor:pointer;text-align:left;font:inherit;color:inherit;display:flex;flex-direction:column}
.tg-pic img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.tg-pic span{padding:6px 8px;font-size:12px;font-weight:600;background:var(--surface)}.tg-pic small{display:block;font-weight:400;color:var(--muted)}
.tg-pic.star{border-color:#E0A100}.tg-pic i{position:absolute;top:6px;right:8px;color:#E0A100;font-style:normal;text-shadow:0 1px 2px rgba(0,0,0,.5)}.tg-pic:hover{border-color:var(--accent)}
.hist-h{font-family:var(--f-display);font-weight:800;font-size:16px;margin:12px 0 0;padding-bottom:4px;border-bottom:2px solid var(--accent)}
.hist{display:grid;grid-template-columns:280px 1fr;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px}
.hist-meta{display:flex;flex-direction:column;gap:4px;font-size:13px}.hist-meta .pill{align-self:flex-start}.hist-meta .t{font-weight:700;font-size:15px}.hist-meta .row{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.hist-pics{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
.hp{position:relative;flex:none;width:150px;height:112px;border-radius:8px;overflow:hidden;background:var(--sunken);border:1px solid var(--line)}
.hp img{width:100%;height:100%;object-fit:cover;display:block}.hp.star{border:2px solid #E0A100}.hp i{position:absolute;top:4px;right:6px;color:#E0A100;font-style:normal;text-shadow:0 1px 2px rgba(0,0,0,.4)}
.hp-add{width:150px;height:112px;border:2px dashed var(--line);border-radius:8px;background:var(--bg);cursor:pointer;font:inherit;color:var(--muted)}
@media (max-width:760px){.hist{grid-template-columns:1fr}}
/* Planograms */
.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.pg-sh{display:flex;align-items:center;gap:8px;margin:16px 0 8px}
/* Trade Shows */
.role-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:4px 0 12px}.role-tabs button{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:10px 14px;cursor:pointer;font:inherit;color:inherit}
.role-tabs button[aria-selected="true"]{border-color:var(--accent);box-shadow:inset 0 -3px 0 var(--accent)}.role-tabs b{font-size:15px}.role-tabs small{color:var(--muted);font-size:12px}.role-tabs .n{font-size:11px;background:var(--sunken);border-radius:99px;padding:1px 7px;margin-left:4px}
@media (max-width:760px){.role-tabs{grid-template-columns:1fr 1fr}}
.pill.role-exhibiting{background:var(--accent);color:var(--on-accent)}.pill.role-visiting{background:var(--ok-soft);color:var(--ok)}.ts-t{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.venue{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:14px;align-items:start;font-size:13px}.venue>div:first-child{display:flex;flex-direction:column;gap:2px}.venue .co{margin:0}
@media (max-width:760px){.venue{grid-template-columns:1fr}}
.stand-k{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.stand-k div{background:var(--bg);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;font-size:12px;color:var(--muted)}.stand-k b{font-size:18px;color:var(--ink)}
.ex-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.ex-row{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface)}.ex-row:first-child{border-top:0}
.ex-row.m-must,.ex-row.m-want{box-shadow:inset 4px 0 0 var(--accent)}.ex-row.m-booked{box-shadow:inset 4px 0 0 var(--warn)}.ex-row.m-met{box-shadow:inset 4px 0 0 var(--ok)}.ex-row.m-skip{opacity:.55}
.ex-main{flex:1;display:flex;flex-direction:column;gap:3px;font-size:13px;min-width:0}.ex-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ex-h b{font-size:15px}.ex-why{color:var(--ink)}.ex-meta{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.ex-act{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.ex-meet{max-width:160px}
.pill.rel-high{background:var(--ok-soft);color:var(--ok)}.pill.rel-medium{background:var(--warn-soft);color:var(--warn)}.pill.rel-low{background:var(--sunken);color:var(--muted)}
@media (max-width:700px){.ex-row{flex-direction:column}.ex-act{justify-content:flex-start}}

.ts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.ts-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}.ts-card.is-att{border-color:var(--ok);box-shadow:inset 0 4px 0 var(--ok)}.bc-b .linkbtn{align-self:flex-start;text-align:left}
.ts-open{display:flex;flex-direction:column;text-align:left;background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit}
.ts-open>img,.ts-ph{width:100%;height:120px;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-family:var(--f-display);font-weight:800;font-size:28px}
.ts-b{display:flex;flex-direction:column;gap:3px;padding:12px 14px;font-size:13px}.ts-b b{font-size:15px}.ts-n{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ts-f{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:12px;margin-top:2px}.ts-a{padding:0 14px 12px}
.ts-who{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 9px;margin-left:6px;min-width:200px}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px}
.bcard{display:grid;grid-template-columns:110px 1fr;gap:12px;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:12px;padding:12px;box-shadow:0 2px 10px rgba(4,30,66,.05)}
.bcard.k-supplier{border-left-color:#7A5BC7}.bcard.k-licensor{border-left-color:#D9661F}.bcard.k-other{border-left-color:var(--muted)}
.bc-pic{position:relative;width:110px;height:110px;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--accent-soft);padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--accent);font-family:var(--f-display);font-weight:800;font-size:28px}
.bc-pic img{width:100%;height:100%;object-fit:cover}.bc-pic i{position:absolute;right:4px;bottom:4px;background:rgba(0,0,0,.65);color:#fff;font-style:normal;font-size:11px;border-radius:99px;padding:1px 6px}
.bc-b{display:flex;flex-direction:column;gap:4px;font-size:13px;min-width:0}.bc-h{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bc-h b{font-size:15px}
.bc-l{display:flex;flex-direction:column;gap:1px}.bc-l a{color:var(--accent);text-decoration:none;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bc-ad{font-size:12px}.bc-b .row{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}
.pill.bk-customer{background:var(--accent-soft);color:var(--accent)}.pill.bk-supplier{background:#EEE8FA;color:#5B3FA8}.pill.bk-licensor{background:#FDEBDD;color:#B4531A}.pill.bk-other{background:var(--sunken);color:var(--muted)}
.cd-link{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px}.cd-link select{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 8px}
@media (max-width:520px){.bcard{grid-template-columns:80px 1fr}.bc-pic{width:80px;height:80px}}.pill.pgs-active{background:var(--ok-soft);color:var(--ok)}.pill.pgs-forthcoming{background:var(--warn-soft);color:var(--warn)}.pill.pgs-inactive{background:var(--sunken);color:var(--muted)}
.pgcard{flex-direction:column;gap:4px;font-size:13px}.pg-mini{display:block;margin-bottom:6px}
body.pg-open{overflow:hidden}
.pg-wrap{position:fixed;inset:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}
.pg-top{display:flex;gap:10px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface);flex-wrap:wrap;border-top:5px solid var(--brand-bar,#041E42)}
.pg-top>div:first-child{flex:1;min-width:180px}.pg-top h2{margin:0;font-size:18px}
.pg-main{flex:1;display:grid;grid-template-columns:330px 1fr;min-height:0}
.pg-side{border-right:1px solid var(--line);padding:12px;display:flex;flex-direction:column;gap:10px;min-height:0;background:var(--surface)}
.pg-set{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}
.pg-set label{display:flex;flex-direction:column;gap:3px}.pg-set input,.pg-set select,.pg-pal-h input,.pg-pal-h select{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 9px;color:var(--ink);min-width:0}
.pg-3{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pg-pal-h{display:flex;flex-direction:column;gap:6px}.pg-filt{display:grid;grid-template-columns:1fr 1fr;gap:4px}.pg-filt select{font-size:12px;padding:5px 6px;min-width:0}
.pg-rets{display:flex;flex-direction:column;gap:3px;max-height:140px;overflow-y:auto;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 8px}.pg-rets .chk{font-size:13px;flex-direction:row!important;align-items:center;gap:6px;text-align:left;color:var(--ink)}.pg-rets .pill{font-size:10px}
.pg-side{overflow-y:auto}
.pg-pal{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px;min-height:120px}
.pg-pi{display:flex;gap:8px;align-items:center;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--bg);cursor:grab;font-size:12px;touch-action:none;user-select:none}
.pg-pi:hover{border-color:var(--accent)}.pg-pi.used{opacity:.7}.pg-pi small{display:block;color:var(--muted)}.pg-pi .thumb{width:32px;height:32px}
.pg-stage{padding:16px;overflow:auto;display:flex;flex-direction:column;gap:12px;min-width:0}
.pg-canvas{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 40px 12px 12px}
.pg-canvas .pg-fix,.pg-canvas .pg-ruler{width:min(100%,calc((100vh - 360px) * var(--ar,2)));margin:0 auto}
.pg-mini .pg-fix{max-height:140px;width:min(100%,calc(140px * var(--ar,2)))}
.pg-ruler{display:flex;font-size:11px;color:var(--muted);margin-bottom:4px}.pg-ruler span{flex:1;text-align:center}
.pg-insp{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;font-size:13px}
.pg-insp small{display:block;color:var(--muted)}.pg-insp .fac{display:inline-flex;align-items:center;gap:6px}
.pg-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.pg-sum div{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 12px;font-size:12px;color:var(--muted);display:flex;flex-direction:column}.pg-sum b{font-size:18px;color:var(--ink)}
.pg-ghost{position:fixed;z-index:80;pointer-events:none;background:color-mix(in srgb,var(--accent) 30%,transparent);border:2px solid var(--accent);border-radius:4px;font-size:10px;font-weight:700;color:var(--ink);display:flex;align-items:flex-end;padding:2px}
@media (max-width:860px){.pg-main{grid-template-columns:1fr;overflow-y:auto}.pg-side{border-right:0;border-bottom:1px solid var(--line)}.pg-pal{max-height:220px}}
/*PG-CSS*/
.pg-fix{position:relative;width:100%;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),rgba(4,30,66,.04) calc(10% - 1px) 10%);border:3px solid #6B7389;border-top-width:6px;border-radius:4px}
.pg-shelf{position:absolute;left:0;right:0;border-bottom:4px solid #6B7389;transition:background .1s}
.pg-shelf.hot{background:color-mix(in srgb,var(--accent) 12%,transparent)}
.pg-fill{position:absolute;right:-38px;bottom:2px;font-size:10px;color:var(--muted,#5D6283);width:34px;text-align:left}
.pg-bay{position:absolute;top:0;bottom:0;border-left:2px dashed #9AA3B5;pointer-events:none}
.pg-it{position:absolute;bottom:0;background:#fff;border:1px solid #9AA3B5;border-radius:3px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;font-size:9px;font-weight:700;cursor:grab;touch-action:none;user-select:none;color:#041E42}
.pg-it.cdu{background:#E9EEF6;border-color:#041E42}
.pg-it img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.92}.pg-it .lg{max-height:50%;max-width:80%}
.pg-it span{position:relative;background:rgba(255,255,255,.88);padding:0 2px;border-radius:2px;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pg-it.miss{border-style:dashed;border-color:#B86E00}.pg-it.tall{outline:2px solid #C92A2A;outline-offset:-2px}
.pg-it.sel{outline:3px solid #E0A100;outline-offset:1px;z-index:2}
.pg-shelf.over{background:repeating-linear-gradient(135deg,rgba(201,42,42,.10) 0 8px,transparent 8px 16px);border-bottom-color:#C92A2A}
.pg-it.out{outline:2px dashed #C92A2A;outline-offset:-2px;opacity:.8}.pg-it.deep{box-shadow:inset 0 -4px 0 #B86E00}
.pg-fill{position:absolute;right:3px;top:3px;bottom:auto;width:auto;font-size:10px;line-height:1.3;background:rgba(255,255,255,.85);color:#5D6283;padding:0 5px;border-radius:99px;pointer-events:none;z-index:3}
.pg-fill{white-space:nowrap}.pg-fill.bad{background:#C92A2A;color:#fff;font-weight:700}
.pg-base{position:absolute;left:0;right:0;background:repeating-linear-gradient(90deg,#B9C0CE 0 6px,#AAB2C2 6px 12px);display:flex;align-items:center;justify-content:center}.pg-base span{font-size:10px;color:#3A4257;background:rgba(255,255,255,.7);padding:0 5px;border-radius:99px}
.pg-posi,.pg-shpos{position:absolute;top:100%;z-index:4;overflow:hidden;pointer-events:none;border-radius:0 0 2px 2px;box-shadow:0 1px 2px rgba(0,0,0,.25)}.pg-shpos{left:0;right:0;z-index:3}
.pg-posi img,.pg-shpos img{width:100%;height:100%;object-fit:cover;display:block}
.pg-it.bdl{background:#FFF4D6;border-color:#B86E00;border-width:2px}
.pg-pos-x{position:absolute;z-index:5;pointer-events:none;overflow:hidden}.pg-pos-x img{width:100%;height:100%;object-fit:cover;display:block}
.pg-pos-x.hdr{border-radius:3px 3px 0 0;box-shadow:0 -1px 2px rgba(0,0,0,.2)}.pg-pos-x.side{opacity:.95}.pg-pos-x.wob{border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.35);z-index:6}
.pf-c{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:8px;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 3px}
.pg-dhdr{position:absolute;left:0;right:0;bottom:100%;overflow:hidden;border-radius:4px 4px 0 0;z-index:5}.pg-dhdr img{width:100%;height:100%;object-fit:cover;display:block}.pg-dhdr .pf-c{font-size:12px}
/*END-PG-CSS*/
.filters .ta{flex:1 1 220px;display:flex}
.filters .ta input{flex:1;width:100%}
.ta{position:relative}
.ta-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:60;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.18);max-height:340px;overflow-y:auto;padding:4px;min-width:240px}
.ta-h{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 10px 4px}
.ta-i{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-radius:7px;padding:7px 10px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}
.ta-i:hover,.ta-i.on{background:var(--accent-soft)}
.ta-i mark{background:none;color:var(--accent);font-weight:700}
.ta-i .why{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}
.ta-i .thumb{width:28px;height:28px}
.ta-i .k{font-size:11px;color:var(--muted);min-width:64px}
.ta-new{font-size:12px;color:var(--muted);padding:6px 10px}
.sugg{font-size:12px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.sugg button{background:var(--accent-soft);color:var(--accent);border:0;border-radius:999px;padding:2px 9px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.sect-row{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:8px}
.filters select{flex:0 1 150px}
.chips{display:flex;flex-wrap:wrap;gap:6px;padding-block:0 10px}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--accent-soft);color:var(--ink);border:0;border-radius:99px;padding:3px 10px;font-size:12px;cursor:pointer}
.chip::after{content:"×";font-weight:700;color:var(--accent)}
main{padding-block:20px 60px}
.view[hidden]{display:none!important}
h2{font-family:var(--f-display);font-weight:800;font-size:22px;letter-spacing:-.01em;margin:0;text-wrap:balance}
h3{font-family:var(--f-display);font-weight:600;font-size:16px;margin:0 0 12px}
.eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}
.btn{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 12px;font-weight:600;cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--muted)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.btn.danger{color:var(--crit)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.bar-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.bar-top h2{margin-right:auto}
.muted{color:var(--muted)}
.num{font-variant-numeric:tabular-nums}
.mono{font-family:var(--f-mono);font-size:12px}
.banner{background:var(--warn-soft);border-radius:var(--r);padding:12px 14px;margin-bottom:16px}

/* overview */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:20px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.kpi .v{font-family:var(--f-display);font-weight:800;font-size:30px;line-height:1.1;font-variant-numeric:tabular-nums}
.kpi .l{font-size:12px;color:var(--muted);padding-right:24px}
.kpi{position:relative}.kpi-dl{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.kpi-dl:hover{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}
.kpi-dl svg,.icb svg,.tab-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
.icb{display:inline-flex;align-items:center;gap:6px}.tab-ic{display:inline-flex!important;align-items:center;gap:6px}
/* selected drop-downs stand out */
.filters select.on,.filters input.on,select.ctl.on,.bulk select.on,.cp-f select.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}
.filters select.on option,select.ctl.on option,.bulk select.on option,.cp-f select.on option{background:var(--surface);color:var(--ink);font-weight:400}
/* confirm pop-up */
.cf-wrap{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}
.cf-scrim{position:absolute;inset:0;background:rgba(4,30,66,.5)}
.cf-box{position:relative;background:var(--surface);border-radius:16px;padding:24px;width:min(420px,100%);box-shadow:0 24px 70px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:10px;text-align:center;align-items:center}
.cf-box h3{margin:0;font-size:18px}.cf-box p{margin:0;color:var(--muted);font-size:14px}
.cf-ic{width:44px;height:44px;border-radius:50%;background:var(--crit-soft);color:var(--crit);font-weight:900;font-size:22px;display:flex;align-items:center;justify-content:center}
.cf-a{display:flex;gap:8px;margin-top:6px;justify-content:center;flex-wrap:wrap}
.btn.danger-solid{background:var(--crit);border-color:var(--crit);color:#fff;font-weight:700}
.kpi.warn .v{color:var(--warn)} .kpi.crit .v{color:var(--crit)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));gap:16px;align-items:start}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:16px;min-width:0}
.panel-h{display:flex;align-items:baseline;gap:8px;margin-bottom:12px}
.panel-h h3{margin:0;margin-right:auto}
.hbars{display:grid;grid-template-columns:minmax(90px,170px) 1fr 40px;gap:6px 10px;align-items:center}
.hbars .lbl{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:none;border:0;padding:0;text-align:left;cursor:pointer}
.hbars .lbl:hover{color:var(--accent);text-decoration:underline}
.track{height:14px;background:var(--sunken);border-radius:3px;display:flex;overflow:hidden}
.seg{height:100%}
.hbars .val{font-variant-numeric:tabular-nums;text-align:right;font-size:13px;font-weight:600}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:12px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.alerts{display:flex;flex-direction:column;gap:14px}
.alist{display:flex;flex-direction:column}
.arow{display:grid;grid-template-columns:86px 1fr auto;gap:10px;padding:8px 0;border-top:1px solid var(--line);align-items:baseline}
.arow:first-child{border-top:0}
.arow .d{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}
.arow .t{min-width:0}
.arow .t small{display:block;color:var(--muted);font-size:12px}
.tag{font-size:11px;font-weight:700;border-radius:99px;padding:2px 8px;white-space:nowrap}
.sev-crit{border-left:3px solid var(--crit);padding-left:10px}
.sec-h{display:flex;align-items:center;gap:12px;margin:18px 0 8px}
.gl-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:4px 0 14px}.gl-bar input[type=search]{flex:1 1 220px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:7px 10px}
.gl-bar .seg .n{font-size:11px;opacity:.75;margin-left:2px}
.ph-t{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;cursor:pointer;color:inherit;font:inherit}.ph-t h3{margin:0}
.chev{width:0;height:0;border-left:6px solid var(--muted);border-top:5px solid transparent;border-bottom:5px solid transparent;transition:transform .15s;transform:rotate(90deg)}
.ph-t[aria-expanded="false"] .chev{transform:none}.cpanel.min .panel-h{margin-bottom:0}
.gcard-w{position:relative}.gcard-w .gcard{width:100%;height:100%}.g-hide{position:absolute;top:8px;right:8px;font-size:11px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:2px 7px;cursor:pointer;opacity:0;transition:opacity .15s}
.gcard-w:hover .g-hide,.gcard-w:focus-within .g-hide,.g-row .g-hide{opacity:1}.g-hide:hover{color:var(--ink);border-color:var(--accent)}
.is-hidden{opacity:.55}.g-list{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.g-row{position:relative;display:flex;align-items:center;border-top:1px solid var(--line)}.g-row:first-child{border-top:0}.g-row .g-hide{position:static;margin-right:10px}
.g-rowb{flex:1;display:flex;align-items:center;gap:10px;background:none;border:0;padding:8px 12px;cursor:pointer;font:inherit;color:inherit;text-align:left;flex-wrap:wrap}.g-rowb:hover{background:var(--accent-soft)}
/* Branding editor */
.brand-ed{display:grid;grid-template-columns:auto 1fr 1fr;gap:18px;align-items:start}
.be-logo{display:flex;flex-direction:column;gap:8px}.be-prev{display:flex;align-items:center;justify-content:center;width:180px;height:90px;background:#fff;border:1px solid var(--line);border-radius:10px}.be-prev img{max-width:90%;max-height:80%}
.be-col{display:flex;flex-direction:column;gap:6px}.be-col input{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;flex:none}.be-col input[type=color]{width:52px;height:38px;padding:2px}
.be-sw{display:flex;gap:6px;flex-wrap:wrap}.sel-demo{background:var(--sel);color:var(--on-sel);border-radius:99px;padding:3px 12px;font-size:12px;font-weight:700}.sw-c{width:28px;height:28px;border-radius:50%;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--line);cursor:pointer}.sw-c.on{box-shadow:0 0 0 3px var(--ink)}
@media (max-width:760px){.brand-ed{grid-template-columns:1fr}}
/* Import preview */
.imp{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.imp-k{display:flex;gap:10px;flex-wrap:wrap}.imp-k div{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 12px;font-size:12px;color:var(--muted);display:flex;flex-direction:column}.imp-k b{font-size:18px;color:var(--ink)}
.imp-err summary{cursor:pointer;color:var(--warn);font-weight:700}.imp-err ul{margin:6px 0;font-size:12px;max-height:160px;overflow:auto}
/* Picture tags */
.tagbox{display:flex;gap:12px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px}
.tagbox>img{width:120px;height:120px;object-fit:cover;border-radius:8px}.tb-f{flex:1;display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}
.tb-f label{display:flex;flex-direction:column;gap:3px}.tb-f input{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:6px 9px;color:var(--ink)}
.tb-l{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.tb-chips{display:flex;gap:5px;flex-wrap:wrap}.tchip{border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:3px 10px;font:inherit;font-size:12px;cursor:pointer;color:var(--ink)}.tchip.sm{padding:2px 8px;font-size:11.5px}.tchip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
@media (max-width:640px){.tagbox{flex-direction:column}}
/* Catalogue */
.cat-wrap{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}
.cat-list{display:flex;flex-direction:column;gap:6px}.cat-item{display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;font:inherit;color:inherit;font-size:13px}.cat-item.on{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}
.cat-ed{display:flex;flex-direction:column;gap:12px;min-width:0}
.cat-top{display:grid;grid-template-columns:220px 1fr;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px}
.cat-cover{aspect-ratio:3/4;background:var(--accent);border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.cat-cover img{width:100%;height:100%;object-fit:cover}.cat-cover .muted{color:var(--on-accent);opacity:.8}
.cat-meta{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}.cat-meta label{display:flex;flex-direction:column;gap:3px}.cat-meta input,.cs-b input,.cs-b textarea{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:7px 9px;color:var(--ink);font:inherit;font-size:14px}
.cat-opts{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}.cat-cc{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.cat-cc label{display:flex;flex-direction:column;gap:3px}.cat-cc input[type=color]{width:52px;height:34px;padding:2px}.cat-open{display:flex;flex-direction:column;gap:6px;border-top:1px solid var(--line);padding-top:8px}.th-chip{display:inline-flex;align-items:center;gap:6px}.th-chip i{width:14px;height:14px;border-radius:50%;display:inline-block;box-shadow:0 0 0 1px rgba(0,0,0,.15)}.cat-meta label.chk,.cs-b label.chk{flex-direction:row;align-items:center;gap:6px;color:var(--ink);font-size:13px}
.cat-secs{display:flex;flex-direction:column;gap:10px}.cat-sec{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.cs-h{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.cs-a{margin-left:auto;display:flex;gap:4px}
.cs-b{padding:12px;display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}.cs-b label{display:flex;flex-direction:column;gap:3px}
.cat-img{display:flex;gap:10px;align-items:center}.cat-img img{height:70px;border-radius:8px}
.cat-thumbs{display:flex;gap:4px;flex-wrap:wrap;align-items:center}.cat-thumbs .thumb{width:34px;height:34px}.cat-thumbs .cp{padding:0;border:0;background:none;cursor:pointer}.cat-thumbs.pics img{width:64px;height:48px;object-fit:cover;border-radius:6px;display:block}.cat-thumbs .cp:hover img{outline:2px solid var(--crit)}
.cat-bar{position:sticky;bottom:0;display:flex;gap:8px;align-items:center;background:var(--bg);padding:10px 0;border-top:1px solid var(--line);flex-wrap:wrap}
.cp-f{display:flex;flex-direction:row!important;gap:6px;flex-wrap:wrap}.cp-f input{flex:1 1 100%}.cp-f select{width:auto!important;flex:1 1 150px;min-width:0;padding:6px 8px!important;font-size:13px}
.cp-list{max-height:52vh;overflow-y:auto;gap:2px!important}.cp-row{display:grid!important;grid-template-columns:auto auto 1fr auto;gap:10px;align-items:center;padding:6px 8px;border-radius:8px;text-transform:none!important;letter-spacing:0!important;font-size:13px!important;color:var(--ink)!important;cursor:pointer}.cp-row:hover{background:var(--accent-soft)}.cp-row small{display:block;color:var(--muted)}.cp-row.q{grid-template-columns:auto auto 1fr auto 76px}.cp-row.on{background:var(--accent-soft)}.cp-row .num small{text-align:right}.cp-qty{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:5px 7px}.cp-qty:disabled{opacity:.4}.cp-row input{width:18px;height:18px}
.cat-pv-b{flex:1;overflow:auto;background:#e9edf3;padding:20px}
@media (max-width:860px){.cat-wrap,.cat-top{grid-template-columns:1fr}.cat-cover{max-width:220px}}
.att{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;border-radius:99px;padding:2px 9px;margin-left:6px}
.att.yes{background:var(--ok-soft);color:var(--ok)}
.att-tg{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:var(--surface);color:var(--muted);border-radius:99px;padding:5px 12px 5px 6px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.att-tg .tick{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line);display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:transparent}
.att-tg:hover{border-color:var(--ok);color:var(--ok)}.att-tg:hover .tick{border-color:var(--ok);color:var(--ok)}
.att-tg.on{background:var(--ok);border-color:var(--ok);color:#fff}.att-tg.on .tick{background:#fff;border-color:#fff;color:var(--ok);font-weight:900}
.att-who{font-size:12px;font-weight:600;color:var(--ok);margin-left:6px}.att.no{background:var(--sunken);color:var(--muted);font-weight:600}
.sev-warn{border-left:3px solid var(--warn);padding-left:10px}
.sev-info{border-left:3px solid var(--accent);padding-left:10px}
.sev-ok{border-left:3px solid var(--own);padding-left:10px}
.empty{color:var(--muted);font-size:13px;padding:6px 0}
.linkbtn{background:none;border:0;padding:0;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:underline}

/* status pills */
.pill{display:inline-block;font-size:11px;font-weight:700;border-radius:99px;padding:2px 9px;white-space:nowrap}
.st-Live{background:var(--ok-soft);color:var(--ok)}
.st-Planned{background:var(--accent-soft);color:var(--accent)}
.st-Coming-soon{background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--brand)}
.combo{display:flex;flex-direction:column;gap:6px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.st-Delisting{background:var(--warn-soft);color:var(--warn)}
.st-Delisted{background:var(--sunken);color:var(--muted)}
.st-On-hold{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.kind-own{background:var(--own-soft);color:var(--own)}
.kind-brand{background:var(--warn-soft);color:var(--warn)}
.tl-bar.brand{background:var(--brand)}
.kind-lic{background:var(--accent-soft);color:var(--accent)}

/* table */
.tablewrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
table{border-collapse:collapse;width:100%;min-width:1240px}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
th{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700;background:var(--sunken);position:sticky;top:0;cursor:pointer;white-space:nowrap;user-select:none}
th.nosort{cursor:default}
th[aria-sort="ascending"]::after{content:" ▲";font-size:9px} th[aria-sort="descending"]::after{content:" ▼";font-size:9px}
tbody tr{cursor:pointer}
tbody tr:hover td{background:var(--sunken)}
tbody tr.sel td{background:var(--accent-soft)}
td .sub{display:block;color:var(--muted);font-size:12px}
td.date{font-variant-numeric:tabular-nums;white-space:nowrap}
td.date.past{color:var(--crit);font-weight:600}
td.date.soon{color:var(--warn);font-weight:600}
.bulk{position:sticky;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:15;margin-top:12px;background:var(--ink);color:var(--bg);border-radius:var(--r);padding:12px 14px;display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.bulk label{display:flex;flex-direction:column;font-size:11px;gap:3px;letter-spacing:.04em;text-transform:uppercase;font-weight:700;opacity:.9}
.bulk select,.bulk input{background:var(--surface);color:var(--ink);border:0;border-radius:6px;padding:6px 8px;text-transform:none;letter-spacing:0;font-weight:400}
.bulk .count{font-family:var(--f-display);font-weight:800;font-size:18px;margin-right:6px;align-self:center}

/* drawer */
.scrim{position:fixed;inset:0;background:rgba(10,12,30,.45);z-index:40}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);background:var(--surface);z-index:41;display:flex;flex-direction:column;box-shadow:-10px 0 40px rgba(0,0,0,.2);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-right:env(safe-area-inset-right,0px)}
.drawer-h{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--line)}
.drawer-h h2{font-size:19px;margin-right:auto}
.drawer-b{overflow-y:auto;padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;align-content:start}
.drawer-f{display:flex;gap:8px;flex-wrap:wrap;padding:14px 20px;border-top:1px solid var(--line)}
.fld{display:flex;flex-direction:column;gap:4px;min-width:0}
.fld.full{grid-column:1/-1}
.fld label{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700}
.fld input,.fld select,.fld textarea{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;width:100%}
.fld textarea{min-height:70px;resize:vertical}
.sect{grid-column:1/-1;font-family:var(--f-display);font-weight:600;font-size:14px;padding-top:6px;border-top:1px solid var(--line);margin-top:4px}
.err{color:var(--crit);font-size:13px;grid-column:1/-1}
.confirm{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--crit-soft);padding:8px 10px;border-radius:8px;width:100%}

/* timeline */
.tl-ctl{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.tlwrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.tl{min-width:960px;position:relative}
.tl-row{display:grid;grid-template-columns:240px 1fr;border-bottom:1px solid var(--line)}
.tl-row:last-child{border-bottom:0}
.tl-lab{padding:6px 12px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-right:1px solid var(--line);min-width:0}
.tl-lab small{color:var(--muted);font-size:11px;margin-left:6px}
.tl-grp .tl-lab{font-family:var(--f-display);font-weight:600;background:var(--sunken)}
.tl-grp .tl-track{background:var(--sunken)}
.tl-track{position:relative;min-height:30px}
.tl-months{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.tl-month{position:absolute;top:0;bottom:0;border-left:1px solid var(--line);padding:8px 6px}
.tl-grid{position:absolute;top:0;bottom:0;border-left:1px dashed var(--line);pointer-events:none}
.tl-today{position:absolute;top:0;bottom:0;border-left:2px solid var(--accent);pointer-events:none;z-index:3}
.tl-ev.rel{border-left-color:var(--accent)}
.tl-ev{position:absolute;top:0;bottom:0;border-left:2px dotted var(--warn);pointer-events:none;z-index:2;opacity:.8}
.tl-evlab.rel{color:var(--accent)}
.tl-evlab{position:absolute;top:4px;font-size:11px;font-weight:700;color:var(--warn);background:var(--surface);padding:1px 4px;border-radius:4px;white-space:nowrap;transform:translateX(3px)}
.tl-bar{position:absolute;top:7px;height:16px;border-radius:4px;background:var(--accent);opacity:.85;cursor:pointer;min-width:6px}
.tl-bar.own{background:var(--own)}
.tl-bar.delisting{background:var(--warn)}
.tl-bar.open-l{border-top-left-radius:0;border-bottom-left-radius:0}
.tl-bar.open-r{border-top-right-radius:0;border-bottom-right-radius:0;background-image:linear-gradient(90deg,transparent 80%,var(--surface) 160%)}
.tl-heat{position:absolute;top:8px;height:14px;border-radius:3px}

/* key dates */
.evlist{display:flex;flex-direction:column;gap:8px}
.ev{display:grid;grid-template-columns:120px 1fr auto;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px}
.ev.past{opacity:.55}
.ev .when b{display:block;font-family:var(--f-display);font-weight:800;font-size:18px;font-variant-numeric:tabular-nums}
.ev .when span{font-size:12px;color:var(--muted)}
.ev .what{min-width:0}
.ev .what b{font-weight:700}
.ev .what small{display:block;color:var(--muted)}
/* breakdown */
.bd-panel{margin-bottom:16px}
.bd-ctl{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-left:auto}
.bd-ctl label{font-size:12px;color:var(--muted)}
.mxwrap{overflow:auto;max-height:520px;border:1px solid var(--line);border-radius:8px}
table.mx{min-width:0;width:auto;border-collapse:separate;border-spacing:0}
.mx th,.mx td{padding:5px 8px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:center;font-variant-numeric:tabular-nums;font-size:12px;white-space:nowrap}
.mx thead th{position:sticky;top:0;z-index:2;background:var(--sunken);cursor:pointer;text-transform:none;letter-spacing:0;font-size:11px;max-width:110px;white-space:normal;line-height:1.2;vertical-align:middle;text-align:center!important}
.mx th.rh{position:sticky;left:0;z-index:1;background:var(--surface);text-align:left;font-weight:600;font-size:12px;cursor:pointer;color:var(--ink);text-transform:none;letter-spacing:0;max-width:200px;overflow:hidden;text-overflow:ellipsis}
.mx thead th.rh{z-index:3;background:var(--sunken)}
.mx td.c{cursor:pointer;min-width:38px}
.mx td.c:hover,.mx th.rh:hover,.mx thead th:hover{outline:2px solid var(--accent);outline-offset:-2px}
.mx td.tot,.mx th.tot{font-weight:700;background:var(--sunken)}
.mx td.on,.mx th.on{outline:2px solid var(--accent);outline-offset:-2px}
.drill{scroll-margin-top:130px;margin-top:14px;border-top:2px solid var(--accent);padding-top:12px}
.drill-h{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}
.drill-h h3{margin:0;margin-right:auto}
.drill table{min-width:760px}
.drill td,.drill th{font-size:13px}
.ext{color:var(--accent);font-weight:600;text-decoration:none;white-space:nowrap}
.ext:hover{text-decoration:underline}
.rt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.rt{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:6px;min-width:0}
.rt .nm{font-weight:700;display:flex;gap:8px;align-items:center;justify-content:space-between}
.rt .row{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.rt .btn{padding:5px 10px;font-size:12px}
.st-Customer,.st-Won{background:var(--ok-soft);color:var(--ok)}
.st-Prospect,.st-Draft{background:var(--sunken);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line)}
.st-Sent,.st-Presented{background:var(--accent-soft);color:var(--accent)}
.st-Lapsed,.st-Lost,.st-Not-a-fit{background:var(--warn-soft);color:var(--warn)}
.m-ok{color:var(--ok);font-weight:700}.m-bad{color:var(--crit);font-weight:700}
.calc{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:var(--sunken);border-radius:8px;padding:10px 12px}
.calc div{display:flex;flex-direction:column;font-size:12px;color:var(--muted)}
.calc b{font-size:16px;color:var(--ink);font-variant-numeric:tabular-nums}
.sw{position:relative;display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.sw input{position:absolute;opacity:0;width:1px;height:1px}
.sw span{width:34px;height:20px;border-radius:99px;background:var(--line);position:relative;transition:background .15s;flex:none}
.sw span::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}
.sw input:checked+span{background:var(--ok)}
.sw input:checked+span::after{left:16px}
.sw input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.sw em{font-style:normal;font-size:12px;color:var(--muted)}
.sw.big{padding-top:6px}
.dims{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.thumb{width:40px;height:40px;object-fit:contain;border-radius:6px;background:#fff;border:1px solid var(--line);flex:none}
.thumb.none{display:inline-block;background:var(--bg);border-style:dashed}
.pcell{display:flex;gap:10px;align-items:center}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;border-radius:10px;padding:2px}
.gal.drag,.gal-wrap.drag .gal{outline:2px dashed var(--accent);outline-offset:4px}
.gal figure{margin:0;display:flex;flex-direction:column;gap:4px}
.gal figure img{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:8px;display:block}
.gal figure.main img{border:2px solid var(--accent)}
.gal figcaption{display:flex;justify-content:space-between;gap:4px;font-size:12px;flex-wrap:wrap}.gal .lnk.on{font-weight:800;text-decoration:none;background:var(--accent-soft);border-radius:4px;padding:0 4px}
.gal .tag{font-weight:700;color:var(--accent)}
.lnk{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit;text-decoration:underline}
.lnk.bad{color:var(--bad,#b3261e)}
.gal-add{aspect-ratio:1;border:2px dashed var(--line);border-radius:8px;background:var(--bg);color:var(--ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:inherit;font-size:13px;padding:6px;text-align:center}
.gal-add b{font-size:24px;line-height:1}
.gal-add small{color:var(--muted);font-size:11px}
.gal-add:hover{border-color:var(--accent)}
.bd-items{display:flex;flex-direction:column;gap:6px;grid-column:1/-1}
.bd-item{display:grid;grid-template-columns:1fr 80px 90px auto;gap:8px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:13px}
.bd-item input{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:5px 8px}
.ev-year{font-family:var(--f-display);font-weight:800;font-size:18px;margin:14px 0 2px}
.ev-type-rel{background:var(--accent-soft);color:var(--accent)}
.ev-type-season{background:var(--own-soft);color:var(--own)}
.ev-type-trade{background:var(--sunken);color:var(--ink)}
.ev-type-dl{background:var(--warn-soft);color:var(--warn)}
.tbc{font-size:11px;font-weight:700;color:var(--warn);margin-left:6px}
.ev-form[hidden],.view[hidden]{display:none!important}
.ev-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin-bottom:14px}
@media (max-width:640px){
  .drawer-b{grid-template-columns:1fr}
  .ev{grid-template-columns:1fr;gap:6px}
  .hbars{grid-template-columns:minmax(80px,120px) 1fr 34px}
  .tl-row{grid-template-columns:150px 1fr}
}
@media (prefers-reduced-motion:no-preference){.drawer{animation:slide .18s ease-out}@keyframes slide{from{transform:translateX(30px);opacity:.6}}}
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);padding:9px 16px;border-radius:99px;font-weight:600;z-index:60;font-size:13px}

/* ===== Selected things stand out in the highlight colour (set in Settings › Branding) ===== */
:root{--sel:#1A73E8;--sel-soft:#E3EEFD;--on-sel:#FFFFFF}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--sel:#6EA8FF;--sel-soft:#1B2A45;--on-sel:#0B1530}}
:root[data-theme="dark"]{--sel:#6EA8FF;--sel-soft:#1B2A45;--on-sel:#0B1530}
nav button[aria-selected="true"]{color:var(--ink);border-color:var(--sel)}
nav button[aria-selected="true"] .n{background:var(--sel);color:var(--on-sel)}
.seg button[aria-pressed="true"]{background:var(--sel);color:var(--on-sel)}
.subtabs button[aria-selected="true"]{border-color:var(--sel)}
.role-tabs button[aria-selected="true"]{border-color:var(--sel);box-shadow:inset 0 -3px 0 var(--sel);background:var(--sel-soft)}
.filters select.on,.filters input.on,select.ctl.on,.bulk select.on,.cp-f select.on,.pg-filt select.on{background:var(--sel);color:var(--on-sel);border-color:var(--sel)}
tbody tr.sel td{background:var(--sel-soft)}
.tchip.on{background:var(--sel);border-color:var(--sel);color:var(--on-sel)}
.chip{background:var(--sel-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--sel)}.chip::after{color:var(--sel)}
.cat-item.on{border-color:var(--sel);box-shadow:inset 3px 0 0 var(--sel);background:var(--sel-soft)}
.cp-row.on{background:var(--sel-soft)}
.ta-i:hover,.ta-i.on{background:var(--sel-soft)}
.mx td.on,.mx th.on{outline-color:var(--sel)}
.pg-it.sel{outline-color:var(--sel)}
.dd details[open]>summary{background:var(--sel-soft)}
.sw-c.on{box-shadow:0 0 0 3px var(--sel)}
.th-chip.on i{box-shadow:0 0 0 2px var(--on-sel)}
:focus-visible{outline-color:var(--sel)}

/* list ordering */
.grip{cursor:grab;color:var(--muted);font-size:16px;line-height:1;user-select:none;padding:0 4px;display:inline-block}
[draggable="true"]{cursor:grab}[draggable="true"].dragging{opacity:.45;outline:2px dashed var(--sel);outline-offset:2px}
.ord-t{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.ord-hint{font-size:12px}
.gcard-w>.grip,.lic>.grip,.pgcard>.grip,.rcard>.grip{position:absolute;top:6px;left:6px;z-index:2}.gcard-w,.lic,.pgcard,.rcard{position:relative}
.cat-item>.grip{align-self:flex-end;margin-bottom:-18px}

/* planogram unit settings */
.pg-unit{border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:8px}.pg-unit[open]{padding-bottom:10px}
.pg-unit summary{cursor:pointer;font-weight:700;color:var(--ink);font-size:13px}.pg-unit>*+*{margin-top:8px}
.pg-shl-h{display:flex;justify-content:space-between;align-items:center;gap:6px}
.pg-shl{display:flex;flex-direction:column;gap:4px}
.pg-shi{display:grid;grid-template-columns:44px 72px 1fr auto;gap:6px;align-items:center;font-size:12px}.pg-shi input{padding:4px 6px!important}.pg-shi small{color:var(--muted)}.pg-shi.over small b{color:var(--crit)}
.pg-shi .btn.sm,.pg-shl-h .btn.sm,.pg-shl>.btn.sm{padding:2px 8px;font-size:12px;min-height:0}
.pg-hmsg{font-size:12px}.m-good{color:var(--ok)}
.pg-warn{grid-column:1/-1;display:flex;gap:8px;align-items:flex-start;background:var(--crit-soft,#FDECEC);color:var(--crit,#C92A2A);border:1px solid currentColor;border-radius:10px;padding:8px 12px;font-size:13px;text-align:left}.pg-warn svg{flex:none;width:18px;height:18px}
.pg-ghost.nofit{border-color:var(--crit,#C92A2A)!important;background:rgba(201,42,42,.15)!important}.pg-ghost span{white-space:nowrap}

/* key dates: colour by type, search, whole row clickable */
.evt{background:color-mix(in srgb,var(--evc,#5D6283) 14%,transparent);color:var(--evc,#5D6283);font-weight:700}
.evt-trade{--evc:#0B7A75}.evt-film{--evc:#C2185B}.evt-tv{--evc:#6A3FC9}.evt-anniv{--evc:#A86B00}.evt-season{--evc:#2E7D32}.evt-deadline{--evc:#D9480F}.evt-pres{--evc:#0B5CAD}.evt-internal{--evc:#5D6283}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .evt{background:color-mix(in srgb,var(--evc) 28%,transparent);color:color-mix(in srgb,var(--evc) 45%,#fff)}}
:root[data-theme="dark"] .evt{background:color-mix(in srgb,var(--evc) 28%,transparent);color:color-mix(in srgb,var(--evc) 45%,#fff)}
#evlist .ev{border-left:6px solid var(--evc,var(--line));cursor:pointer;transition:box-shadow .12s,transform .12s,border-color .12s}
#evlist .ev:hover{box-shadow:0 4px 14px rgba(4,30,66,.10);border-color:var(--evc);border-left-width:6px}
#evlist .ev:hover .ev-chev{transform:translateX(3px);color:var(--evc)}
#evlist .ev.is-going{background:color-mix(in srgb,var(--ok) 5%,var(--surface))}
.ev-act{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.ev-chev{font-size:22px;line-height:1;color:var(--muted);transition:transform .12s;padding-left:2px}
.ev-legend{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.ev-lg{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:99px;padding:4px 10px;font:inherit;font-size:12px;cursor:pointer}
.ev-lg i{width:10px;height:10px;border-radius:50%;background:var(--evc)}.ev-lg span{color:var(--muted);font-size:11px}
.ev-lg:hover{border-color:var(--evc)}.ev-lg.on{border-color:var(--evc);background:color-mix(in srgb,var(--evc) 14%,var(--surface));font-weight:700}
.kpi-click{cursor:pointer;transition:box-shadow .12s,border-color .12s}.kpi-click:hover{border-color:var(--sel);box-shadow:0 4px 14px rgba(4,30,66,.10)}
.kpi-list{display:flex;flex-direction:column;gap:4px;max-height:60vh;overflow:auto}
.kpi-row{display:flex;gap:10px;align-items:center;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font:inherit;color:inherit;cursor:pointer;font-size:13px}.kpi-row>span:nth-child(2){flex:1;display:flex;flex-direction:column}.kpi-row small{color:var(--muted)}
.kpi-row:hover{border-color:var(--sel);background:var(--sel-soft)}

/* products list: flush, one-line names */
#tbody .pcell{min-width:220px}#tbody .pcell>div{min-width:0;max-width:220px}
#tbody .pcell>div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#tbody .pcell .sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#tbody td{vertical-align:middle;white-space:nowrap}#tbody td .sub{white-space:nowrap}
/* product form: labels on one line so boxes line up */
.drawer-b .fld label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:15px}
.drawer-b .fld{justify-content:flex-start}
.drawer-b .sugg{display:none!important}
.ta-cur{color:var(--ok);font-weight:800;margin-right:6px}
.ta:focus-within,.ta:has(.ta-list:not([hidden])){z-index:70}.drawer-b .fld:focus-within{position:relative;z-index:70}
.ta.tadd input.has-sugg::placeholder{color:var(--sel);opacity:.9;font-style:italic}
.ta.tadd .ta-list .ta-h:first-child{color:var(--sel)}
.ta.tadd input{padding-right:28px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235D6283' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}
.fld.req>label::after{content:" *";color:var(--crit);font-weight:800}
.fld.missing input,.fld.missing select{border-color:var(--crit)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--crit) 18%,transparent)}
.fld.missing>label{color:var(--crit)}
.req-note{grid-column:1/-1;margin:0;font-size:12px;color:var(--muted)}.req-note .star{color:var(--crit);font-weight:800}
/* reports */
.rp-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.rp-2>.panel{margin:0;min-width:0}
@media (max-width:980px){.rp-2{grid-template-columns:1fr}}
.rp-t{min-width:0}.rp-t th.r,.rp-t td.r{text-align:right}.rp-t tbody tr{cursor:pointer}.rp-t tbody tr:hover td{background:var(--sel-soft)}
.rp-t td,.rp-t th{white-space:nowrap;padding:7px 8px}.rp-t .pc-t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}.rp-t .pc-t .sub,.rp-t td.r .sub{display:block;overflow:hidden;text-overflow:ellipsis}
.rp-top.bad .panel-h h3{color:var(--crit)}.rp-top.good .panel-h h3{color:var(--ok)}
.rp-top .panel-h,.rp-2 .panel-h{display:flex;gap:10px;align-items:center}.rp-2 .panel-h .btn{margin-left:auto}
.rp-scroll{max-height:460px;overflow:auto}
.rp-show{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin:-6px 0 10px;font-size:13px;color:var(--muted)}
.rp-bars{display:flex;flex-direction:column;gap:8px}.rp-bar{display:grid;grid-template-columns:120px 1fr 48px;gap:10px;align-items:center;font-size:13px}
.rp-bar .t{background:var(--sunken);border-radius:6px;height:18px;overflow:hidden}.rp-bar i{display:block;height:100%;background:var(--accent);border-radius:6px;min-width:2px}
.rp-bar i.crit{background:var(--crit)}.rp-bar i.warn{background:var(--warn)}.rp-bar i.ok{background:var(--ok)}.rp-bar b{text-align:right;font-variant-numeric:tabular-nums}
.note{background:var(--sunken);border-radius:10px;padding:10px 14px;font-size:13px;color:var(--muted);margin-bottom:16px}
/* timeline */
.tl-nav{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:-4px 0 8px}.tl-nav #tl-range{font-family:var(--f-display);font-size:16px;min-width:180px;text-align:center}.tl-nav .sp{flex:1}.tl-undl{font-size:13px;margin-left:8px}
.tlwrap{border:1px solid var(--line);border-radius:var(--r);background:var(--surface);overflow:auto;max-height:calc(100vh - 230px)}
.tl-row{grid-template-columns:260px 1fr}
.tl-sticky{position:sticky;top:0;z-index:6;background:var(--surface)}
.tl-months .tl-track{min-height:40px}
.tl-month{display:flex;flex-direction:column;justify-content:center;gap:0;padding:4px 8px;line-height:1.2}.tl-month b{font-size:11px}.tl-month span{font-size:10px;font-weight:600;color:var(--muted)}.tl-month.cur{background:var(--sel-soft);color:var(--sel)}.tl-month.yr{border-left:2px solid var(--ink)}
.tl-shade{position:absolute;top:0;bottom:0;pointer-events:none}.tl-shade.odd{background:color-mix(in srgb,var(--sunken) 55%,transparent)}.tl-shade.cur{background:color-mix(in srgb,var(--sel) 7%,transparent)}
.tl-today{border-left:2px solid var(--sel)!important}
.tl-todaylab{position:absolute;bottom:2px;transform:translateX(-50%);font-size:9px;font-weight:800;color:#fff;background:var(--sel);border-radius:99px;padding:0 6px;z-index:4;text-transform:uppercase;letter-spacing:.04em}
.tl-ev{border-left:1.5px dashed var(--evc)!important;opacity:.55}
.tl-evlab{position:absolute;display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:11px;font-weight:700;color:var(--ink);background:var(--surface);border:1.5px solid var(--evc);border-radius:99px;padding:1px 8px 1px 6px;white-space:nowrap;cursor:pointer;z-index:3;transform:translateX(-7px)}
.tl-evlab i{width:8px;height:8px;border-radius:50%;background:var(--evc);flex:none}.tl-evlab:hover{background:color-mix(in srgb,var(--evc) 14%,var(--surface))}
.tl-evspan{position:absolute;height:20px;background:color-mix(in srgb,var(--evc) 16%,transparent);border-radius:99px;z-index:2}
.tl-evkey{display:flex;flex-direction:column;gap:3px;font-size:11px;white-space:normal}.tl-evkey span{display:flex;align-items:center;gap:6px}.tl-evkey i{width:8px;height:8px;border-radius:50%;background:var(--evc)}
.tl-tg{display:flex;align-items:center;gap:6px;width:100%;background:var(--sunken);border:0;border-right:1px solid var(--line);font:inherit;color:inherit;cursor:pointer;text-align:left;font-family:var(--f-display);font-weight:600}
.tl-tg:hover{background:var(--sel-soft)}.tl-tg .car{width:12px;color:var(--muted)}.tl-tg .lg{max-height:18px}
.tl-sum{position:absolute;left:8px;top:7px;font-size:12px;color:var(--muted)}
.tl-plab{display:flex;gap:8px;align-items:center;background:none;border:0;border-right:1px solid var(--line);font:inherit;font-size:13px;color:inherit;cursor:pointer;text-align:left;padding-left:30px}.tl-plab:hover{color:var(--sel);text-decoration:underline}
.tl-plab .mono{font-size:11px;color:var(--muted);flex:none}
.tl-prow:hover .tl-track{background:color-mix(in srgb,var(--sel) 4%,transparent)}
.tl-bar{top:6px;height:20px;border-radius:5px;opacity:1;display:flex;align-items:center;overflow:hidden;z-index:2;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.tl-bar span{color:#fff;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px}
.tl-bar.undated{opacity:.35}
.tl-barlab{position:absolute;top:8px;font-size:11px;color:var(--muted);white-space:nowrap;z-index:2;pointer-events:none}
.tl-pin{position:absolute;top:4px;width:4px;height:24px;border-radius:2px;transform:translateX(-2px);z-index:3}.tl-pin.start{background:var(--ok)}.tl-pin.end{background:var(--crit)}
.lg-pin{width:4px!important;border-radius:2px}
.tl-empty{position:absolute;left:24px;top:24px;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted);background:var(--surface);padding:12px 16px;border-radius:10px;border:1px solid var(--line);z-index:4}.tl-empty b{color:var(--ink)}
@media (max-width:760px){.tl-row{grid-template-columns:150px 1fr}.tl-plab{padding-left:12px}}

/* main brand: IQ 360 with tagline */
.brand-txt{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;min-width:0}
.brand #brand-name{font-family:var(--f-display);font-weight:800;font-size:26px;letter-spacing:-.02em;color:var(--accent);line-height:1}
.brand #brand-tag{font-family:var(--f-body,inherit);font-weight:600;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding-left:12px;border-left:2px solid var(--line);line-height:1.2}
@media (max-width:700px){.brand-txt{flex-direction:column;gap:2px;align-items:flex-start}.brand #brand-tag{border-left:0;padding-left:0;font-size:10.5px}.brand #brand-name{font-size:22px}}

/* suppliers */
.su-miss{background:var(--warn-soft);border-radius:10px;padding:10px 14px;font-size:13px;margin-bottom:14px;display:flex;gap:6px;flex-wrap:wrap;align-items:center}.su-miss b{margin-right:6px}
.su-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.su-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);display:flex;flex-direction:column;overflow:hidden}.su-card>.grip{position:absolute;top:6px;right:6px;z-index:2}
.su-h{display:flex;gap:12px;align-items:center;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 14px;font:inherit;color:inherit;cursor:pointer}.su-h:hover{background:var(--sel-soft)}
.su-h b{display:block;font-family:var(--f-display);font-size:16px}.su-h small{color:var(--muted);font-size:12px}
.su-ini{width:40px;height:40px;border-radius:10px;background:var(--accent);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-weight:800;flex:none}
.su-b{padding:10px 14px 12px;display:flex;flex-direction:column;gap:8px;font-size:13px;flex:1}.su-c{display:flex;flex-direction:column;gap:1px}.su-c .muted{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.su-links{display:flex;flex-wrap:wrap;gap:4px 12px}.su-f{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:auto}
.su-crow{display:grid;grid-template-columns:1.2fr 1.2fr 1.4fr 1fr 1fr auto;gap:6px;margin-bottom:6px}.su-lrow{display:grid;grid-template-columns:1fr 2fr auto;gap:6px;margin-bottom:6px}
@media (max-width:760px){.su-crow{grid-template-columns:1fr 1fr}}
.f-supinfo{font-size:12px}.f-supinfo:empty{display:none}
input.autofill{background:var(--sel-soft)!important;transition:background .6s}
/* quick lead on the stand */
.lead-p{border:2px solid var(--sel)}
.lead-f{display:flex;flex-direction:column;gap:12px}
.lead-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.lead-g2{grid-template-columns:3fr 1fr;align-items:end}
.lead-g label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.lead-g input,.lead-g select,.lead-g textarea{font:inherit;font-size:14px;text-transform:none;letter-spacing:0;font-weight:500;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;width:100%}
.lead-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.lead-chips .tchip{cursor:pointer;font:inherit;font-size:13px}
.lead-chips .tchip[aria-pressed="true"]{background:var(--sel);color:var(--on-sel);border-color:var(--sel)}
.lead-temp{display:flex;flex-direction:column;gap:4px}
.seg .lt-hot[aria-pressed="true"]{background:var(--crit)!important;border-color:var(--crit)!important;color:#fff!important}.seg .lt-warm[aria-pressed="true"]{background:var(--warn)!important;border-color:var(--warn)!important;color:#fff!important}.seg .lt-cold[aria-pressed="true"]{background:#4A6FA5!important;border-color:#4A6FA5!important;color:#fff!important}
.pill.lt-hot{background:var(--crit);color:#fff}.pill.lt-warm{background:var(--warn-soft);color:var(--warn)}.pill.lt-cold{background:var(--sunken);color:var(--muted)}
.lead-a{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lead-sum{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 12px}.lead-sum>div{background:var(--bg);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;font-size:12px;color:var(--muted)}.lead-sum b{font-size:20px;color:var(--ink);font-family:var(--f-display)}
.lead-sum .ls-w{flex-direction:row;flex-wrap:wrap;gap:4px;align-items:center;flex:1;min-width:220px}
.bc-grp{font-size:13px}.bc-next{font-size:12px;color:var(--sel);font-weight:700}
@media (max-width:900px){.lead-g{grid-template-columns:1fr 1fr}.lead-g2{grid-template-columns:1fr}}

/* catalogue options */
.cat-up{display:flex;gap:14px;align-items:flex-start;background:var(--bg);border:1px dashed var(--line);border-radius:10px;padding:10px;margin:6px 0}.cat-up p{margin:4px 0 8px;font-size:12px}
.cat-upimg{width:90px;aspect-ratio:210/297;background:var(--surface);border:1px solid var(--line);border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none;font-size:11px;text-align:center}.cat-upimg img{width:100%;height:100%;object-fit:cover}
.cat-lay,.cat-foot{display:flex;flex-direction:column;gap:6px}
.cat-lay-c{display:flex;gap:8px;flex-wrap:wrap}
.cat-pp{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--surface);border:1.5px solid var(--line);border-radius:10px;padding:6px 8px;cursor:pointer;font:inherit;font-size:12px;font-weight:700;color:var(--ink)}
.cat-pp i{display:grid;gap:2px;width:42px;height:56px;padding:3px;background:var(--bg);border-radius:3px;align-content:start}.cat-pp i b{background:var(--muted);opacity:.45;border-radius:1px;aspect-ratio:1}
.cat-pp.on{border-color:var(--sel);background:var(--sel-soft)}.cat-pp.on i b{background:var(--sel);opacity:.8}
.cat-hdr img{max-height:70px;border-radius:6px}
/* planogram setup / products tabs */
.pg-tabs{display:flex;flex:none;height:auto!important;position:sticky;top:-12px;z-index:6;background:var(--surface);box-shadow:0 -12px 0 var(--surface)}.pg-tabs button{flex:1}.pg-side>.ps,.pg-side>.pg-pal-h{flex-shrink:0}
.pg-side.show-setup .pp{display:none!important}.pg-side.show-prods .ps{display:none!important}
.pg-unit-h{font-weight:700;color:var(--ink);font-size:13px}
.pg-tw-n{font-size:11px;align-self:end;padding-bottom:4px}
.pg-shi{grid-template-columns:44px 72px 1fr auto}.pg-shb{display:flex;gap:4px;align-items:center}
.pg-posth{border:1px solid var(--line);border-radius:4px;padding:0;background:none;cursor:pointer;width:40px;height:18px;overflow:hidden}.pg-posth img{width:100%;height:100%;object-fit:cover;display:block}

.sync{background:var(--warn-soft);color:var(--warn);padding:3px 10px;border-radius:99px;font-weight:600}
/* bundles on planograms */
.pg-bi{border-left:4px solid #B86E00}.pg-bi .bi-c{color:var(--muted)}
.pill.bdl-p{background:#FFF4D6;color:#8A5200}

/* bundles / CDUs */
.bd-auto{margin-left:8px;color:var(--ok);font-weight:600}
.bd-pos{display:flex;flex-direction:column;gap:10px}
.bp-row{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}
.bp-h{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.bp-h b{font-size:14px}.bp-h .muted{font-size:12px;text-transform:none;letter-spacing:0}
.bp-sz{display:flex;gap:6px;align-items:center;margin-left:auto;font-size:12px}.bp-sz label{display:flex;gap:4px;align-items:center;text-transform:none;letter-spacing:0;font-weight:600;color:var(--muted)}
.bp-sz input{width:70px!important;padding:5px 7px!important}
.bp-row .gal-wrap{min-height:0}
#bd-form .fld.missing input{border-color:var(--crit)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--crit) 18%,transparent)}

/* header logos only */
#be-sel,#be-sel-reset,.sel-demo{display:none!important}
/* Pantone 282 C selected; default blue secondary */
:root{--sel2:#1A73E8}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--sel2:#6EA8FF}}
:root[data-theme="dark"]{--sel2:#6EA8FF}
:focus-visible{outline-color:var(--sel2)!important}
a,.linkbtn,.lnk{color:var(--sel2)}
.seg button[aria-pressed="true"]{background:var(--sel)!important;color:var(--on-sel)!important}
.tchip.on,.tchip[aria-pressed="true"]{background:var(--sel)!important;border-color:var(--sel)!important;color:var(--on-sel)!important}
tbody tr.sel td{background:var(--sel-soft)}tbody tr.sel td:first-child{box-shadow:inset 3px 0 0 var(--sel)}
.ta-i:hover,.ta-i.on{background:var(--sel-soft)}
/* POS & Displays library */
.pl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.pl-card{display:flex;flex-direction:column;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;overflow:hidden;padding:0;cursor:pointer;font:inherit;color:inherit}
.pl-card:hover{border-color:var(--sel2);box-shadow:0 2px 10px rgba(4,30,66,.08)}
.pl-face{height:90px;background:var(--sunken);display:flex;align-items:center;justify-content:center;overflow:hidden}.pl-face img{width:100%;height:100%;object-fit:contain}
.pl-face .pf-c{font-size:13px;height:auto;padding:8px 12px;width:auto;border-radius:6px;max-width:90%}
.pl-face.k-strip .pf-c{width:90%;height:22px;border-radius:2px}.pl-face.k-wobbler .pf-c{width:60px;height:60px;border-radius:50%}.pl-face.k-side .pf-c{width:22px;height:70px}
.pl-b{padding:8px 12px 10px;display:flex;flex-direction:column;gap:1px}.pl-b b{font-size:14px}.pl-b small{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:6px}
.sw{display:inline-block;width:12px;height:12px;border-radius:3px;border:1px solid var(--line)}
.fx-draw{display:flex;flex-direction:column;gap:3px;width:70px;height:76px;border:3px solid var(--c);border-top-width:5px;padding:3px;background:var(--surface)}.fx-draw b{flex:1;border-bottom:2px solid var(--c)}
.pg-lib{font-size:12px;align-self:end;padding-bottom:6px}
.pg-shi{grid-template-columns:44px 64px 1fr auto}.pg-strip{max-width:118px;font-size:11px;padding:3px 4px!important}
.pg-ipos{flex-basis:100%;display:flex;flex-wrap:wrap;gap:8px;align-items:end;border-top:1px dashed var(--line);padding-top:8px;margin-top:4px}
.pg-ipos label{display:flex;flex-direction:column;gap:2px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.pg-ipos select{font-size:13px;padding:4px 6px;min-width:130px;text-transform:none;letter-spacing:0;font-weight:500}
#pg-insp{flex-wrap:wrap}

/* catalogue editor: collapsible page groups */
.cat-sum{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-bottom:10px}.cat-sum b{font-family:var(--f-display);font-size:18px}
.cat-acc{border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:10px;overflow:hidden}
.cat-acc>summary{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;flex-wrap:wrap}.cat-acc>summary::-webkit-details-marker,.cat-sec>summary::-webkit-details-marker{display:none}
.cat-acc>summary:hover{background:var(--sel-soft)}.cat-acc[open]>summary{border-bottom:1px solid var(--line);box-shadow:inset 4px 0 0 var(--sel)}
.ca-t{font-family:var(--f-display);font-weight:700;font-size:16px}.ca-t .n{font-size:11px;background:var(--sunken);border-radius:99px;padding:1px 8px;margin-left:4px;font-family:inherit}.ca-s{font-size:13px}
.ca-b{padding:14px;display:flex;flex-direction:column;gap:12px}
.cat-acc .chev,.cat-sec .chev{width:10px;height:10px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .15s;flex:none;margin:0 4px}
.cat-acc[open]>summary .chev,.cat-sec[open]>summary .chev{transform:rotate(45deg)}
.cat-sec{border:1px solid var(--line);border-radius:10px;background:var(--bg);margin-bottom:8px}
.cat-sec>summary{display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer;list-style:none;flex-wrap:wrap}.cat-sec>summary b{font-size:14px}
.cat-sec>summary .cs-a{margin-left:auto;display:flex;gap:4px}.cat-sec .btn.sm{padding:3px 9px;font-size:12px;min-height:0}
.cat-sec .cs-b{padding:4px 12px 12px;display:flex;flex-direction:column;gap:10px}
.ca-b .cat-top{margin:0}
@media (prefers-reduced-motion:reduce){.cat-acc .chev,.cat-sec .chev{transition:none}}

/* bundles on product rows */
.in-bdl{display:inline-block;margin-top:3px;font-size:11px;font-weight:700;color:#8A5200;background:#FFF4D6;border-radius:99px;padding:1px 8px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dr-bdl{background:#FFF8E6;border:1px solid #F0D79A;border-radius:10px;padding:8px 10px}
.be-hint{font-size:12px;max-width:240px}.be-prev2 img{max-height:56px}
img[draggable],[draggable="true"] img{-webkit-user-drag:none;user-select:none}
.grip{opacity:.55}.grip:hover{opacity:1}

/* attending: Pantone 282 C when attending, light blue when not */
.att-tg{background:#E3EEFD;border-color:#BCD3F5;color:#041E42}
.att-tg .tick{border-color:#8FB3EA;background:#fff}
.att-tg:hover{border-color:#041E42;color:#041E42}.att-tg:hover .tick{border-color:#041E42;color:#041E42}
.att-tg.on{background:#041E42;border-color:#041E42;color:#fff}.att-tg.on .tick{background:#fff;border-color:#fff;color:#041E42}
.att.yes{background:#041E42;color:#fff}
.ts-card.is-att{border-color:#041E42;box-shadow:inset 0 4px 0 #041E42}
#evlist .ev.is-going{background:color-mix(in srgb,#1A73E8 6%,var(--surface))}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .att-tg{background:#1B2A45;border-color:#2F4A7A;color:#CFE0FF}:root:not([data-theme="light"]) .att-tg.on{background:#5B7DB8;border-color:#5B7DB8}}
:root[data-theme="dark"] .att-tg{background:#1B2A45;border-color:#2F4A7A;color:#CFE0FF}:root[data-theme="dark"] .att-tg.on{background:#5B7DB8;border-color:#5B7DB8}

/* timeline dates */
.tl-cust{display:inline-flex;gap:6px;align-items:center}.tl-cust input{width:auto}
.tl-wk{position:absolute;top:0;bottom:0;border-left:1px dotted var(--line);pointer-events:none}
.tl-wkl{position:absolute;bottom:1px;font-size:9px;color:var(--muted);transform:translateX(-50%);font-weight:600}

.mx thead th{background:#041E42!important;color:#fff!important;border-color:#041E42!important}
.mx thead th.on{background:#1A73E8!important}
.mx thead th:hover{background:#0B2D5C!important}
.cf-ic.cf-save{background:var(--sel-soft);color:var(--sel)}
.ta-pn{display:flex;flex-direction:column;min-width:0}.ta-pn b{font-weight:700}.ta-pn small{color:var(--muted);font-size:11px}
.np-sec{border-top:1px solid var(--line);padding-top:10px;margin-top:4px}.np-sec h4{margin:0;font-family:var(--f-display);font-size:15px;color:var(--ink);text-transform:none;letter-spacing:0}.np-sec .muted{font-size:12px;text-transform:none;letter-spacing:0;font-weight:500}
.np-up{font-size:12px;align-self:flex-start;margin-top:4px;padding:0}.np-calc{font-size:12px}
#md-form label.chk,.ev-form label.chk{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:8px;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;font-weight:500!important;color:var(--ink)!important;text-align:left}
#md-form label.chk input,.ev-form label.chk input{width:auto!important;flex:none;margin:0}

/* planogram 3D mockup */
.p3-btn{background:#041E42;color:#fff;border-color:#041E42}.p3-btn:hover{background:#0B2D5C}
.p3-wrap{position:absolute;inset:0;z-index:30;background:var(--bg);display:flex;flex-direction:column}
.p3-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface)}
.p3-top>div:first-child{display:flex;flex-direction:column}.p3-top b{font-family:var(--f-display);font-size:17px}.p3-hint{font-size:12px;margin-right:auto}
.p3-z{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.p3-pos{font-size:13px}
.p3-stage{flex:1;position:relative;overflow:hidden;perspective:1800px;perspective-origin:50% 40%;cursor:grab;background:radial-gradient(ellipse at 50% 30%,#FFFFFF 0%,#E6EAF1 70%,#D6DCE6 100%);touch-action:none}
.p3-stage.drag{cursor:grabbing}
.p3-scene{position:absolute;left:50%;top:50%;transform-style:preserve-3d;transition:transform .12s ease-out}
.p3-stage.drag .p3-scene{transition:none}
.b3{position:absolute;transform-style:preserve-3d}
.b3 .f{position:absolute;display:block;overflow:hidden}
.b3 .fr{inset:0}
.b3 .tp{left:0;top:0;width:100%;transform-origin:top;transform:rotateX(-90deg)}
.b3 .bt{left:0;bottom:0;width:100%;transform-origin:bottom;transform:rotateX(90deg)}
.b3 .lf{left:0;top:0;height:100%;transform-origin:left;transform:rotateY(90deg)}
.b3 .rt{top:0;height:100%;transform-origin:left;transform:rotateY(90deg)}
.b3 .bk{inset:0}
.p3-it .fr{box-shadow:inset 0 0 0 1px rgba(4,30,66,.18)}
.p3-fa{display:flex;width:100%;height:100%}.p3-u{flex:1;display:flex;align-items:center;justify-content:center;border-right:1px solid rgba(4,30,66,.12);min-width:0;overflow:hidden}.p3-u:last-child{border-right:0}
.p3-u img{width:100%;height:100%;object-fit:contain}.p3-u em{font-style:normal;font-size:9px;font-weight:700;color:#041E42;writing-mode:horizontal-tb;padding:0 2px;text-align:center}
.p3-plane .fr img,.p3-dhdr .fr img{width:100%;height:100%;object-fit:cover;display:block}
.p3-plane .pf-c,.p3-dhdr .pf-c{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:10px;font-weight:700;overflow:hidden;white-space:nowrap}
.p3-wob .fr{border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.3)}
.p3-strip .fr{box-shadow:0 1px 2px rgba(0,0,0,.25)}
.p3-floor{position:absolute;transform-origin:top;background:radial-gradient(ellipse at 50% 30%,rgba(4,30,66,.22),rgba(4,30,66,0) 70%);pointer-events:none}
.p3-note{margin:0;padding:6px 16px 10px;font-size:12px;background:var(--surface);border-top:1px solid var(--line)}
@media (prefers-reduced-motion:reduce){.p3-scene{transition:none}}

/* bays as separate sections */
.pg-bay{position:absolute;top:-3px;bottom:-3px;width:6px;transform:translateX(-3px);background:#6B7389;border:0;z-index:4;pointer-events:none;box-shadow:0 0 0 2px var(--surface)}
.pg-bayover{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,rgba(201,42,42,.12) 0 8px,transparent 8px 16px);border-bottom:4px solid #C92A2A;pointer-events:none}
.pg-ruler span{border-right:2px solid var(--line)}.pg-ruler span:last-child{border-right:0}
.pg-bwl{display:flex;flex-direction:column;gap:4px}.pg-bws{display:flex;flex-wrap:wrap;gap:6px}.pg-bws label{display:flex;flex-direction:column;gap:2px;font-size:11px;width:72px}.pg-bws input{padding:4px 6px!important}
/* active groups */
.g-act{position:absolute;right:56px;top:8px;font-size:11px;font-weight:700;border-radius:99px;padding:2px 8px;cursor:pointer;background:#E3EEFD;color:#041E42;border:1px solid #BCD3F5;z-index:2}
.g-act.on{background:#041E42;color:#fff;border-color:#041E42}
.g-row .g-act{position:static;margin-left:6px}
.inact-note{background:#FFF8E6;border:1px solid #F0D79A;border-radius:10px;padding:8px 12px;font-size:13px;margin:0 0 12px}
.np-newg{display:flex;flex-direction:column;gap:6px}

.bd-lock[aria-pressed="true"]{background:var(--sel,#041E42);color:#fff;border-color:var(--sel,#041E42)}
.bd-lockmsg{flex-basis:100%;margin-top:8px;font-size:13px;background:#EEF4FD;border:1px solid #C9DAF6;border-radius:8px;padding:6px 10px;color:#1F2A44}
.bd-lockmsg .linkbtn{margin-left:8px;font-size:13px}
.backbar{margin:8px 0 10px}.backbtn{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:5px 12px}.backbtn .bk-to{color:var(--muted,#5D6283);font-weight:500}
.gal figure.is-pdf a{position:relative;display:block}.pdf-b{position:absolute;left:6px;top:6px;background:#C92A2A;color:#fff;font-size:10px;font-weight:700;border-radius:4px;padding:1px 5px;letter-spacing:.03em}

/* ---- v39: phone layout (iPhone Pro Max and smaller) ---- */
.m-menu{display:none!important}.f-tog{display:none}
.mm-wrap{position:fixed;inset:0;z-index:70}.mm-scrim{position:absolute;inset:0;background:rgba(4,30,66,.45)}
.mm-box{position:absolute;left:0;right:0;top:0;background:var(--surface);border-radius:0 0 18px 18px;padding:calc(12px + env(safe-area-inset-top,0px)) 16px 18px;max-height:88vh;overflow:auto;box-shadow:0 10px 40px rgba(0,0,0,.25)}
.mm-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.mm-h b{font-family:var(--f-display);font-size:18px}
.mm-g{margin-top:12px}.mm-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.mm-grid button{font:inherit;font-weight:600;font-size:15px;text-align:left;padding:12px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}
.mm-grid button[aria-current="true"]{background:#041E42;border-color:#041E42;color:#fff}
.m-menu .mm-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;vertical-align:-4px}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:34px;padding:0}.icon-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.att-pair{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.att-no{display:inline-flex;align-items:center;gap:5px;border:1.5px solid #F2C4C4;background:#FFF5F5;color:#9B2C2C;border-radius:99px;padding:5px 11px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.att-no:hover{border-color:#C92A2A}.att-no.on{background:#F8D7D7;border-color:#E39B9B;color:#8A1F1F}
.ev.is-notgoing{background:#FDECEC!important;border-color:#F2C4C4!important}.ev.is-notgoing .when b{color:#8A1F1F}
.ts-card.is-not{background:#FDF1F1;border-color:#F2C4C4;box-shadow:inset 0 4px 0 #E39B9B}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ev.is-notgoing{background:#3A1E22!important;border-color:#6B2F35!important}:root:not([data-theme="light"]) .att-no{background:#3A1E22;border-color:#6B2F35;color:#F3B5B5}:root:not([data-theme="light"]) .ts-card.is-not{background:#2E1C20}}
.cm-sw{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted)}
.rg-bsum{font-size:inherit;padding:0}.rg-bsum.warn{color:#B4530A}
td.seas .s1{white-space:nowrap}td.seas .s2{display:inline-block;margin-left:6px;padding:0 7px;border-radius:99px;background:var(--sel-soft);font-size:12px;white-space:nowrap}
@media (max-width:600px){
  html{-webkit-text-size-adjust:100%}
  input,select,textarea{font-size:16px!important}
  .wrap{padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
  .m-menu{display:inline-flex;align-items:center;gap:6px;position:sticky;left:0;z-index:2;flex:none;font:inherit;font-weight:700;font-size:14px;padding:7px 12px;margin:0 6px 6px 0;border-radius:99px;border:1px solid var(--line);background:var(--surface);color:var(--ink);box-shadow:6px 0 10px -4px var(--bg);cursor:pointer}
  .f-tog{display:inline-flex;align-items:center;gap:4px}
  #filterbar .filters{gap:6px;padding-block:8px}
  #filterbar .filters>#q-wrap{flex:1 1 100%;order:-1}
  #filterbar:not(.open) .filters>select{display:none}
  #filterbar.open .filters>select{flex:1 1 calc(50% - 6px);min-width:0}
  .bar-top{gap:8px}.bar-top h2{font-size:22px;flex:1 1 100%}
  .bar-top>.muted{flex:1 1 100%}
  .kpis{grid-template-columns:1fr 1fr!important}
  .modal{width:100%;max-height:100dvh;border-radius:0;height:100dvh}
  .mwrap{padding:0!important;align-items:stretch!important}.modal.wide{width:100%!important}
  .drawer{width:100%!important;max-width:100%!important}
  .tablewrap{-webkit-overflow-scrolling:touch}
  .ev-act{flex-wrap:wrap;gap:6px}
  .bd-ctl{margin-left:0;width:100%}.bd-ctl select{flex:1 1 40%}
  .backbar{margin:4px 0 10px}
  .toast{max-width:calc(100vw - 32px);text-align:center;border-radius:14px}
  .gl-bar{flex-wrap:wrap}.gl-bar input[type=search]{flex:1 1 100%}
  .seg{overflow-x:auto;max-width:100%;flex-wrap:nowrap}
  .pg-head,.pg-top{flex-wrap:wrap}
}

.mx tr.mx-grp th.rh{font-weight:800}.mx tr.mx-sub th.rh{padding-left:22px;font-weight:500;font-size:12.5px;color:var(--muted)}
.mx tr.mx-sub th.rh::before{content:"› ";color:var(--line)}

.rp-click{cursor:pointer}.kpi.rp-click:hover,.kpi.rp-click.on{box-shadow:inset 0 0 0 2px var(--sel)}
button.rp-bar{font:inherit;color:inherit;background:none;border:0;text-align:left;box-sizing:border-box;width:100%;cursor:pointer;border-radius:6px;padding:3px 4px;grid-template-columns:minmax(110px,180px) 1fr 48px}
button.rp-bar:hover,button.rp-bar.on{background:var(--sel-soft)}button.rp-bar:focus-visible{outline:2px solid var(--sel)}
tr.rp-click:hover td{background:var(--sel-soft)}
.rp-dr{border:2px solid var(--sel)}.rp-gaps .rp-bar i{background:#C92A2A}.rp-gaps h3{color:#C92A2A}
.gap-chip{display:inline-block;margin:1px 4px 1px 0;padding:0 7px;border-radius:99px;background:#FDECEC;color:#B42318;font-size:11.5px;font-weight:600;white-space:nowrap}.gap-chip.on{background:#C92A2A;color:#fff}

.ctry{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:1px 8px 1px 6px;border-radius:99px;background:color-mix(in srgb,var(--cc) 12%,var(--surface));color:var(--cc);border:1px solid color-mix(in srgb,var(--cc) 35%,transparent);vertical-align:middle;white-space:nowrap}
h2 .ctry{font-size:13px;margin-left:6px}
.ctry-row{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 10px}
.ctry-chip{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:13px;font-weight:600;padding:5px 11px;border-radius:99px;border:1.5px solid color-mix(in srgb,var(--cc,#041E42) 40%,transparent);background:color-mix(in srgb,var(--cc,#041E42) 8%,var(--surface));color:var(--ink);cursor:pointer}
.ctry-chip span:last-child{color:var(--muted);font-weight:500}.ctry-chip.on{background:var(--cc,#041E42);border-color:var(--cc,#041E42);color:#fff}.ctry-chip.on span:last-child{color:#fff}
.ts-card{border-top:4px solid var(--cc,#8A93A8)}
.ts-open{position:relative}.ts-cc{position:absolute;left:8px;top:8px}.ts-cc .ctry{background:rgba(255,255,255,.94)}
.ts-logo{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:120px;background:#fff;padding:14px;box-sizing:border-box}.ts-logo img{max-width:100%;max-height:110px;object-fit:contain}
.ts-ph{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:linear-gradient(135deg,color-mix(in srgb,var(--cc,#041E42) 85%,#000),var(--cc,#041E42))!important;color:#fff!important}
.ts-ph b{font-family:var(--f-display);font-size:30px;letter-spacing:.04em}.ts-ph small{font-size:22px}
.ts-hlogo{flex:0 0 auto;width:96px;height:72px;border:1.5px dashed var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:6px;margin-right:12px;font:inherit;color:var(--muted);font-weight:600;font-size:13px}
.ts-hlogo img{max-width:100%;max-height:100%;object-fit:contain}.ts-hlogo:has(img){border-style:solid}
.ts-bar{align-items:center}.ts-dt{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);font-weight:600}
.ld-scan{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:var(--sel-soft);margin-bottom:10px}.ld-scan .muted{font-size:12.5px}
.icb svg{width:16px;height:16px}
@media (max-width:600px){.ts-dt{flex:1 1 45%}.ts-dt input{flex:1;min-width:0}.ghead{flex-wrap:wrap}.ts-hlogo{width:72px;height:56px}}

.sold-on{display:flex;flex-direction:column;gap:4px}.sold-on .chk{font-size:13.5px;text-transform:none;letter-spacing:0;font-weight:600;color:var(--ink)}.sold-on .muted{font-weight:500;font-size:12px}
#bd-split{display:flex;flex-direction:column;gap:6px}.sp-sum{font-size:13.5px;padding:8px 10px;background:var(--sel-soft);border-radius:8px}
.sp-row{display:grid;grid-template-columns:1fr auto 70px;gap:10px;align-items:center;padding:6px 8px;border:1px solid var(--line);border-radius:8px}
.sp-n{display:flex;gap:8px;align-items:center;min-width:0}.sp-n small{display:block;color:var(--muted);font-size:11.5px}.sp-l{font-size:12px;color:var(--muted)}
.sp-make{border:1px dashed var(--line);border-radius:10px;padding:8px 12px}.sp-make summary{cursor:pointer;font-weight:700;font-size:13.5px}
.sp-g{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:8px 0}.sp-g label,.sp-names{display:flex;flex-direction:column;gap:3px;font-size:12px;font-weight:600;color:var(--muted)}.sp-g input{width:120px}.sp-names{margin:6px 0}.sp-names textarea{width:100%}
.dr-inb{background:var(--sel-soft);border-radius:10px;padding:10px 12px}.dr-inb .pair{display:grid;grid-template-columns:1fr 90px;gap:8px}.dr-inb #f_bdnew{grid-template-columns:1fr 160px;margin-top:6px}.dr-inb.missing{box-shadow:inset 0 0 0 2px var(--crit)}

@media (max-width:600px){ .rp-2{grid-template-columns:1fr!important} }
label.sw{width:auto;height:auto;border:0;border-radius:0;display:inline-flex}.cm-sw label[for]{cursor:pointer}
.sold-f{grid-column:span 2}@media (max-width:600px){.sold-f{grid-column:1/-1}}

/* v40: attendance outlines, spacing */
#evlist .ev.is-going{border:2px solid #16A34A!important;box-shadow:none}
#evlist .ev.att-off{border:2px solid #E5484D!important}
.ts-card.is-att{border:2px solid #16A34A!important;border-top:4px solid var(--cc,#16A34A)!important;box-shadow:none!important}
.ts-card.is-not{border:2px solid #E5484D!important;border-top:4px solid var(--cc,#E5484D)!important;background:var(--surface)!important;box-shadow:none!important}
.att-tg{background:#E3EEFD;border-color:#BCD3F5;color:#041E42}.att-tg.on{background:#041E42;border-color:#041E42;color:#fff}
.miss-red{color:#C92A2A;font-weight:700;font-size:12px}
.kpi.crit .v{color:#C92A2A}
.bar-top{margin-top:4px}
.backbar+.view .bar-top,.view>.bar-top:first-child{margin-top:0}
.ghead,.panel,.kpis{margin-bottom:14px}
.dr-own{margin-top:6px}

.lb-drop{display:flex;flex-direction:column;gap:4px;align-items:center;text-align:center;padding:22px 16px;border:2px dashed var(--line);border-radius:12px;cursor:pointer;background:var(--bg)}
.lb-drop.drag,.lb-drop:hover{border-color:var(--sel);background:var(--sel-soft)}.lb-drop .muted{font-size:12.5px;max-width:52ch}
.lb-list{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow:auto;margin-top:8px}
.lb-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:6px 10px;border:1px solid var(--line);border-radius:10px}
.lb-row.new{border-color:#16A34A;background:color-mix(in srgb,#16A34A 6%,var(--surface))}
.lb-img{width:64px;height:44px;border-radius:8px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}.lb-img img{max-width:90%;max-height:90%;object-fit:contain}.lb-img b{font-size:13px;color:#041E42}
.lb-n{display:flex;flex-direction:column;min-width:0}.lb-n small{font-size:12px;color:var(--muted)}
.btn .n{font-size:11px;margin-left:4px;padding:0 6px;border-radius:99px;background:#FDECEC;color:#B42318}
#brand-home{cursor:pointer}#brand-home:focus-visible{outline:2px solid var(--sel);outline-offset:4px;border-radius:6px}
.chips:empty{display:none}
#filterbar .filters{padding-block:10px 6px}
main.wrap{padding-top:12px}main.wrap>.backbar{margin-top:0}
.cm-sw .sw input:checked+span{background:#1A73E8}.cm-sw label[for]{color:#1A73E8}
.bd-lock{font-size:17px;line-height:1;padding:6px 10px;min-width:40px}
.bk-list{display:flex;flex-direction:column;gap:6px;margin-top:6px}.bk-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px}.bk-row span{display:flex;flex-direction:column}.bk-row small{color:var(--muted);font-size:12px}

/* ===== v47: Front End, Sales, group pricing, EPOS, Time Planner ===== */
.tl-day{position:absolute;top:2px;font-size:10.5px;color:var(--muted);text-align:center;white-space:nowrap;overflow:hidden}.tl-day.we{color:#B4530A}
.tl-cust{display:inline-flex;align-items:center;gap:6px}
.fe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}
.fe-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 0 14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:inset 0 4px 0 var(--chc)}
.fe-card.on{border-color:var(--chc);box-shadow:inset 0 4px 0 var(--chc),0 0 0 1px var(--chc)}
.fe-h{display:flex;flex-direction:column;gap:2px;padding:18px 18px 12px;background:color-mix(in srgb,var(--chc) 6%,var(--surface))}
.fe-h h3{margin:0;font-family:var(--f-display);font-size:22px;color:var(--chc)}.fe-kind{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--chc)}
.fe-h .muted{font-size:13px}.fe-url{font-size:13px;font-weight:600;margin-top:4px}.fe-h .linkbtn{align-self:flex-start;font-size:12.5px;padding:0}
.fe-stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}
.fe-stats div{display:flex;flex-direction:column;padding:10px 18px;border-right:1px solid var(--line)}.fe-stats div:last-child{border-right:0}
.fe-stats b{font-size:20px;font-variant-numeric:tabular-nums;font-family:var(--f-display)}.fe-stats span{font-size:12px;color:var(--muted)}.fe-stats .bad b{color:#C92A2A}.fe-stats .ok b{color:#16A34A}
.fe-sec{padding:12px 18px 0;display:flex;flex-direction:column;gap:8px}.fe-sh{display:flex;align-items:center;justify-content:space-between}
.fe-prof{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg)}
.fe-prof>span:first-child{display:flex;flex-direction:column;min-width:0}.fe-prof small{color:var(--muted);font-size:12px}.fe-dl{display:flex;gap:6px;flex-wrap:wrap}
.fe-zip{align-self:flex-start}.fe-show{margin:12px 18px 0;align-self:flex-start}
.fe-checks{box-shadow:inset 4px 0 0 var(--chc)}.fe-how{margin:0 0 10px;font-size:13px}.fe-note{font-size:12px;margin:10px 0 0}
.fe-types{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.tchip.sev-crit{border-color:#F2C4C4}.tchip.sev-crit:not(.on){color:#B42318}.tchip span{opacity:.7;margin-left:3px}
.fe-tbl{max-height:520px}.sev-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.sev-dot.sev-crit{background:#C92A2A}.sev-dot.sev-warn{background:#E8A33D}.sev-dot.sev-info{background:#8A93A8}
.ok-empty{color:#16A34A;font-weight:600}
.xp-learn{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border:1.5px dashed var(--sel);border-radius:12px;background:var(--sel-soft)}.xp-learn>div{display:flex;flex-direction:column;gap:2px;max-width:60ch}.xp-learn .muted{font-size:12.5px}
.xp-cols{display:flex;flex-direction:column;gap:6px;max-height:44vh;overflow:auto;padding-right:2px}
.xp-col{display:grid;grid-template-columns:26px minmax(0,1.1fr) minmax(0,1.2fr) minmax(0,.9fr) auto;gap:8px;align-items:center}.xp-n{font-size:12px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}
.xp-a{display:flex;gap:4px}.xp-a .icon-btn{width:30px;height:30px;font-size:13px}.xp-prev{max-height:220px}.xp-prev td,.xp-prev th{white-space:nowrap;font-size:12px}.xp-rows{font-size:13px;padding-top:6px}
@media (max-width:700px){.fe-grid{grid-template-columns:1fr}.xp-col{grid-template-columns:22px 1fr 1fr;}.xp-col>:nth-child(4){grid-column:2/3}.xp-a{grid-column:3/4;justify-content:flex-end}}
#pg-fin.fin-on{background:#16A34A;border-color:#16A34A;color:#fff}
.gp-top{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin-bottom:10px}.gp-m{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.gp-m input{width:180px}
.gp-top .muted{font-size:13px;max-width:52ch}.gp-ov{margin-left:auto;font-size:13px;font-weight:600;color:var(--sel)}
.gp-t input.gp-in{width:90px;text-align:right;font-variant-numeric:tabular-nums}.gp-t input.gp-in.set{border-color:var(--sel);background:var(--sel-soft);font-weight:700}
.epos-list{display:flex;flex-direction:column;gap:8px}
.sl-f{align-items:center}.sl-bars{display:flex;flex-direction:column;gap:7px}
.sl-bar{display:grid;grid-template-columns:minmax(90px,170px) 1fr 80px;gap:4px 10px;align-items:center;font-size:13px}.sl-bar .t{height:12px;background:var(--bg);border-radius:6px;overflow:hidden}.sl-bar .t i{display:block;height:100%;background:#1A73E8;border-radius:6px}.sl-bar b{text-align:right;font-variant-numeric:tabular-nums}.sl-bar small{grid-column:2/4;color:var(--muted);font-size:11.5px;margin-top:-3px}.sl-bar .l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sl-months{display:flex;align-items:flex-end;gap:5px;height:190px;padding-top:8px}.sl-m{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}
.sl-m i{display:block;width:100%;max-width:34px;background:#041E42;border-radius:4px 4px 0 0;min-height:2px}.sl-m.fc i{background:repeating-linear-gradient(45deg,#1A73E8 0 5px,#8FB8F4 5px 10px)}.sl-m span{font-size:10px;color:var(--muted);margin-top:4px;white-space:nowrap}
.sl-empty p{max-width:72ch}.sl-api p{font-size:13px;max-width:80ch}
.sl-t{width:100%;table-layout:fixed}.sl-t th:first-child,.sl-t td:first-child{width:120px}.sl-t th.r,.sl-t td.r{width:90px}.sl-t td{white-space:normal;word-break:break-word}
.sev-dot{min-width:10px;min-height:10px;vertical-align:middle;flex:none}

/* v48: missing data in red */
.miss-td{background:#FDECEC!important;box-shadow:inset 3px 0 0 #E5484D}
.miss-cell{display:inline-block;color:#B42318;font-weight:700;font-size:11.5px;letter-spacing:.02em;text-transform:uppercase}
td.gapc{min-width:200px;max-width:320px;white-space:normal}td.gapc .gap-chip{cursor:pointer;border:0;font:inherit;font-size:11.5px;font-weight:600}
td.gapc .gap-chip:hover{background:#C92A2A;color:#fff}.gap-chip.more{background:transparent;color:#B42318;text-decoration:underline}
.gapn{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#C92A2A;color:#fff;font-size:11px;font-weight:800;margin-right:5px;vertical-align:middle}
.gap-ok{color:#16A34A;font-weight:700;font-size:12px}
.drawer .fld.gap>label{color:#B42318}.drawer .fld.gap>label::after{content:" · Missing";font-weight:800}
.drawer .fld.gap input,.drawer .fld.gap select,.drawer .fld.gap textarea{border-color:#E5484D!important;background:#FFF5F5!important;box-shadow:0 0 0 3px rgba(229,72,77,.12)}
.drawer .fld.gap .gal-wrap,.drawer .fld.gap .gal{outline:2px dashed #E5484D;outline-offset:3px;border-radius:10px}
.dr-gapbar{grid-column:1/-1;background:#FDECEC;border:1px solid #F2C4C4;color:#8A1F1F;border-radius:10px;padding:10px 12px;font-size:13px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dr-gapbar .gap-chip{border:0;font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.dr-gapbar .gap-chip:hover{background:#C92A2A;color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .miss-td{background:#3A1E22!important}:root:not([data-theme="light"]) .dr-gapbar{background:#3A1E22;border-color:#6B2F35;color:#F3B5B5}}
td.gapc{min-width:280px;width:300px}.gapw{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.gapw .gap-chip{margin:0}

/* v49: picture size guidance, trade events */
.sz-guide{display:flex;flex-direction:column;gap:4px;background:var(--sel-soft);border:1px solid color-mix(in srgb,var(--sel) 25%,transparent);border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.45;margin-bottom:8px;text-transform:none;letter-spacing:0;font-weight:400;color:var(--ink)}
.sz-guide>b{font-size:13px}
.gal figure a{position:relative;display:block}.sz-b{position:absolute;left:4px;bottom:4px;right:4px;background:rgba(22,163,74,.92);color:#fff;font-size:10px;font-weight:700;border-radius:4px;padding:1px 5px;line-height:1.4;white-space:normal}
.sz-b.bad{background:rgba(201,42,42,.94)}
.ts-ty{margin:2px 0 8px}.ts-t .pill{margin-right:6px}

.lg-tip{display:block;margin-top:6px;font-size:12px;line-height:1.45;color:var(--muted);text-transform:none;letter-spacing:0;font-weight:400}
.lg-tip b{color:var(--ink);font-weight:600}.lg-tip-bar{margin:0 0 12px;padding:8px 12px;background:var(--sel-soft);border-radius:8px}
.lg-d{font-weight:700}.lg-d.ok{color:#16A34A}.lg-d.bad{color:#C92A2A}

/* v53: store photo timeline, group pricing quick set */
.stl{display:flex;flex-direction:column;gap:12px}.stl-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.stl-h>span:first-child{display:flex;flex-direction:column}.stl-h b{font-family:var(--f-display);font-size:17px}.stl-h small{color:var(--muted);font-size:12.5px}.stl-a{display:flex;gap:6px;flex-wrap:wrap}
.stl-cmp{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;max-width:520px}.stl-cmp figure{margin:0;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--bg)}.stl-cmp img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.stl-cmp figcaption{font-size:12px;font-weight:600;padding:6px 10px}.stl-arrow{font-size:22px;color:var(--muted)}
.stl-track{position:relative;display:flex;gap:14px;overflow-x:auto;padding:22px 2px 8px;scroll-snap-type:x proximity}.stl-line{position:absolute;left:0;right:0;top:27px;height:2px;background:var(--line);min-width:100%}
.stl-item{position:relative;flex:0 0 168px;scroll-snap-align:end;display:flex;flex-direction:column;gap:5px;text-align:left;font:inherit;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 8px 8px;cursor:pointer;color:var(--ink)}
.stl-item:hover{border-color:var(--sel)}.stl-dot{position:absolute;top:-11px;left:12px;width:12px;height:12px;border-radius:50%;background:#041E42;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--line)}.stl-dot.now{background:#16A34A}
.stl-date{font-size:12px;font-weight:800;color:#041E42}.stl-t{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stl-pics{position:relative;display:grid;gap:2px;border-radius:8px;overflow:hidden;aspect-ratio:4/3;background:var(--bg)}.stl-pics.n2{grid-template-columns:1fr 1fr}.stl-pics.n3,.stl-pics.n4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.stl-pics.n3 img:first-child{grid-row:span 2}
.stl-pics img{width:100%;height:100%;object-fit:cover;display:block}.stl-pics i{display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--muted);font-style:normal}.stl-pics em{position:absolute;right:4px;bottom:4px;background:rgba(4,30,66,.85);color:#fff;font-style:normal;font-size:11px;font-weight:700;border-radius:4px;padding:0 5px}
.stl-empty{font-size:13px;padding:6px 0}.stl-more summary{cursor:pointer;font-weight:600;font-size:13px;margin-top:6px}
.stl-group{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.stl.compact{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.stl.compact .stl-item{flex-basis:140px}.stl-all{margin:6px 0;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.gp-quick{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--sel) 30%,transparent);background:var(--sel-soft);border-radius:12px;margin-bottom:12px}
.gp-qh{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.gp-qh .muted{font-size:12.5px}.gp-qr{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.gp-qr label{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600}.gp-qr input{width:90px}.gp-qr select{width:auto}.gp-tip{font-size:12px}
.gp-t input.gp-m{width:70px}
tr.gp-has td{background:color-mix(in srgb,var(--sel) 6%,var(--surface))}tr.gp-has td:first-child{box-shadow:inset 3px 0 0 var(--sel)}.gp-reset{width:30px;height:30px;font-size:15px}.gp-cnt{font-size:13px}

/* v55: pricing table scrolls inside the screen; save bar pinned to the bottom of the window */
.gp-wrap{max-height:calc(100vh - 230px);max-height:calc(100dvh - 230px);overflow:auto;min-height:240px}
.gp-wrap thead th{position:sticky;top:0;z-index:2;background:var(--sunken,#EEF1F6)}
.gp-bar{position:sticky;bottom:0;z-index:20;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px calc(-1*max(16px,env(safe-area-inset-left,0px))) 0;padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -6px 16px rgba(4,30,66,.08)}
.gp-bar #gp-save{margin-left:auto}.gp-state{font-weight:700;font-size:13px;color:#16A34A}.gp-state.dirty{color:#B4530A}.gp-state.dirty::before{content:"● "}

/* ===== Top menu =====
   Top strip: logo, name, sign out and Powered by RT on plain white, so the logo picture sits on its own background.
   Rail: the main pages on a band in the brand colour. The open page's tab lifts out of the band in the page colour,
   like a folder divider, so it joins the sub-menu or the page below it.
   Sub-menu: quiet text tabs on the page colour, underlined when open. */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);
  --rail:var(--brand-bar,#041E42);--on-rail:var(--on-brand-bar,#FFFFFF);--tab-on:var(--bg);--flare:10px}
header .hrow{display:flex;align-items:center;gap:16px;padding-block:10px}
header .brand{display:flex;align-items:center;gap:14px;margin-right:auto;min-width:0;cursor:pointer;border-radius:10px}
header .brand img#brand-logo{height:46px;width:auto;max-width:200px;object-fit:contain;display:block;border-radius:8px}
.h-right{display:flex;align-items:center;gap:12px;flex:none}
.rt-logo{height:38px;width:auto;display:block}
#signout-btn{font-size:13px;padding:6px 12px;min-height:0}

header .rail{background:var(--rail)}
header nav#tabs{display:flex;align-items:flex-end;gap:1px;overflow-x:auto;overflow-y:hidden;padding:8px 0 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
header nav#tabs::-webkit-scrollbar{display:none}
header nav#tabs button{position:relative;display:inline-flex;align-items:center;gap:6px;flex:none;
  font:inherit;font-weight:600;font-size:13.5px;line-height:1.2;white-space:nowrap;
  color:color-mix(in srgb,var(--on-rail) 76%,transparent);background:none;border:0;border-radius:10px 10px 0 0;
  padding:10px 11px 12px;cursor:pointer;transition:background-color .15s,color .15s}
header nav#tabs button:hover{color:var(--on-rail);background:color-mix(in srgb,var(--on-rail) 11%,transparent)}
header nav#tabs button[aria-selected="true"]{background:var(--tab-on);color:var(--accent);font-weight:700}
header nav#tabs button[aria-selected="true"]::before,header nav#tabs button[aria-selected="true"]::after{content:"";position:absolute;bottom:0;width:var(--flare);height:var(--flare);pointer-events:none}
header nav#tabs button[aria-selected="true"]::before{left:calc(var(--flare) * -1);background:radial-gradient(circle at 0 0,transparent calc(var(--flare) - .5px),var(--tab-on) var(--flare))}
header nav#tabs button[aria-selected="true"]::after{right:calc(var(--flare) * -1);background:radial-gradient(circle at 100% 0,transparent calc(var(--flare) - .5px),var(--tab-on) var(--flare))}
header nav#tabs button:focus-visible{outline:2px solid var(--on-rail);outline-offset:-4px}
header nav#tabs button[aria-selected="true"]:focus-visible{outline-color:var(--sel2)}
header nav#tabs .n{display:none}
header nav#tabs .caret{width:5px;height:5px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.75;flex:none}
header nav#tabs #tab-settings{margin-left:auto;padding:10px 11px 12px}
header nav#tabs #tab-settings svg{width:18px;height:18px}

header .subnav{background:var(--tab-on);border-bottom:1px solid var(--line)}
header .subnav .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
header .subnav .wrap::-webkit-scrollbar{display:none}
header .subnav button{display:inline-flex;align-items:center;gap:7px;flex:none;background:none;border:0;border-bottom:3px solid transparent;border-radius:0;
  padding:11px 12px 9px;font:inherit;font-weight:600;font-size:13.5px;color:var(--muted);cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}
header .subnav button:hover{color:var(--ink);border-bottom-color:var(--line)}
header .subnav button[aria-selected="true"]{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}
header .subnav button .n{font-family:var(--f-body);font-size:11px;font-weight:700;background:var(--sunken);color:var(--muted);border-radius:99px;padding:1px 7px;margin:0;opacity:1}
header .subnav button[aria-selected="true"] .n{background:var(--accent-soft);color:var(--accent)}

@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) header .brand img#brand-logo{background:#fff;padding:3px 8px}:root:not([data-theme="light"]) .rt-logo{filter:invert(1)}:root:not([data-theme="light"]) header .rail{box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}:root:not([data-theme="light"]) header nav#tabs button[aria-selected="true"]{color:var(--ink)}:root:not([data-theme="light"]) header .subnav button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--sel2)}}
:root[data-theme="dark"] header .brand img#brand-logo{background:#fff;padding:3px 8px}
:root[data-theme="dark"] .rt-logo{filter:invert(1)}
:root[data-theme="dark"] header .rail{box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
:root[data-theme="dark"] header nav#tabs button[aria-selected="true"]{color:var(--ink)}
:root[data-theme="dark"] header .subnav button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--sel2)}
@media (prefers-reduced-motion:reduce){header nav#tabs button,header .subnav button{transition:none}}
/* narrower than the full menu: the tabs scroll sideways, with a fade on the right to show there is more */
@media (max-width:1279px){
  header nav#tabs{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
  header nav#tabs::after{content:"";flex:0 0 24px}
  header nav#tabs #tab-settings{margin-left:0}
}
@media (max-width:700px){
  header .hrow{gap:10px;padding-block:8px}
  header .brand{gap:10px}
  header .brand img#brand-logo{height:36px}
  .brand #brand-name{font-size:19px}
  .rt-logo{height:26px}
  header{--flare:8px}
  header nav#tabs{padding-top:6px;scroll-snap-type:x proximity}
  header nav#tabs button{font-size:13.5px;padding:9px 12px 10px;scroll-snap-align:start}
  header .subnav button{padding:9px 10px 7px;font-size:13px}
}
@media (max-width:480px){.brand #brand-tag{display:none}}
@media (max-width:420px){.rt-logo{height:22px}#signout-btn{padding:5px 9px;font-size:12px}}
