body{background:var(--color-cream,#faf7f2);color:var(--color-ink,#333);margin:0;font-family:Roboto,system-ui,-apple-system,Segoe UI,sans-serif}.adm-wrap{max-width:1500px;margin:0 auto;padding:32px 20px 90px}.adm-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.adm-title{margin:0;font-size:30px;font-weight:900}.adm-sub{color:#555;max-width:92ch;margin:4px 0 22px;font-size:15px;line-height:1.55}.adm-sub code{background:#0000000f;border-radius:4px;padding:1px 6px;font-size:13px}.adm-btn{cursor:pointer;color:#fff;background:#ee0808;border:0;border-radius:10px;justify-content:center;align-items:center;padding:13px 34px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.adm-btn.ghost{color:#333;background:#fff;border:1px solid #c9ccd1;padding:9px 18px}.adm-btn.ghost:hover{background:#f2efe9}.adm-btn.sm{padding:7px 14px;font-size:13px}.adm-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 10px #0000000d}.adm-banner{color:#6b4d09;background:#fff6e5;border:1px solid #f0d9a8;border-radius:10px;margin-bottom:20px;padding:14px 18px;font-size:14.5px;line-height:1.6}.adm-banner.bad{color:#a11;background:#fdf2f2;border-color:#e4b7b7}.adm-banner code{background:#00000012;border-radius:4px;padding:2px 7px}.adm-banner .t{margin-bottom:4px;font-weight:800;display:block}[hidden]{display:none!important}.tiles{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:12px;margin-bottom:20px;display:grid}.tile{background:#fff;border-radius:12px;padding:15px 18px;box-shadow:0 1px 10px #0000000d}.tile .n{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:25px;font-weight:900}.tile .l{color:#666;text-transform:uppercase;letter-spacing:.05em;margin-top:3px;font-size:12px;font-weight:700}.tile .of{color:#999;margin-top:3px;font-size:11.5px}.tile.rev .n{color:#0a7a48}.tile.spend .n{color:#a4551a}.tile.marg .n{color:#1b6ec2}.bar{background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex;box-shadow:0 1px 10px #0000000d}.adm-search{box-sizing:border-box;border:1px solid #c9ccd1;border-radius:8px;outline:none;flex:260px;min-width:200px;height:40px;padding:0 12px;font-size:15px}.adm-search:focus{border-color:#02ad93}.adm-select{box-sizing:border-box;background:#fff;border:1px solid #c9ccd1;border-radius:8px;outline:none;max-width:190px;height:40px;padding:0 9px;font-family:inherit;font-size:13.5px}.adm-select:focus{border-color:#02ad93}.count{color:#555;white-space:nowrap;margin-left:auto;font-size:13px}.chart{margin-bottom:20px;padding:20px 24px 18px}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;max-width:1360px;margin:0 auto 4px;display:flex}.chart-head>div:first-child{max-width:96ch}.chart h2{margin:0 0 3px;font-size:19px}.chart .hint{color:#888;margin:0;font-size:13px;line-height:1.5}.seg{border:1px solid #c9ccd1;border-radius:9px;flex:none;display:inline-flex;overflow:hidden}.seg button{color:#555;cursor:pointer;background:#fff;border:0;padding:9px 16px;font:700 13px/1 inherit}.seg button+button{border-left:1px solid #e4e6e9}.seg button:hover{background:#f2efe9}.seg button.on{color:#fff;background:#02ad93}.chart-plot{justify-content:center;align-items:flex-end;gap:10px;max-width:1360px;height:320px;margin:18px auto 0;display:flex}.mgroup{flex-direction:column;flex:1 1 0;align-items:center;min-width:0;height:100%;display:flex}.mbars{flex:auto;justify-content:center;align-items:flex-end;gap:3px;width:100%;display:flex}.mbar{cursor:default;border-radius:4px 4px 0 0;flex:0 22px;min-height:2px;position:relative}.mbar.prev{box-sizing:border-box;background:repeating-linear-gradient(45deg,#dfe6e4,#dfe6e4 3px,#eef2f1 3px 6px);border:1px solid #cfdad7}.mbar.cur{background:#02ad93}.mbar.cur.ev{background:#1b6ec2}.mbar:hover{outline-offset:1px;outline:2px solid #333}.mbar.zero{background:0 0;border-bottom:2px dotted #d5d0c7;min-height:0;height:0!important}.mbar.fut{box-sizing:border-box;background:repeating-linear-gradient(45deg,#02ad934d,#02ad934d 4px,#02ad9317 4px 8px);border:1px dashed #02ad93bf;overflow:hidden}.mbar.fut.ev{background:repeating-linear-gradient(45deg,#1b6ec24d,#1b6ec24d 4px,#1b6ec217 4px 8px);border-color:#1b6ec2bf}.mbar.fut .booked{background:#02ad93;border-radius:0 0 3px 3px;display:block;position:absolute;bottom:-1px;left:-1px;right:-1px}.mbar.fut.ev .booked{background:#1b6ec2}.mbar.ann{background:#e0a33a}.mbar.spend{background:#d0342c}.mbar.spend.prev{box-sizing:border-box;background:repeating-linear-gradient(45deg,#d0342c57,#d0342c57 3px,#d0342c1a 3px 6px);border:1px solid #d0342c8c}.mbar.gap{margin-left:7px}.chart-legend .sw.spend{background:#d0342c}.chart-legend .sw.spend.prev{background:repeating-linear-gradient(45deg,#d0342c57,#d0342c57 3px,#d0342c1a 3px 6px);border:1px solid #d0342c8c}.chart-legend .sw.ann{background:#e0a33a}.chart-legend .sw.fut{background:repeating-linear-gradient(45deg,#02ad934d,#02ad934d 4px,#02ad9317 4px 8px);border:1px dashed #02ad93bf}.mlabel{color:#888;white-space:nowrap;margin-top:7px;font-size:11.5px}.mgroup.now .mlabel{color:#02ad93;font-weight:800}.chart-legend{color:#555;flex-wrap:wrap;justify-content:center;gap:22px;max-width:1360px;margin:14px auto 0;font-size:13px;display:flex}.chart-legend .key{align-items:center;gap:7px;display:inline-flex}.chart-legend .sw{border-radius:3px;flex:none;width:13px;height:13px}.chart-legend .sw.prev{background:repeating-linear-gradient(45deg,#dfe6e4,#dfe6e4 3px,#eef2f1 3px 6px);border:1px solid #cfdad7}.chart-legend .sw.cur{background:#02ad93}.chart-legend .sw.cur.ev{background:#1b6ec2}.chart-legend b{font-variant-numeric:tabular-nums}.ads-src{color:#777;text-align:center;max-width:1360px;margin:12px auto 0;font-size:12.5px;line-height:1.55}.ads-src b{color:#444}.ads-src.warn,.ads-src.warn b{color:#8a5a00}.ads-src details{display:inline}.ads-src summary{cursor:pointer;color:#02ad93;font-weight:700;display:inline}.ads-src ol{text-align:left;max-width:660px;margin:8px auto 0;padding-left:20px}.ads-src li{margin:4px 0}.ads-src code{word-break:break-all;background:#f3f1ec;border-radius:3px;padding:1px 4px;font-size:11.5px}.delta{font-variant-numeric:tabular-nums;font-weight:800}.delta.up{color:#0a7a48}.delta.down{color:#a11}@media (width<=1420px){.chart-plot{gap:7px;height:280px}.mbar.gap{margin-left:5px}}@media (width<=820px){.chart-plot{justify-content:flex-start;gap:6px;height:220px;padding-bottom:6px;overflow-x:auto}.mgroup{flex:none}.mbar{flex:0 0 14px}.mbars{gap:2px}.mbar.gap{margin-left:4px}.mlabel{font-size:10px}}table.adm{border-collapse:collapse;width:100%}table.adm th,table.adm td{text-align:left;vertical-align:top;padding:10px 12px;font-size:13.5px}table.adm th{color:#555;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;z-index:2;background:#fff;border-bottom:1px solid #eee;font-size:11.5px;font-weight:700;position:sticky;top:0}table.adm th.sortable{cursor:pointer;user-select:none}table.adm th.sortable:hover{color:#222}table.adm th.on{color:#02ad93}table.adm th.on:after{content:" ▾"}table.adm th.on.asc:after{content:" ▴"}table.adm tbody tr{cursor:pointer;border-bottom:1px solid #f2f0ec}table.adm tbody tr:hover{background:#f5f9f8}table.adm tbody tr.open{background:#eef6f4}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.when{white-space:nowrap;color:#444;width:96px}td.when .ref{color:#aaa;font-size:11px;display:block}td.co{max-width:230px;font-weight:700}td.co .who{color:#777;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;display:block;overflow:hidden}td.menu{color:#555;max-width:190px;font-size:12.5px}.neg{color:#a11}.dim{color:#bbb}.pill{letter-spacing:.03em;color:#555;white-space:nowrap;background:#eef0f3;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:700;display:inline-block}.pill.ip{color:#7a4a0a;background:#fdf3e0}.pill.hy{color:#6b3fa0;background:#f2ecfb}.stg{letter-spacing:.03em;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-block}.stg.announced{color:#8a5a08;background:#fbf0da}.stg.planning{color:#12574f;background:#dcecea}.stg.ready{color:#2b6526;background:#ddeed9}.stg.wrapped{color:#4a5361;background:#ecedf0}.stg.cancelled{color:#99201c;background:#fbe3e3}.stg.guess{opacity:.62;font-weight:600}td.when .src{letter-spacing:.06em;text-transform:uppercase;border-radius:3px;margin-top:3px;padding:1px 5px;font-size:9.5px;font-weight:800;display:inline-block}td.when .src.live{color:#2b6526;background:#e2f0e2}td.when .src.both{color:#2c4a7c;background:#e7edf6}.adm-empty{color:#888;text-align:center;padding:26px 20px}tr.ghead>td{border-bottom:1px solid #e8e4dc;padding:0}tr.ghead button{box-sizing:border-box;cursor:pointer;text-align:left;width:100%;font:inherit;color:#333;background:#f4f2ee;border:0;align-items:baseline;gap:14px;padding:9px 12px;display:flex}tr.ghead button:hover{background:#ece9e2}tr.ghead button:focus-visible{outline-offset:-2px;outline:2px solid #02ad93}tr.ghead.on button{background:#eef6f4}tr.ghead .chev{color:#999;flex:none;width:10px;font-size:11px}tr.ghead .gm{min-width:148px;font-size:14px;font-weight:800}tr.ghead .gn{color:#666;min-width:82px;font-size:12.5px}tr.ghead .gi{color:#0a7a48;font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:700}tr.ghead .gi .part{color:#999;font-size:11.5px;font-weight:400}tr.ghead .gi .dim{font-weight:400}@media (width<=700px){tr.ghead button{flex-wrap:wrap;gap:4px 12px}tr.ghead .gm{width:100%;min-width:0}}.kv.edit{grid-template-columns:minmax(96px,40%) 1fr;align-items:center;padding:3px 0}.kv.edit .v{align-items:center;gap:8px;display:flex}.kv.edit input[type=text],.kv.edit input[type=date],.kv.edit textarea{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #d7d3cb;border-radius:6px;outline:none;padding:5px 8px;font-size:13px}.kv.edit input:focus,.kv.edit textarea:focus{border-color:#02ad93}.kv.edit input.numish{font-variant-numeric:tabular-nums}.kv.edit input.odd{background:#fffdf6;border-color:#e6c88a}.kv.edit textarea{resize:vertical}.kv.edit .ck{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.kv.edit .ck input{accent-color:#02ad93;cursor:pointer;width:17px;height:17px}.kv .oddval{color:#b8791f;font-size:12px;font-weight:700}.kv.ed .k:after{content:" ✎";color:#b8791f}.kv.ed .v{padding-left:7px;box-shadow:inset 2px 0 #e0a33a}.kv.lv .k:after{content:" · calendar";color:#2c4a7c;font-size:11px;font-weight:700}.kv.lv .v{padding-left:7px;box-shadow:inset 2px 0 #9fb3d6}a.crm{color:#1b6ec2;white-space:nowrap;font-weight:700;text-decoration:none}a.crm:hover{text-decoration:underline}.editbar{border-top:1px solid #ece8e0;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;padding-top:12px;display:flex}.editbar .adm-btn.danger{color:#a11;border-color:#e4b7b7}.editnote{color:#888;font-size:12.5px}.savemsg{color:#0a7a48;font-size:12.5px;font-weight:700}.savemsg.bad{color:#a11}tr.detail>td{background:#fbfaf8;padding:0 12px 18px}.groups{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;padding-top:4px;display:grid}.grp h3{text-transform:uppercase;letter-spacing:.05em;color:#888;border-bottom:1px solid #eee;margin:0 0 6px;padding-bottom:4px;font-size:11.5px}.kv{grid-template-columns:minmax(96px,40%) 1fr;gap:2px 10px;padding:2px 0;font-size:13px;display:grid}.kv .k{color:#888}.kv .v{word-break:break-word}.kv .v.money{font-variant-numeric:tabular-nums;font-weight:700}.kv .v.yes{color:#0a7a48;font-weight:700}.kv .v.no{color:#bbb}.kv .v.odd{color:#b8791f;font-weight:700}.summed{cursor:help;border-bottom:1px dotted #b8791f}td.num.est{color:#4d5d6c;cursor:help}.grp.est .estas{color:#333;margin:0 0 6px;font-size:13px;font-weight:700}.grp.est .estvia{color:#888;margin-left:6px;font-size:12px;font-weight:400}.grp.est .kv.tot{border-top:1px solid #ece8e0;margin-top:3px;padding-top:5px}.grp.est .kv.tot .v{font-weight:800}.grp.est .billnote{margin-top:7px}.kv .v .sumtag{color:#888;white-space:nowrap;margin-left:7px;font-size:11.5px;font-weight:400}.kv.edit input.auto{background:#f3faf7;border-color:#b9dfd3}.sumnote{color:#888;flex:none;max-width:48%;font-size:11.5px;line-height:1.35}.sumnote button{font:inherit;color:#1b6ec2;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.sumnote button:hover{text-decoration:underline}table.rates{max-width:600px}table.rates th small{color:#aaa;text-transform:none;letter-spacing:0;font-weight:400}table.rates td.band{white-space:nowrap;font-weight:700}.checkbody ul.fine{color:#777;max-width:92ch;margin:10px 0 8px;padding-left:18px;font-size:12.5px;line-height:1.55}.checkbody p.fine{color:#777;font-size:12.5px}.warn{color:#6b4d09;background:#fff6e5;border:1px solid #f0d9a8;border-radius:8px;margin-top:10px;padding:9px 12px;font-size:12.5px;line-height:1.5}details.checks{margin-top:22px}details.checks>summary{cursor:pointer;background:#fff;border-radius:12px;padding:14px 18px;font-size:15px;font-weight:800;list-style:none;box-shadow:0 1px 10px #0000000d}details.checks>summary::-webkit-details-marker{display:none}details.checks>summary:before{content:"▸";color:#999}details.checks[open]>summary:before{content:"▾"}details.checks>summary .sub{color:#777;margin-top:3px;font-size:13px;font-weight:400;display:block}.checkbody{background:#fff;border-radius:0 0 12px 12px;margin-top:-6px;padding:16px 18px 20px;box-shadow:0 1px 10px #0000000d}.checkbody h3{margin:16px 0 4px;font-size:13.5px}.checkbody h3:first-child{margin-top:0}.checkbody p{color:#555;max-width:92ch;margin:0 0 8px;font-size:13px;line-height:1.6}table.mini{border-collapse:collapse;width:100%;margin-top:6px}table.mini th,table.mini td{text-align:left;border-bottom:1px solid #f4f2ee;padding:5px 9px;font-size:12.5px}table.mini th{color:#888;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}table.mini td.num{text-align:right;font-variant-numeric:tabular-nums}.ok{color:#0a7a48;font-weight:700}.off{color:#a11;font-weight:700}.queues{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.queues .q{cursor:pointer;font:inherit;background:#fff;border:1px solid #e3ddd0;border-radius:999px;align-items:baseline;gap:9px;padding:8px 17px 8px 14px;display:flex;box-shadow:0 1px 6px #0000000a}.queues .q:hover{background:#f6f3ec}.queues .q.on{border-color:#02ad93;box-shadow:0 0 0 2px #02ad932e}.queues .q:focus-visible{outline-offset:2px;outline:2px solid #02ad93}.queues .qn{font-variant-numeric:tabular-nums;font-size:20px;font-weight:900}.queues .ql{color:#666;font-size:12.5px}.queues .q.warn.live .qn{color:#a11}.queues .q.live .qn{color:#0a7a48}.queues .q.empty{opacity:.55}.queues .qspacer{flex:auto}.queues .qmsg{color:#666;font-size:12.5px}.bill{margin-top:4px}.bill h3{margin:0 0 8px;font-size:13.5px}.billrow{color:#444;flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.billrow .n{font-weight:800}.billacts{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.billnote{color:#888;margin:0;font-size:12.5px;line-height:1.5}.rdy{margin-top:4px}.rdy h3{margin:0 0 8px;font-size:13.5px}.rdy ul{grid-template-columns:repeat(auto-fit,minmax(232px,1fr));gap:4px 18px;margin:0;padding:0;list-style:none;display:grid}.rdy li{align-items:baseline;gap:8px;padding:3px 0;font-size:12.5px;display:flex}.rdy .dot{border-radius:50%;flex:none;width:8px;height:8px}.rdy .yes .dot{background:#2f9e5f}.rdy .no .dot{background:#d33}.rdy .unknown .dot{background:#ccc}.rdy .na .dot{background:0 0;box-shadow:inset 0 0 0 1.5px #ddd}.rdy .k{color:#444;font-weight:700}.rdy .no .k{color:#a11}.rdy .unknown .k,.rdy .na .k{color:#999;font-weight:400}.rdy .n{color:#777}.rdy .legend{color:#999;margin:9px 0 0;font-size:11.5px;line-height:1.5}.rdy li{flex-wrap:wrap}.rdy .blocks{color:#a11;margin:-3px 0 9px;font-size:12.5px;line-height:1.45}.rdy .no.soft .dot{background:#e0a33a}.rdy .no.soft .k{color:#8a5a08}.rdy .tag{letter-spacing:.05em;text-transform:uppercase;color:#fff;background:#c62828;border-radius:4px;padding:1px 5px;font-size:10px;font-weight:800;line-height:1.4}.rdy .fix{font:inherit;color:#1b6ec2;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:12px;font-weight:700;text-decoration:none}.rdy .fix:hover{text-decoration:underline}.blk{color:#a11;white-space:nowrap;margin-top:4px;font-size:11px;font-weight:700;display:block}.blk:before{content:"";vertical-align:1px;background:#d33;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.kv.edit select{box-sizing:border-box;width:100%;font:inherit;background:#fff;border:1px solid #d7d3cb;border-radius:6px;outline:none;padding:5px 8px;font-size:13px}.kv.edit select:focus{border-color:#02ad93}.kv.edit.cal .k:after{content:" · calendar";color:#2c4a7c;font-size:11px;font-weight:700}.kv.edit.cal input,.kv.edit.cal select{border-color:#b9c8e2}.kv.edit .want,.kv.edit .want:focus{border-color:#d33;box-shadow:0 0 0 3px #d3333329}.editbar a.crm{margin-left:auto}
