:root{--bg:#f1f1f1;--card:#fff;--ink:#303030;--muted:#616161;--line:#e3e3e3;--soft:#f7f7f7;--brand:#1a4d3a;--brand-ink:#fff;--red:#b42318;--radius:12px;--shadow:0 1px 0 rgba(0,0,0,.07),0 0 0 1px rgba(0,0,0,.05);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:14px;color:var(--ink)}
*{box-sizing:border-box}body.adm{margin:0;background:var(--bg);display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}
a{color:#005bd3}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}h1{font-size:20px}h2{font-size:14px}h3{font-size:13px}p{margin:0 0 10px;line-height:1.5}
.adm-side{background:#ebebeb;border-right:1px solid var(--line);padding:14px 10px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0;height:100vh}
.adm-brand{display:flex;align-items:center;gap:8px;padding:6px 10px;color:var(--ink);text-decoration:none;font-weight:650}.adm-brand svg{width:26px;height:26px}
.adm-nav{display:grid;gap:2px}.adm-nav a{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:550}.adm-nav a:hover{background:#e0e0e0}.adm-nav a[aria-current=page]{background:#fff;box-shadow:var(--shadow)}
.adm-count{background:#d4d4d4;border-radius:10px;padding:0 7px;font-size:12px;line-height:20px}
.adm-side-foot{margin-top:auto;display:grid;gap:4px;padding:0 10px}.adm-side-foot a,.adm-side-foot button{color:var(--muted);font:inherit;background:none;border:0;padding:6px 0;text-align:left;cursor:pointer;text-decoration:none}.adm-side-foot a:hover,.adm-side-foot button:hover{color:var(--ink)}
.adm-main{padding:20px 32px 60px;max-width:1100px;width:100%;margin:0 auto}
.adm-top{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;flex-wrap:wrap}.adm-back{display:inline-block;color:var(--muted);text-decoration:none;font-size:13px;margin-bottom:4px}.adm-top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.adm-pill{font-size:12px;padding:3px 10px;border-radius:20px;background:#e3e3e3}.adm-pill.ok{background:#cdfee1;color:#0c5132}.adm-pill.warn{background:#ffe9a8;color:#5e4200}
.adm-toast{background:#303030;color:#fff;padding:9px 14px;border-radius:10px;display:inline-block;margin:0 0 14px}.adm-alert{background:#fee9e7;color:#8e1f0b;border:1px solid #fec1b8;padding:10px 14px;border-radius:10px;margin:0 0 14px}
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:16px;min-width:0}.card>h2{margin-bottom:12px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.card.flush{padding:0;overflow:hidden}.card.flush>h2,.card.flush>.card-head{padding:14px 16px 0}
.cols{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:16px;align-items:start}.cols>div{min-width:0}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.stats .card{margin:0}.stats small{color:var(--muted);display:block;margin-bottom:6px}.stats strong{font-size:22px;font-weight:650}.stats a{color:inherit;text-decoration:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:600;font-size:13px;line-height:1;padding:9px 13px;border-radius:9px;border:0;cursor:pointer;text-decoration:none;background:#fff;color:var(--ink);box-shadow:inset 0 -1px 0 #b5b5b5,0 0 0 1px #d4d4d4}.btn:hover{background:var(--soft)}.btn.primary{background:var(--brand);color:var(--brand-ink);box-shadow:inset 0 -1px 0 #0b2a1f}.btn.primary:hover{background:#143d2e}.btn.danger{color:var(--red)}.btn.link{background:none;box-shadow:none;padding:0;color:#005bd3;font-weight:500}.btn.link.danger{color:var(--red)}
.field{display:grid;gap:5px;margin-bottom:12px}.field>span{font-weight:500}.field small,.hint{color:var(--muted);font-size:12px}
input:not([type=checkbox]):not([type=radio]),select,textarea{font:inherit;color:var(--ink);width:100%;padding:7px 10px;border:1px solid #8a8a8a;border-radius:8px;background:#fff;min-height:34px}textarea{resize:vertical;line-height:1.5}input[type=file]{border-style:dashed;padding:14px;background:var(--soft)}input:focus,select:focus,textarea:focus{outline:2px solid #005bd3;outline-offset:1px}
.check{display:flex;gap:8px;align-items:flex-start;margin-bottom:10px;line-height:1.4}.check input{margin-top:2px}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.table{width:100%;border-collapse:collapse}.table th{font-size:12px;font-weight:550;color:var(--muted);text-align:left;padding:8px 12px;background:var(--soft);border-bottom:1px solid var(--line);white-space:nowrap}.table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:#fafafa}.table .num{text-align:right;white-space:nowrap}.table a.row-link{color:var(--ink);font-weight:600;text-decoration:none}.table a.row-link:hover{text-decoration:underline}.table-wrap{overflow-x:auto}
.thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;border:1px solid var(--line);display:block;background:var(--soft)}
.badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;padding:2px 8px;border-radius:8px;background:#e3e3e3;color:#303030;white-space:nowrap}.badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}.badge.green{background:#cdfee1;color:#0c5132}.badge.yellow{background:#ffeb78;color:#4f4700}.badge.orange{background:#ffd6a4;color:#5e2900}.badge.blue{background:#d5ebff;color:#003a5a}.badge.red{background:#fedad9;color:#8e0b21}.badge.grey{background:#e3e3e3;color:#616161}
.filters{display:flex;gap:4px;padding:10px 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filters a{padding:5px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:550}.filters a[aria-current=page]{background:#e3e3e3}
.empty-state{text-align:center;padding:40px 16px;color:var(--muted)}.empty-state h2{color:var(--ink);margin-bottom:6px}
.media{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));grid-auto-rows:190px;gap:10px}.media figure{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--soft);display:flex;flex-direction:column;min-width:0}.media figure.main{grid-column:span 2;grid-row:span 2}.media img{width:100%;flex:1;min-height:0;height:auto;object-fit:cover;object-position:50% 30%;display:block}.media figcaption{display:flex;justify-content:space-between;gap:6px;padding:6px 8px;font-size:12px;background:#fff;border-top:1px solid var(--line)}.media form{display:inline}
.save-bar{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #d4d4d4;padding-top:16px;margin-top:4px}
.line{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.line:last-child{border:0}.line .grow{flex:1;min-width:0}.line small{display:block;color:var(--muted)}
.kv{display:grid;gap:12px}.kv h3{font-size:13px;margin-bottom:3px}.kv p{margin:0;white-space:pre-line;color:var(--muted)}
.totals{border-top:1px solid var(--line);margin-top:6px;padding-top:10px}.totals div{display:flex;justify-content:space-between;padding:3px 0}.totals .grand{font-weight:650}
.swatch{width:44px;height:44px;border-radius:8px;object-fit:cover;border:1px solid var(--line);background:var(--soft)}
.mini-form{display:grid;gap:10px}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.grid-cards .card{margin:0}
.pre{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:900px){body.adm{grid-template-columns:1fr}.adm-side{position:static;height:auto;flex-direction:row;align-items:center;overflow-x:auto;padding:8px 10px;gap:8px}.adm-brand span{display:none}.adm-nav{display:flex}.adm-nav a{white-space:nowrap}.adm-side-foot{margin:0;display:flex;gap:12px;white-space:nowrap}.adm-main{padding:16px}.cols{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.hide-sm{display:none}.media{grid-auto-rows:170px}}
.email-list{display:grid;max-height:520px;overflow:auto;border-top:1px solid var(--line)}.email-list a{display:grid;gap:3px;padding:10px 16px;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.email-list a:last-child{border:0}.email-list a:hover{background:#fafafa}.email-list a[aria-current=page]{background:#f0f5ff;box-shadow:inset 3px 0 0 #005bd3}.email-list small{color:var(--muted);overflow-wrap:anywhere}.email-list .badge{justify-self:start}.email-frame{display:block;border:0;width:100%;height:1000px;background:var(--soft)}.email-frame.mobile{max-width:390px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line)}
@media(max-width:900px){.cols[style]{grid-template-columns:1fr!important}}
details.enquiry{border-top:1px solid var(--line)}details.enquiry summary{list-style:none}details.enquiry summary::-webkit-details-marker{display:none}details.enquiry[open] summary{background:#fafafa}
body.adm-login{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--bg);padding:16px}.adm-login form{width:100%;max-width:400px;padding:28px}.adm-login .adm-brand{padding:0;margin-bottom:18px}.adm-login h1{margin-bottom:4px}
.save-bar.sticky{position:sticky;bottom:0;z-index:5;background:rgba(241,241,241,.92);backdrop-filter:blur(6px);margin:0 -32px -60px;padding:12px 32px;border-top:1px solid #d4d4d4}@media(max-width:900px){.save-bar.sticky{margin:0 -16px -60px;padding:12px 16px}}
.card .save-bar:not(.sticky){border-top:0;padding-top:12px}
.report-range{display:flex;justify-content:space-between;align-items:end;gap:12px;flex-wrap:wrap}.range-form{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.range-form label{display:grid;gap:4px;font-weight:550}.range-form input{width:auto}
.presets{display:flex;gap:4px;flex-wrap:wrap}.presets a{padding:5px 10px;border-radius:8px;color:var(--ink);text-decoration:none;font-weight:550}.presets a:hover{background:var(--soft)}.presets a[aria-current=page]{background:#e3e3e3}
.report-note{margin:-6px 0 14px}.delta{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.delta.up{color:#0c5132}.delta.down{color:#8e1f0b}
.metrics{display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin:0 0 10px}.metrics dt{color:var(--muted)}.metrics dd{margin:0;font-weight:650;text-align:right;font-variant-numeric:tabular-nums}
.bars{display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:2px;align-items:end;height:200px;border-bottom:1px solid var(--line)}.bar{position:relative;height:100%;display:flex;align-items:end;outline:none}.bar .fill{display:block;width:100%;max-width:28px;margin:0 auto;background:#2c6ecb;border-radius:4px 4px 0 0;min-height:0}.bar:hover .fill,.bar:focus .fill{background:#1f5199}
.bar .tip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);background:#303030;color:#fff;padding:6px 9px;border-radius:8px;font-size:12px;white-space:nowrap;z-index:2;pointer-events:none}.bar:hover .tip,.bar:focus .tip{display:block}.bar:hover{background:var(--soft)}
.bar-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:6px}
