:root{--bg: #070b14;--card: #0b101d;--card2: #0e1524;--line: #1b2436;--line2: #232e45;--text: #e8edf6;--dim: #6b7891;--dimmer: #46536b;--cyan: #3fd0e9;--purple: #8b7cf6;--amber: #e6a23c;--green: #34c07c;--red: #e5636b;--blue: #4f8ef7;--li: #0a66c2}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:var(--bg);color:var(--text);font:13px/1.5 Segoe UI,system-ui,-apple-system,Roboto,sans-serif}.app{max-width:1320px;margin:0 auto;padding:14px 18px 90px}a{color:var(--cyan)}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 2px 14px}.brand{font-size:16px;font-weight:700;letter-spacing:.02em;margin-right:auto}.brand span{color:var(--cyan)}.chip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:11px;color:var(--dim);white-space:nowrap}.chip.fresh{color:var(--green);border-color:#34c07c59}.chip.warn{color:var(--red);border-color:#e5636b80;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin-bottom:16px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin-bottom:4px}.card-title{font-size:18px;font-weight:650;margin:0 0 2px}.card-sub{color:var(--dim);font-size:12px;margin:0}.card-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.card-head .grow{flex:1;min-width:0}.range-chip{background:var(--card2);border:1px solid var(--line2);border-radius:8px;padding:6px 12px;font-size:11.5px;color:var(--dim);white-space:nowrap}.cal-scroll{overflow-x:auto}.cal{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));min-width:760px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.cal-h{background:var(--card2);border-bottom:1px solid var(--line);padding:8px 12px;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--dim)}.cal-c{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:108px;padding:8px 8px 10px;position:relative}.cal-c:nth-child(5n){border-right:none}.cal-c.today{box-shadow:inset 0 0 0 1.5px var(--cyan);background:#3fd0e90a}.cal-num{font-size:12px;font-weight:650;color:var(--text)}.cal-c.today .cal-num{background:var(--cyan);color:#04222b;border-radius:6px;padding:1px 7px}.today-tag{position:absolute;top:9px;right:9px;font-size:8.5px;font-weight:800;letter-spacing:.12em;color:var(--cyan)}.cal-open{color:var(--dimmer);font-size:10.5px;margin-top:6px}.cal-ev{display:block;text-decoration:none;background:var(--card2);border:1px solid var(--line2);border-radius:8px;padding:5px 8px;margin-top:6px}.cal-ev:hover{border-color:var(--cyan)}.cal-ev-t{display:flex;align-items:center;gap:6px;color:var(--text);font-size:11px;font-weight:600;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dot{width:6px;height:6px;border-radius:50%;flex:none}.cal-ev-s{color:var(--dim);font-size:10px;margin-top:1px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cal-foot{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:10px;font-size:10.5px;color:var(--dim)}.cal-foot .spacer{margin-left:auto;color:var(--cyan)}.legend{display:inline-flex;align-items:center;gap:6px}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.tile{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;text-align:left;cursor:pointer;color:var(--text);font:inherit}.tile:hover{border-color:var(--line2);background:var(--card2)}.tile.on{border-color:var(--cyan);box-shadow:0 0 0 1px #3fd0e959}.tile-top{display:flex;align-items:center;gap:9px}.tile-ic{width:26px;height:26px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;flex:none}.tile-label{color:var(--dim);font-size:11.5px}.tile-n{font-size:23px;font-weight:750;margin:6px 0 2px}.tile-sub{color:var(--dimmer);font-size:10.5px}.dd-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:4px}.seg{display:inline-flex;background:var(--card2);border:1px solid var(--line2);border-radius:9px;padding:2px;margin-left:auto}.seg button{background:none;border:none;color:var(--dim);font:inherit;font-size:11.5px;padding:5px 12px;border-radius:7px;cursor:pointer}.seg button.on{background:var(--line2);color:var(--text);font-weight:600}.seg .cnt{margin-left:6px;font-size:10px;color:var(--dimmer)}.empty-state{text-align:center;padding:56px 20px 60px;color:var(--dim)}.empty-state .arrow{font-size:20px;color:var(--dimmer)}.empty-state h3{color:var(--text);font-size:15px;margin:10px 0 4px}.empty-state p{font-size:12px;margin:0}.grid-wrap{overflow-x:auto;margin:12px -20px -18px}table{width:100%;border-collapse:collapse;min-width:860px}th{text-align:left;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--dimmer);padding:10px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle;font-size:12.5px}tbody tr{cursor:pointer}tbody tr:hover{background:#3fd0e90a}tbody tr:last-child td{border-bottom:none}.st{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;color:var(--cyan);white-space:nowrap}.co{display:flex;align-items:center;gap:10px;min-width:0}.co-name{font-weight:650;font-size:12.5px}.co-sub{color:var(--dimmer);font-size:10.5px}.logo{width:28px;height:28px;border-radius:8px;flex:none;background:#fff;object-fit:contain}.logo.fallback{display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}.pill{display:inline-block;background:var(--card2);border:1px solid var(--line2);border-radius:999px;padding:3px 10px;font-size:10.5px;color:var(--dim);white-space:nowrap}.date-c{white-space:nowrap}.date-main{font-weight:650;font-size:12px}.date-rel{color:var(--dimmer);font-size:10.5px}.next-a{color:var(--dim);font-size:11.5px;max-width:230px}.chev{width:26px;height:26px;border-radius:50%;border:1px solid var(--line2);background:var(--card2);color:var(--dim);display:inline-flex;align-items:center;justify-content:center;font-size:12px}.acct{border:1px solid;border-radius:999px;padding:1px 9px;font-size:10.5px;white-space:nowrap}.fit{display:inline-flex;align-items:baseline;gap:5px;border:1px solid;border-radius:8px;padding:3px 9px;font-size:13px;font-weight:750;white-space:nowrap}.fit-t{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.85}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#02050a99;z-index:40}.detail{position:fixed;top:0;right:0;bottom:0;width:min(430px,100%);background:var(--card);border-left:1px solid var(--line2);z-index:50;padding:22px;overflow-y:auto}.detail h3{margin:0 34px 16px 0;font-size:15px;display:flex;align-items:center;gap:10px}.detail dl{display:grid;grid-template-columns:108px 1fr;gap:7px 12px;margin:0 0 18px}.detail dt{color:var(--dimmer);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.detail dd{margin:0;font-size:12.5px;overflow-wrap:anywhere}.close{position:absolute;top:14px;right:14px;background:none;border:none;color:var(--dim);font-size:16px;cursor:pointer}.src-link{display:inline-block;background:var(--blue);color:#fff;text-decoration:none;border-radius:9px;padding:9px 15px;font-size:12.5px}.apply-btn{border:none;cursor:pointer;background:var(--green);color:#04220f;font-weight:700}.apply-btn[disabled]{opacity:.6;cursor:default}@media (max-width: 900px){.tiles{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.app{padding:10px 10px 80px}.card{padding:14px;border-radius:12px}.grid-wrap{margin:10px -14px -14px}.detail{width:100%;border-left:none}.brand{width:100%}}.req-btn{background:var(--green);color:#04220f;border:none;border-radius:9px;padding:8px 16px;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer}.req-msg{background:#34c07c14;border:1px solid rgba(52,192,124,.3);border-radius:9px;padding:10px 14px;font-size:12px;color:var(--text);margin-top:10px}.chk-col{width:34px}.chk{width:15px;height:15px;accent-color:var(--green);cursor:pointer}.desc{margin:0 0 16px}.desc h4{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--dimmer);margin:0 0 6px}.desc-body{background:var(--card2);border:1px solid var(--line2);border-radius:9px;padding:12px;font-size:12px;line-height:1.55;color:var(--text);max-height:320px;overflow-y:auto;white-space:pre-wrap}.pager{display:flex;align-items:center;gap:12px;justify-content:flex-end;padding:10px 14px;border-top:1px solid var(--line);font-size:11.5px;color:var(--dim)}.pager button{background:var(--card2);border:1px solid var(--line2);color:var(--text);border-radius:7px;padding:5px 12px;font:inherit;font-size:11.5px;cursor:pointer}.pager button[disabled]{opacity:.4;cursor:default}.pg-n{color:var(--dimmer)}.th-sel{display:block;margin-top:4px;background:var(--card2);color:var(--text);border:1px solid var(--line2);border-radius:6px;font-size:10.5px;padding:2px 6px;text-transform:none;letter-spacing:normal;font-weight:400}.chip-btn{cursor:pointer;font:inherit;font-size:12px}.chip-btn:hover:not(:disabled){border-color:var(--blue, #4f8ef7);color:var(--blue, #4f8ef7)}.chip-btn:disabled{cursor:default;opacity:.8}.next-ready{color:#34c07c;font-weight:700;animation:pkg-glow 1.6s ease-in-out infinite alternate}.next-progress{color:#e6a23c;font-weight:600}@keyframes pkg-glow{0%{text-shadow:0 0 0 rgba(52,192,124,0)}to{text-shadow:0 0 12px rgba(52,192,124,.75)}}.dismiss-btn{border-color:#e5636b80;color:#e5636b}.dismiss-btn:hover:not(:disabled){background:#e5636b1f}.demo-chip{color:#f2c14e;border-color:#f2c14e80;font-weight:700}
