:root{--bg:#f7f7fa;--card:#fff;--line:#e7e7ee;--line-soft:#f0f0f5;--ink:#181822;--ink-soft:#61616f;--ink-faint:#8c8c9c;--rail:#15151e;--rail-line:#2a2a36;--rail-ink:#c3c3d0;--rail-faint:#787887;--rail-sec:#8f8fa1;--indigo:#0e9a63;--indigo-dark:#0b7a4e;--indigo-light:#dcf5e9;--green:#0e9a63;--green-dark:#0b7a4e;--green-light:#dcf5e9;--green-ring:#0e9a6329;--orange:#f0b429;--orange-light:#fdf0cd;--orange-ink:#8a6412;--red:#e5473f;--red-light:#fbe1df;--red-ink:#b22f28;--blue:#4c7eff;--blue-light:#e4ebff;--blue-ink:#2e56c8;--purple:#7b5cfa;--purple-light:#ebe5fe;--purple-ink:#5233c4;--r-sm:6px;--r-md:8px;--r-lg:12px;--rd-radius:var(--r-lg);--sh:0 1px 1px #14141e0a,0 2px 4px #14141e08;--sh-lg:0 1px 2px #14141e0d,0 12px 28px -10px #14141e2e;--rd-shadow:var(--sh)}body.theme-dark{--bg:#111116;--card:#1c1c24;--line:#2e2e38;--line-soft:#26262f;--ink:#ededf3;--ink-soft:#a5a5b8;--ink-faint:#7b7b8c;--green-light:#12362a;--green-dark:#5fd09e;--indigo-light:#12362a;--indigo-dark:#5fd09e;--blue-light:#1a2a4d;--blue-ink:#93b0ff;--orange-light:#3a2e10;--orange-ink:#e9c577;--red-light:#3a1b18;--red-ink:#f19c96;--purple-light:#241c46;--purple-ink:#bba8ff}body{--color-bg:var(--bg);--color-surface:var(--card);--color-surface-raised:var(--bg);--color-border:var(--line);--color-border-light:var(--line-soft);--color-border-strong:var(--line);--color-text:var(--ink);--color-text-secondary:var(--ink-soft);--color-text-muted:var(--ink-faint);--color-text-placeholder:var(--ink-faint);--color-primary:var(--indigo);--color-primary-hover:var(--indigo-dark);--color-primary-light:#0e9a631a;--color-primary-ring:#0e9a6340;--color-green:var(--green);--color-green-light:#0e9a631a;--color-green-border:#0e9a6340;--color-yellow:var(--orange);--color-yellow-light:#f0b4291f;--color-yellow-border:#f0b4294d;--color-red:var(--red);--color-red-light:#e5473f1a;--color-red-border:#e5473f40;--color-blue:var(--blue);--color-blue-light:#4c7eff1a;--color-blue-border:#4c7eff40;--color-orange:var(--orange);--color-orange-light:#f0b4291f;--color-orange-border:#f0b4294d;--color-purple:var(--purple);--color-purple-light:#7b5cfa1a;font-family:var(--font-manrope),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.mono,.num{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums}.num{letter-spacing:-.02em}.lbl{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);font-size:10px;font-weight:600}:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:var(--r-sm)}.rd-app{grid-template-columns:var(--rail-w,232px)minmax(0,1fr);background:var(--bg);min-height:100vh;color:var(--ink);display:grid}.rail{background:var(--rail);border-right:1px solid var(--rail-line);scrollbar-width:thin;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.rail::-webkit-scrollbar{width:5px}.rail::-webkit-scrollbar-thumb{background:#333342;border-radius:9px}.rail-brand{border-bottom:1px solid var(--rail-line);align-items:center;gap:10px;padding:16px 18px 14px;text-decoration:none;display:flex}.rail-logo{border-radius:var(--r-md);background:var(--indigo);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex;box-shadow:inset 0 1px #fff3}.rail-brand .nm{color:#fff;font-size:14px;font-weight:800;line-height:1.15}.rail-brand .sb{font-family:var(--font-mono),ui-monospace,monospace;color:var(--rail-faint);letter-spacing:.14em;text-transform:uppercase;margin-top:3px;font-size:9px}.rail-sec{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--rail-sec);padding:15px 20px 6px;font-size:9px;font-weight:600}.rail-item{border-radius:var(--r-md);min-height:36px;color:var(--rail-ink);cursor:pointer;flex-shrink:0;align-items:center;gap:10px;margin:0 9px 1px;padding:0 10px;font-size:13px;font-weight:600;text-decoration:none;transition:background .13s,color .13s;display:flex;position:relative}.rail-item:hover{color:#fff;background:#22222e}.rail-item.active{background:var(--indigo);color:#fff}.rail-item svg{opacity:.72;flex:none;width:16px;height:16px}.rail-item.active svg{opacity:1}.rail-item .t{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.rail-badge{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;color:var(--rail-ink);background:#ffffff17;border-radius:5px;flex:none;padding:1px 6px;font-size:10px;font-weight:600}.rail-item.active .rail-badge{color:#fff;background:#00000038}.rail-badge.hot{color:#f3ce7c;background:#f0b42938}.rail-spacer{flex:1;min-height:14px}.rail-user{border-top:1px solid var(--rail-line);align-items:center;gap:10px;padding:11px 18px;display:flex}.rail-avatar{background:var(--purple-light);width:31px;height:31px;color:var(--purple-ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.rail-user .nm{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;line-height:1.2;overflow:hidden}.rail-user .rl{color:var(--rail-faint);margin-top:1px;font-size:10.5px}body.rail-light .rail{background:var(--card);border-right:1px solid var(--line)}body.rail-light .rail-brand,body.rail-light .rail-user{border-color:var(--line)}body.rail-light .rail-brand .nm,body.rail-light .rail-user .nm{color:var(--ink)}body.rail-light .rail-brand .sb,body.rail-light .rail-user .rl,body.rail-light .rail-sec{color:var(--ink-faint)}body.rail-light .rail-item{color:var(--ink-soft)}body.rail-light .rail-item:hover{background:var(--bg);color:var(--ink)}body.rail-light .rail-item.active{background:var(--indigo-light);color:var(--indigo-dark)}body.rail-light .rail-badge{background:var(--bg);color:var(--ink-soft)}.rd-main{flex-direction:column;min-width:0;display:flex}.topbar{background:var(--card);border-bottom:1px solid var(--line);z-index:60;align-items:center;gap:14px;padding:10px 24px;display:flex;position:sticky;top:0}.brand-title{letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;font-size:16px;font-weight:800}.brand-title span{color:var(--indigo)}.topbar-search{flex:1;min-width:180px;max-width:420px}.topbar-search input{min-width:0}.topbar-right{color:var(--ink-soft);align-items:center;gap:6px;margin-left:auto;display:flex}.ib{border-radius:var(--r-md);width:34px;height:34px;color:var(--ink-soft);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;transition:background .13s,color .13s;display:flex;position:relative}.ib:hover{background:var(--bg);color:var(--ink)}.ib svg{width:17px;height:17px}.ib[aria-pressed=true]{color:var(--indigo)}.support-btn{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);height:34px;color:var(--ink-soft);font:inherit;cursor:pointer;white-space:nowrap;flex:none;align-items:center;gap:7px;padding:0 12px;font-size:12.5px;font-weight:600;transition:background .13s,color .13s;display:inline-flex}.support-btn:hover{background:var(--bg);color:var(--ink)}.support-btn svg{width:16px;height:16px}@media (max-width:820px){.support-btn{justify-content:center;width:34px;padding:0}.support-btn span{display:none}}.support-modal{max-width:520px}.support-intro{color:var(--ink-soft);margin:0 0 14px;font-size:13.5px;line-height:1.5}.support-intro a,.support-done a{color:var(--green-dark);font-weight:700;text-decoration:none}.support-topics{gap:6px;margin-bottom:14px;display:flex}.support-topics button{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);height:34px;color:var(--ink-soft);font:inherit;cursor:pointer;flex:1;font-size:13px;font-weight:600}.support-topics button.on{border-color:var(--green);color:var(--green-dark);background:var(--green-light)}.support-error{color:#b91c1c;margin:0 0 8px;font-size:13px}.support-done{padding:4px 0 8px;font-size:14px;line-height:1.55}.support-done p{margin:0 0 10px}.support-shots{flex-wrap:wrap;gap:8px;display:flex}.support-shot,.support-shot-add{border-radius:var(--r-md);border:1px solid var(--line);width:84px;height:84px;position:relative;overflow:hidden}.support-shot img{object-fit:cover;width:100%;height:100%;display:block}.support-shot button{border-radius:var(--r-sm);color:#fff;cursor:pointer;background:#0009;border:none;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:flex;position:absolute;top:4px;right:4px}.support-shot-add{background:var(--bg);color:var(--ink-soft);cursor:pointer;border-style:dashed;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:11.5px;font-weight:600;display:flex}.support-shot-add:hover{color:var(--ink)}.nav-toggle,.rail-scrim{display:none}.theme-toggle{background:var(--bg);border:1px solid var(--line);border-radius:var(--r-md);align-items:center;gap:2px;padding:3px;display:flex}.theme-toggle button{border-radius:var(--r-sm);cursor:pointer;width:28px;height:28px;color:var(--ink-faint);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.theme-toggle button svg{width:15px;height:15px}.theme-toggle button.on{background:var(--indigo);color:#fff}@media (min-width:821px){body.rail-collapsed{--rail-w:72px}body.rail-collapsed .rail-brand{justify-content:center;padding:16px 0 14px}body.rail-collapsed .rail-sec{display:none}body.rail-collapsed .rail-group+.rail-group{border-top:1px solid var(--rail-line);margin-top:9px;padding-top:9px}body.rail-collapsed .rail-item{justify-content:center;margin:0 9px 2px;padding:0}body.rail-collapsed .rail-user{justify-content:center;padding:11px 0}body.rail-collapsed .rail-badge{display:none}body.rail-collapsed .rail-hide-when-narrow{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body.rail-collapsed .rail-signout{width:calc(100% - 18px)}}body.side-hidden .pside,body.side-hidden .dash-side{display:none}body.side-hidden .pbody,body.side-hidden .dash-grid{grid-template-columns:minmax(0,1fr)}.rd{color:var(--ink);padding:18px 24px 56px}.rd .crumbs{color:var(--ink-soft);align-items:center;gap:8px;margin-bottom:4px;font-size:12.5px;font-weight:600;display:flex}.rd .page-title{letter-spacing:-.028em;margin:2px 0 4px;font-size:22px;font-weight:800}.rd .page-sub{color:var(--ink-soft);margin:0 0 18px;font-size:12.5px}.rd .tabbar{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:stretch;gap:2px;margin-bottom:20px;display:flex;overflow-x:auto}.rd .tabbar::-webkit-scrollbar{display:none}.rd .tabbar .tab{white-space:nowrap;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:none;align-items:center;gap:6px;margin-bottom:-1px;padding:9px 12px 11px;font-family:inherit;font-size:13.5px;font-weight:600;transition:color .13s,border-color .13s;display:flex}.rd .tabbar .tab:hover{color:var(--ink)}.rd .tabbar .tab.active{color:var(--indigo-dark);border-bottom-color:var(--indigo);font-weight:700}.rd .tabbar .tab .c{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;color:var(--ink-faint);background:var(--bg);border-radius:4px;padding:1px 5px;font-size:10.5px;font-weight:600}.rd .tabbar .tab.active .c{background:var(--green-light);color:var(--green-dark)}.rd .tabbar .grow{flex:1;min-width:12px}.rd .tabbar .btn{flex:none;align-self:center;margin-bottom:6px}.rd .toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;display:flex}.rd .tool-chip{border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);color:var(--ink-soft);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:600;display:inline-flex}.rd .tool-chip:hover{border-color:var(--indigo)}.rd .tool-chip svg{width:15px;height:15px}.rd .count-chip{background:var(--card);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.rd .dot{border-radius:50%;width:8px;height:8px;display:inline-block}.rd .btn{border-radius:var(--r-md);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none;transition:background .13s,border-color .13s,color .13s,transform .1s;display:inline-flex}.rd .btn:active{transform:translateY(1px)}.rd .btn svg{flex:none;width:15px;height:15px}.rd .btn-primary{background:var(--indigo);color:#fff;box-shadow:0 1px 2px #14141e29,inset 0 1px #ffffff2b}.rd .btn-primary:hover{background:var(--indigo-dark);color:#fff}.rd .btn-ghost,.rd .btn-secondary{background:var(--card);border:1px solid var(--line);color:var(--ink);box-shadow:var(--sh)}.rd .btn-ghost:hover,.rd .btn-secondary:hover{color:var(--ink);background:#fcfcfe;border-color:#d5d5e0}.rd .btn-sm{min-height:30px;padding:5px 11px;font-size:12.5px}.rd .btn-sm svg{width:13px;height:13px}.rd .btn-ic{width:30px;min-height:30px;padding:0}.rd .btn-danger{color:var(--ink-faint);box-shadow:none;background:0 0;border:1px solid #0000;padding:8px 10px}.rd .btn-danger:hover{background:var(--red-light);color:var(--red-ink)}.rd .btn-wa{background:var(--card);border:1px solid var(--line);color:var(--green-dark);box-shadow:var(--sh)}.rd .btn-wa:hover{background:#fbfefc;border-color:#0e9a6366}.rd .form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px 22px;display:grid}.rd .field label{color:var(--ink-soft);margin-bottom:6px;font-size:12.5px;font-weight:700;display:block}.rd .field input,.rd .field select,.rd .field textarea{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);width:100%;color:var(--ink);padding:9px 12px;font-family:inherit;font-size:13px}.rd .field input::placeholder,.rd .field textarea::placeholder{color:var(--ink-faint)}.rd .field input:focus,.rd .field select:focus,.rd .field textarea:focus{border-color:var(--indigo);background:var(--card);outline:none}.rd .section-title{letter-spacing:-.01em;margin-bottom:14px;font-size:14px;font-weight:800}.rd .pad{padding:16px}.rd .card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh)}.rd .card-head{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:10px;padding:13px 16px;display:flex}.rd .card-head strong{letter-spacing:-.01em;font-size:13.5px;font-weight:700}.rd .card-head .r{align-items:center;gap:8px;margin-left:auto;display:flex}.rd .card-body{padding:16px}.rd .card-body.flush,:is(.rd .card-body:has(>.table-wrap:only-child),.rd .card-body:has(>.tw:only-child),.rd .card-body:has(>.table-container:only-child),.rd .card-body:has(>table:only-child)){padding:0}.rd .caret{border-radius:var(--r-sm);width:24px;height:24px;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;flex:none;justify-content:center;align-items:center;margin-left:-4px;display:flex}.rd .caret:hover{background:var(--bg);color:var(--ink)}.rd .caret svg{width:15px;height:15px;transition:transform .16s}.rd .card.shut .caret svg{transform:rotate(-90deg)}.rd .card.shut>.card-head,.rd .card.shut>.card-header{border-bottom-color:#0000}.rd .card.shut .card-body,.rd .card.shut .table-wrap,.rd .card.shut .tw{display:none}.rd .pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:4px 11px;font-size:11.5px;font-weight:700;display:inline-flex}.rd .pill.new{background:var(--blue-light);color:var(--blue-ink)}.rd .pill.contacted{background:var(--orange-light);color:var(--orange-ink)}.rd .pill.qualified{background:var(--green-light);color:var(--indigo-dark)}.rd .pill.lost{background:var(--red-light);color:var(--red-ink)}.rd .pill.pending{background:var(--bg);color:var(--ink-soft)}.rd .pill.hold{background:var(--orange-light);color:var(--orange-ink)}.rd .pill.closeout{color:#0f766e;background:#0d94881f}.rd .pill.scheduled{background:var(--purple-light);color:var(--purple-ink)}.rd .badge{background:var(--bg);color:var(--ink-soft);white-space:nowrap;border-color:#0000;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.rd .badge.g{background:var(--green-light);color:var(--green-dark)}.rd .badge.b{background:var(--blue-light);color:var(--blue-ink)}.rd .badge.o{background:var(--orange-light);color:var(--orange-ink)}.rd .badge.r{background:var(--red-light);color:var(--red-ink)}.rd .badge.p{background:var(--purple-light);color:var(--purple-ink)}.rd .badge .d{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.rd .count{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums}.rd .table-wrap,.rd .tw{overflow-x:auto}.table-responsive{max-width:100%;overflow-x:auto}.rd table{border-collapse:collapse;width:100%}.rd th{text-align:left;font-family:var(--font-mono),ui-monospace,monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-faint);border-bottom:1px solid var(--line);white-space:nowrap;background:#fcfcfe;padding:10px 16px;font-size:10px;font-weight:600}.rd td{border-bottom:1px solid var(--line-soft);vertical-align:middle;color:var(--ink);padding:12px 16px;font-size:13px}.rd tbody tr:last-child td{border-bottom:none}.rd tbody tr:hover td{background:#0e9a6309}.rd td.r,.rd th.r{text-align:right}.rd .name-cell,.rd .addr{letter-spacing:-.01em;font-weight:700}.rd .sub-cell{color:var(--ink-soft);font-size:12px}.rd .late{color:var(--red-ink);font-weight:700}.rd .dash{color:var(--ink-faint)}.rd .text-link{color:var(--ink);font-weight:700;text-decoration:none}.rd .text-link:hover{color:var(--indigo)}.rd .icon-btn{border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);cursor:pointer;width:30px;height:30px;color:var(--ink-soft);justify-content:center;align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.rd .icon-btn:hover{color:var(--indigo);border-color:var(--indigo)}.rd .rd-select,.rd .rd-input{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);color:var(--ink);padding:8px 12px;font-family:inherit;font-size:13px}.rd .rd-input::placeholder{color:var(--ink-faint)}.rd .rd-select:focus,.rd .rd-input:focus{border-color:var(--indigo);outline:none}.rd .empty,.rd .empty-state{text-align:center;color:var(--ink-soft);padding:22px 16px}.rd .empty .ic{border-radius:var(--r-md);background:var(--bg);border:1px solid var(--line);width:38px;height:38px;color:var(--ink-faint);justify-content:center;align-items:center;margin:0 auto 10px;display:flex}.rd .empty .t{color:var(--ink);font-size:13px;font-weight:700}.rd .empty .d{color:var(--ink-soft);margin-top:4px;text-wrap:pretty;max-width:340px;margin-inline:auto;font-size:12.5px}.rd .rows{flex-direction:column;display:flex}.rd .rows>.row{border-bottom:1px solid var(--line-soft);align-items:center;gap:11px;padding:10px 0;display:flex}.rd .rows>.row:last-child{border-bottom:none}.rd .rows>.row .av{border-radius:var(--r-md);background:var(--bg);border:1px solid var(--line);width:32px;height:32px;color:var(--ink-soft);flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.rd .rows>.row .g{flex:1;min-width:0}.rd .rows>.row .nm{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.rd .rows>.row .sub{color:var(--ink-faint);margin-top:1px;font-size:11.5px}.rd .rows>.row .r{align-items:center;gap:8px;margin-left:auto;display:flex}.rd .rows>.row.done .nm{color:var(--ink-faint);text-decoration:line-through}.rd .check{border-radius:var(--r-sm);border:1.7px solid var(--line);background:var(--card);cursor:pointer;flex:none;justify-content:center;align-items:center;width:18px;height:18px;padding:0;display:flex}.rd .check svg{stroke-width:3.4px;color:#fff;opacity:0;width:11px;height:11px}.rd .check.on{background:var(--indigo);border-color:var(--indigo)}.rd .check.on svg{opacity:1}.rd .add{border:1px dashed var(--line);border-radius:var(--r-md);width:100%;min-height:38px;color:var(--ink-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:9px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .13s,color .13s;display:flex}.rd .add:hover{border-color:var(--indigo);color:var(--indigo-dark)}.rd .add svg{width:15px;height:15px}.rd .kv{flex-direction:column;display:flex}.rd .kv .kvr{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:10px;padding:9px 0;display:flex}.rd .kv .kvr:last-child{border-bottom:none}.rd .kv .k{color:var(--ink-soft);flex:none;font-size:12.5px;font-weight:600}.rd .kv .v{text-align:right;letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:auto;font-size:12.5px;font-weight:700;overflow:hidden}.rd .stat-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.rd .stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh);padding:14px 16px;transition:border-color .14s,box-shadow .14s,transform .14s;display:block;position:relative;overflow:hidden}.rd .stat-card:before{content:"";background:var(--ink-faint);width:3px;position:absolute;top:0;bottom:0;left:0}.rd .stat-card:after{display:none}.rd .stat-card:hover{box-shadow:var(--sh-lg);border-color:#d5d5e0;transform:translateY(-1px)}.rd .stat-card .stat-label{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:8px;font-size:10px;font-weight:600;display:flex}.rd .stat-card .stat-label svg{width:16px;height:16px;color:inherit;flex:none}.rd .stat-card .stat-value{color:var(--ink);font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin-top:8px;font-size:27px;font-weight:700;line-height:1}.rd .stat-card .stat-go{color:var(--ink-faint);opacity:0;transition:opacity .14s,transform .14s;position:absolute;top:14px;right:12px}.rd .stat-card:hover .stat-go{opacity:1;transform:translate(2px)}.rd .stat-card.blue:before{background:var(--blue)}.rd .stat-card.blue .stat-label svg{color:var(--blue)}.rd .stat-card.yellow:before{background:var(--orange)}.rd .stat-card.yellow .stat-label svg{color:var(--orange-ink)}.rd .stat-card.green:before{background:var(--green)}.rd .stat-card.green .stat-label svg{color:var(--green)}.rd .stat-card.red:before{background:var(--red)}.rd .stat-card.red .stat-label svg{color:var(--red)}.rd .stat-card.blue .stat-value,.rd .stat-card.green .stat-value,.rd .stat-card.yellow .stat-value,.rd .stat-card.red .stat-value{color:var(--ink)}.phead{background:var(--card);border-bottom:1px solid var(--line);padding:14px 24px 0}.phead .back{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);width:34px;height:34px;box-shadow:var(--sh);color:var(--ink-soft);flex:none;justify-content:center;align-items:center;text-decoration:none;transition:border-color .13s,color .13s,background .13s;display:flex}.phead .back:hover{color:var(--ink);background:#fcfcfe;border-color:#d5d5e0}body.theme-dark .phead .back:hover{background:#22222c;border-color:#3d3d4a}.phead-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.phead-id{flex-wrap:wrap;align-items:center;gap:12px;min-width:0;display:flex}.phead h1{letter-spacing:-.028em;max-width:620px;margin:0;font-size:21px;font-weight:800;line-height:1.28}.pmeta{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.phead-act{align-items:center;gap:8px;margin-left:auto;display:flex}.chip{background:var(--bg);border:1px solid var(--line);min-height:26px;color:var(--ink-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:11.5px;font-weight:700;text-decoration:none;display:inline-flex}.chip svg{flex:none;width:13px;height:13px}.chip.client{color:var(--green-dark);background:#0e9a631a;border-color:#0e9a6347}.chip.client:hover{background:#0e9a6329}.chip.none{color:var(--ink-faint);border-style:dashed}.statsel{border-radius:var(--r-md);border:1px solid var(--line);background:var(--card);min-height:28px;box-shadow:var(--sh);align-items:center;gap:7px;padding:0 4px 0 10px;display:inline-flex}.statsel:hover{border-color:#d5d5e0}.statsel .d{background:var(--purple);border-radius:50%;flex:none;width:7px;height:7px}.statsel .d.passed,.statsel .d.completed{background:var(--green)}.statsel .d.failed,.statsel .d.cancelled{background:var(--red)}.statsel .d.pending,.statsel .d.hold{background:var(--orange)}.statsel .d.scheduled{background:var(--blue)}.statsel select{color:var(--ink);cursor:pointer;background:0 0;border:none;padding:4px 6px 4px 0;font-family:inherit;font-size:12.5px;font-weight:700}.statsel select:focus{outline:none}body.theme-dark .statsel:hover{border-color:#3d3d4a}.rd .pipe{padding:20px 22px 16px}.rd .pipe-track{grid-template-columns:repeat(6,minmax(0,1fr));padding-bottom:28px;display:grid;position:relative}.rd .pipe-track:before,.rd .pipe-track:after{content:"";border-radius:2px;height:2px;position:absolute;top:13px}.rd .pipe-track:before{background:var(--line);left:8.33%;right:8.33%}.rd .pipe-track:after{width:calc(83.34%*var(--pipe-done,0));background:var(--indigo);transition:width .4s cubic-bezier(.16,1,.3,1);left:8.33%}.rd .stage{z-index:1;cursor:pointer;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;padding:0;font-family:inherit;display:flex;position:relative}.rd .stage .k{background:var(--card);border:2px solid var(--line);width:28px;height:28px;color:var(--ink-faint);font-family:var(--font-mono),ui-monospace,monospace;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;transition:border-color .14s,background .14s;display:flex}.rd .stage .t{color:var(--ink-faint);text-align:center;letter-spacing:-.01em;font-size:11.5px;font-weight:600;line-height:1.3}.rd .stage.done .k{background:var(--indigo);border-color:var(--indigo);color:#fff}.rd .stage.done .t{color:var(--ink-soft)}.rd .stage.now .k{border-color:var(--indigo);box-shadow:0 0 0 4px var(--green-ring)}.rd .stage.now .k:after{content:"";background:var(--indigo);border-radius:50%;width:9px;height:9px}.rd .stage.now .t{color:var(--ink);font-weight:800}.rd .stage.alarm .k{border-color:var(--red);background:var(--red-light);color:var(--red-ink)}.rd .stage.alarm .t{color:var(--red-ink)}.rd .stage:hover:not(.now) .k{border-color:#c6c6d4}.rd .pipe-foot{border-top:1px solid var(--line-soft);flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;padding-top:14px;display:flex}.rd .pipe-foot .info{color:var(--ink-soft);flex:1;min-width:200px;font-size:12.5px}.rd .pipe-foot .info b{color:var(--ink);font-weight:700}.rd .pipe-foot .r{flex-wrap:wrap;gap:8px;display:flex}.rd .insp-dots{background:var(--card);border:1px solid var(--line);box-shadow:var(--sh);white-space:nowrap;border-radius:999px;gap:3px;margin-top:6px;padding:3px 5px;display:flex;position:absolute;top:100%}.rd .insp-dot{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:15px;height:15px;font-size:9px;font-weight:700;display:inline-flex}.rd .insp-dot.passed{background:var(--green)}.rd .insp-dot.partial_pass{background:var(--orange);color:var(--orange-ink)}.rd .insp-dot.failed,.rd .insp-dot.re_inspection{background:var(--red)}.rd .insp-dot.scheduled{background:var(--purple)}.rd .phases{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px;padding:14px 16px;display:grid}.rd .phase{border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;background:var(--card);min-width:0;color:inherit;text-align:left;flex-direction:column;align-items:stretch;gap:3px;padding:9px 11px;font-family:inherit;transition:border-color .14s,box-shadow .14s,transform .14s;display:flex}.rd .phase:hover{box-shadow:var(--sh-lg);border-color:#c6c6d4;transform:translateY(-1px)}.rd .phase .s{font-family:var(--font-mono),ui-monospace,monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:5px;font-size:9px;font-weight:600;display:flex}.rd .phase .s svg{stroke-width:3px;width:11px;height:11px}.rd .phase .nm{letter-spacing:-.01em;font-size:13.5px;font-weight:700}.rd .phase .by{color:var(--ink-faint);font-size:11px}.rd .phase.done{border-color:var(--green);background:var(--green-light)}.rd .phase.done .s{color:var(--green-dark)}.rd .phase.prog{border-color:var(--blue);background:var(--blue-light)}.rd .phase.prog .s{color:var(--blue-ink)}.rd .phase.skip{opacity:.5}.rd .phase.skip .nm{text-decoration:line-through}.rd .suggest{background:var(--green-light);border-radius:var(--r-md);border:1px solid #0e9a6340;flex-wrap:wrap;align-items:center;gap:10px;margin:0 16px 14px;padding:11px 14px;display:flex}.rd .suggest svg{width:17px;height:17px;color:var(--green);flex:none}.rd .suggest .t{flex:1;min-width:180px;font-size:13px;font-weight:600}.rd .pbody{grid-template-columns:minmax(0,1fr) 296px;align-items:start;gap:16px;display:grid}.rd .pcol{flex-direction:column;gap:16px;min-width:0;display:flex}.rd .pside{flex-direction:column;gap:16px;display:flex;position:sticky;top:66px}.rd .money-top{border-bottom:1px solid var(--line-soft);padding:15px 16px}.rd .money-top .amt{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin-top:5px;font-size:24px;font-weight:700}.rd .meter{background:var(--line);border-radius:3px;height:6px;margin:12px 0 10px;overflow:hidden}.rd .meter i{background:var(--indigo);border-radius:3px;height:100%;display:block}.rd .money-split{gap:18px;display:flex}.rd .money-split .v{font-family:var(--font-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;margin-top:3px;font-size:14px;font-weight:700}.rd .money-split .v.pos{color:var(--green-dark)}.rd .tl{padding-left:18px;position:relative}.rd .tl:before{content:"";background:var(--line);width:1.5px;position:absolute;top:6px;bottom:7px;left:4px}.rd .ev{padding-bottom:14px;position:relative}.rd .ev:last-child{padding-bottom:0}.rd .ev:before{content:"";background:var(--card);border:2px solid var(--line);border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:-18px}.rd .ev.hi:before{border-color:var(--indigo);background:var(--indigo)}.rd .ev .t{letter-spacing:-.01em;text-wrap:pretty;font-size:12.5px;font-weight:700}.rd .ev .d{font-family:var(--font-mono),ui-monospace,monospace;color:var(--ink-faint);margin-top:2px;font-size:10.5px}.rd .card{padding:0}.rd .card.pad{padding:16px}.rd .card>.card-header{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-bottom:0;padding:13px 16px;display:flex}.rd .card-title{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:13.5px;font-weight:700}.rd .card>.card-header .r{align-items:center;gap:8px;margin-left:auto;display:flex}.rd .dash-head{flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.rd .dash-grid{grid-template-columns:minmax(0,1fr) 312px;align-items:start;gap:16px;display:grid}.rd .dash-col{flex-direction:column;gap:16px;min-width:0;display:flex}.rd .dash-side{flex-direction:column;gap:16px;display:flex;position:sticky;top:66px}.rd .dash-grid td{white-space:nowrap;padding:11px 16px}.rd .dash-grid .tw table{min-width:max-content}.rd .note-cell{max-width:210px;color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.rd .two .a{white-space:nowrap;font-size:12.5px}.rd .two .b{color:var(--ink-faint);margin-top:1px;font-size:11.5px}.rd .wdg{position:relative}.rd .wdg.editing{border:2px dashed var(--line);border-radius:var(--r-lg);cursor:grab;padding:8px;transition:border-color .13s,opacity .13s}.rd .wdg.editing:hover,.rd .wdg.editing.over{border-color:var(--indigo)}.rd .wdg.editing.dragging{opacity:.5}.rd .wdg-bar{color:var(--ink-soft);align-items:center;gap:8px;padding:0 4px 8px;font-size:12.5px;font-weight:700;display:flex}.rd .wdg-bar .g{align-items:center;gap:6px;min-width:0;display:flex}.rd .wdg-bar .btn{margin-left:auto}.rd .chips{flex-wrap:wrap;gap:8px;display:flex}tbody tr:hover{background:#0e9a630b}tbody tr:hover td{color:var(--ink)}body.theme-dark tbody tr:hover{background:#ffffff0a}body.theme-dark .rd th{background:#191920}body.theme-dark .rd .btn-secondary:hover,body.theme-dark .rd .btn-ghost:hover{background:#22222c;border-color:#3d3d4a}body.theme-dark .rd .btn-wa:hover{background:#22222c}body.theme-dark .rd .stat-card:hover,body.theme-dark .rd .phase:hover{border-color:#3d3d4a}@keyframes rd-shimmer{to{background-position:-200% 0}}.rd-skel{background:linear-gradient(90deg,var(--line)25%,color-mix(in srgb,var(--line),var(--ink-faint)22%)50%,var(--line)75%);border-radius:var(--r-md);background-size:200% 100%;flex-shrink:0;animation:1.4s ease-in-out infinite rd-shimmer}@media (prefers-reduced-motion:reduce){.rd-skel{animation:none}.rd .btn,.rd .card,.rd .stat-card,.rd .phase,.rd .caret svg{transition:none}}.rd-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rd-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.rd-stack>*{min-width:0}.rd-split{grid-template-columns:minmax(0,1fr)var(--side,300px);align-items:start;display:grid}.cal-weekdays,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-wd,.cal-none{display:none}.pb-add{grid-template-columns:150px 130px 1fr 1fr 80px 110px 110px auto;align-items:end;display:grid}@media (max-width:1240px){.rd .dash-grid{grid-template-columns:minmax(0,1fr)}.rd .dash-side{position:static}}@media (max-width:1180px){.rd .pbody{grid-template-columns:minmax(0,1fr)}.rd .pside{position:static}}@media (max-width:1080px){.rd .stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.rd-app{grid-template-columns:1fr}.rail{z-index:95;visibility:hidden;width:min(280px,84vw);height:100dvh;transition:transform .2s,visibility 0s linear .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.rd-app.menu-open .rail{visibility:visible;transition:transform .2s;transform:none;box-shadow:0 0 40px #00000047}.rail-scrim{z-index:94;background:#0f0f1673;display:block;position:fixed;inset:0}html:has(.rd-app.menu-open){overflow:hidden}.nav-toggle{display:flex}.topbar-wide{display:none}.topbar{gap:8px}.topbar-search{min-width:0}.search-kbd{display:none}.rd .card{min-width:0}.rd-split,.rd-cols-2{grid-template-columns:minmax(0,1fr)}.rd-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-head{flex-wrap:wrap;gap:10px}.cal-weekdays,.cal-pad,.cal-idle{display:none!important}.cal-grid{grid-template-columns:minmax(0,1fr)}.cal-cell{min-height:0!important}.cal-wd{display:inline}.cal-none{text-align:center;color:var(--ink-soft);padding:24px 0;font-size:13px;display:block}.pb-add{grid-template-columns:repeat(2,minmax(0,1fr))}.pb-add>.btn{grid-column:1/-1;justify-content:center}.top-bar{flex-wrap:wrap;gap:8px}.stat-card{padding:14px 16px}.stat-card .stat-value{overflow-wrap:anywhere;font-size:1.25rem}body.rail-collapsed .rd-app{grid-template-columns:1fr}.rd{padding:16px 14px 48px}.topbar{padding:10px 14px}.phead{padding:14px 14px 0}.rd .pipe-track{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:18px}.rd .pipe-track:before,.rd .pipe-track:after{display:none}.rd form.toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.rd form.toolbar>*{width:100%;min-width:0;max-width:none!important;margin:0!important}.rd form.toolbar>.btn{justify-content:center}.rd form.toolbar>div{grid-column:1/-1;gap:8px;display:flex}.rd form.toolbar>div>*{flex:1 1 0;justify-content:center;min-width:0}.date-filter{gap:12px!important}.df-quick{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;display:grid!important}.df-range{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px!important;margin-left:0!important;display:grid!important}.df-range>div{min-width:0}.df-range input{min-width:0;width:100%!important}.df-quick>.btn,.df-range>.btn{justify-content:center}.df-range>.btn:nth-child(3):last-child{grid-column:1/-1}.rd .card-head>div{flex-wrap:wrap;max-width:100%}.rd .form-grid{gap:12px 14px;grid-template-columns:repeat(2,minmax(0,1fr))!important}.rd-stack{grid-template-columns:minmax(0,1fr)!important}.qb-line{grid-template-columns:repeat(3,minmax(0,1fr)) 28px!important}.qb-line>:first-child{grid-column:1/3}.qb-line>:nth-child(2){grid-column:3/-1}.rd-main table:not(.keep-table){display:block;width:100%!important;min-width:0!important}.rd-main table:not(.keep-table) thead{display:none}.rd-main table:not(.keep-table)>tbody,.rd-main table:not(.keep-table)>tfoot{display:block}.rd-main table:not(.keep-table) tr{border-bottom:1px solid var(--line-soft);padding:10px 14px;display:block}.rd-main table:not(.keep-table) td{display:flow-root;text-align:right!important;white-space:normal!important;border:0!important;max-width:none!important;padding:4px 0!important}.rd-main table:not(.keep-table) td[data-label]:before{content:attr(data-label);float:left;text-align:left;max-width:45%;line-height:20px;font-family:var(--font-mono),ui-monospace,monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);margin-right:12px;font-size:10px;font-weight:600}.rd-main table:not(.keep-table) td:not([data-label]){text-align:left!important}.rd-main table:not(.keep-table) td[data-label]>*{justify-content:flex-end}.rd-main table:not(.keep-table) td:empty{display:none}}@media print{.print-hide,.rail,.topbar{display:none!important}.rd-app{display:block}.rd{padding:0}.rd .card{box-shadow:none;border:none}}
.ntf-bell{border:1px solid var(--line);background:var(--bg);width:34px;height:34px;color:var(--ink-faint);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.ntf-bell:hover{color:var(--ink);border-color:var(--indigo)}.ntf-bell.open{background:var(--indigo);border-color:var(--indigo);color:#fff}.ntf-bell svg{width:16px;height:16px}.ntf-badge{background:var(--orange);color:#1b1b25;text-align:center;border:2px solid var(--card);box-sizing:content-box;border-radius:999px;min-width:15px;height:15px;padding:0 3px;font-size:10px;font-weight:800;line-height:15px;position:absolute;top:-6px;right:-7px}.ntf-badge.critical{background:var(--red);color:#fff}.ntf-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ntf-overlay{z-index:980;background:#0c0c1261;animation:.16s ntfFade;position:fixed;inset:0}.ntf-panel{z-index:981;background:var(--card);border-left:1px solid var(--line);flex-direction:column;width:400px;max-width:100vw;animation:.18s ease-out ntfSlideIn;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 40px #14141e24}@keyframes ntfSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ntfFade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.ntf-panel,.ntf-overlay{animation:none}}@media (max-width:640px){.ntf-panel{border-left:none;width:100vw}}.ntf-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px 14px;display:flex}.ntf-head h2{letter-spacing:-.01em;color:var(--ink);flex:1;margin:0;font-size:16px;font-weight:800}.ntf-head-actions{align-items:center;gap:6px;display:flex}.ntf-head-actions button{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;font-weight:700;display:inline-flex}.ntf-head-actions button:hover{background:var(--bg);color:var(--ink)}.ntf-head-actions button:disabled{opacity:.4;cursor:default}.ntf-head-actions button:disabled:hover{color:var(--ink-soft);background:0 0}.ntf-filters{border-bottom:1px solid var(--line);scrollbar-width:none;gap:5px;padding:12px 14px;display:flex;overflow-x:auto}.ntf-filters::-webkit-scrollbar{height:0}.ntf-filters button{border:1px solid var(--line);background:var(--card);color:var(--ink-soft);font:inherit;white-space:nowrap;cursor:pointer;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:700}.ntf-filters button:hover{border-color:var(--indigo);color:var(--indigo)}.ntf-filters button.active{background:var(--indigo);border-color:var(--indigo);color:#fff}.ntf-list{flex:1;padding-bottom:24px;overflow-y:auto}.ntf-group{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin:0;padding:14px 18px 6px;font-size:11px;font-weight:800}.ntf-item{width:100%;color:var(--ink);background:0 0;border-left:3px solid #0000;align-items:stretch;display:flex}.ntf-item-main{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;flex:1;align-items:flex-start;gap:12px;padding:12px 6px 12px 18px;display:flex}.ntf-item-dismiss{width:26px;height:26px;color:var(--muted,#6b7280);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:7px;flex-shrink:0;align-self:center;place-items:center;margin-right:12px;transition:opacity .12s,background .12s;display:grid}.ntf-item:hover .ntf-item-dismiss,.ntf-item-dismiss:focus-visible{opacity:1}.ntf-item-dismiss:hover{background:var(--bg);color:var(--ink)}@media (hover:none){.ntf-item-dismiss{opacity:1}}.ntf-item:hover{background:var(--bg)}.ntf-item.unread{border-left-color:var(--indigo);background:#0e9a630b}.ntf-item.unread.sev-critical{border-left-color:var(--red);background:#e5473f0d}.ntf-item-icon{background:var(--blue-light);width:30px;height:30px;color:var(--blue);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.ntf-item.sev-critical .ntf-item-icon{background:var(--red-light);color:var(--red)}.ntf-item.sev-warning .ntf-item-icon{background:var(--orange-light);color:#8a6100}.ntf-item-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ntf-item-title{color:var(--ink);font-size:13.5px;font-weight:700;line-height:1.35}.ntf-item.unread .ntf-item-title{font-weight:800}.ntf-item-body{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.ntf-item-meta{color:var(--ink-faint);flex-shrink:0;align-items:center;gap:7px;padding-top:2px;font-size:11.5px;font-weight:600;display:flex}.ntf-item-dot{background:var(--indigo);border-radius:50%;width:7px;height:7px}.ntf-item.sev-critical .ntf-item-dot{background:var(--red)}.ntf-empty{text-align:center;color:var(--ink-soft);padding:48px 24px;font-size:13px}.ntf-empty p{margin:0 0 4px}.ntf-empty-title{color:var(--ink);font-size:14.5px;font-weight:700}.ntf-retry{border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;margin-top:12px;padding:7px 14px;font-size:12.5px;font-weight:700}.ntf-skeletons{flex-direction:column;gap:14px;padding:14px 18px;display:flex}.ntf-skeleton{background:linear-gradient(90deg,var(--bg)25%,var(--line)50%,var(--bg)75%);background-size:200% 100%;border-radius:10px;height:44px;animation:1.3s infinite ntfShimmer}@keyframes ntfShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ntf-skeleton{animation:none}}
.cookie-notice{bottom:0;z-index:90;padding:14px 20px;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px));background:var(--card,#fff);border-top:1px solid var(--line,#e7e7ee);max-height:55vh;color:var(--ink,#181822);font-family:var(--font-manrope),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;font-size:13px;line-height:1.55;display:flex;position:fixed;inset-inline:0;overflow-y:auto;box-shadow:0 -8px 28px #14141e1a}body.has-cookie-notice{padding-bottom:var(--cookie-notice-h,150px)}.cookie-notice-body{flex:420px;min-width:0}.cookie-notice-lead{max-width:72ch;color:var(--ink-soft,#6b6b7d);margin:0}.cookie-notice-lead strong{color:var(--ink,#181822)}.cookie-notice-detail{margin-top:6px}.cookie-notice-detail summary{cursor:pointer;color:var(--ink-soft,#6b6b7d);width:fit-content;font-weight:700}.cookie-notice-list{max-width:72ch;color:var(--ink-soft,#6b6b7d);gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.cookie-notice-list code{font-family:var(--font-mono),ui-monospace,monospace;color:var(--ink,#181822);font-size:12px}.cookie-notice-duration{color:var(--ink-faint,#a4a4b4);white-space:nowrap}.cookie-notice-actions{flex-shrink:0;align-items:center;gap:16px;display:flex}.cookie-notice-link{color:#0b7a4e;white-space:nowrap;font-weight:700;text-decoration:none}.cookie-notice-link:hover{text-decoration:underline}.cookie-notice-dismiss{color:#fff;font:inherit;cursor:pointer;white-space:nowrap;background:#0b7a4e;border:none;border-radius:999px;min-height:40px;padding:10px 22px;font-weight:700}.cookie-notice-dismiss:hover{background:#0e9a63}.cookie-notice :focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #0b7a4e}@media (max-width:560px){.cookie-notice{padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));gap:8px;font-size:12px;line-height:1.45}.cookie-notice-dismiss{padding:8px 18px}.cookie-notice-actions{justify-content:space-between;width:100%}}
