:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--frame:#f5f6f8;--surface:#fff;--sub:#fff;--sub-2:#f1f4f8;--ink:#071f3f;--ink-2:#0d2a4d;--muted:#5b6b80;--faint:#93a1b3;--border:#e2e7ee;--border-2:#cfd7e2;--navy:#071f3f;--coral:#e2543f;--orange:#ff8233;--primary:#071f3f;--primary-ink:#fff;--link:#c0432f;--b-success-bg:#1294501a;--b-success-ink:#0e7a42;--b-info-bg:#2665c41a;--b-info-ink:#1d5099;--b-attention-bg:#ff823321;--b-attention-ink:#99530a;--b-subdued-bg:#071f3f12;--b-subdued-ink:#556074;--b-critical-bg:#d636201a;--b-critical-ink:#a8341f;--tp-pos:#12386e;--tp-pos-bg:#e7eefb;--tp-wh:#0d6b5f;--tp-wh-bg:#e0f2ef;--tp-free:#6a3aa8;--tp-free-bg:#efe8fa;--tp-cust:#8a5205;--tp-cust-bg:#fdefdb;--pos:#1c7f4b;--neg:#c0392b;--shadow:0 1px 2px #071f3f0d, 0 8px 24px #071f3f0f;--hairline:#071f3f12;--hairline-soft:#071f3f0d;--pop-shadow:0 2px 6px #071f3f14, 0 12px 32px #071f3f29, 0 0 0 1px #071f3f0f;--focus:#e2543f;--topbar-h:64px;--violet:#6c4ce0;--violet-ink:#4b2fb8;--violet-soft:#eeeafc;--violet-line:#6c4ce052;--violet-wash:#6c4ce01a;--milestone-bg:#fdf3e7;--milestone-ink:#99530a;--milestone-line:#e2854a;--font:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-display:"Iowan Old Style", Georgia, "Times New Roman", serif}*{box-sizing:border-box}html,body{height:100%}body{background:var(--frame);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.45}button{cursor:pointer;font-family:inherit}a{color:var(--link)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:6px}.app{grid-template-columns:244px minmax(0,1fr);grid-template-rows:var(--topbar-h) 1fr;grid-template-areas:"top top""side main";height:100vh;display:grid}.topbar{border-bottom:1px solid var(--hairline);-webkit-backdrop-filter:blur(20px)saturate(1.5);z-index:40;background:#ffffffb8;grid-area:top;align-items:stretch;padding:0;display:flex}.topbar-side{border-right:1px solid var(--hairline);flex:0 0 244px;align-items:center;gap:6px;min-width:0;padding:0 12px;display:flex}.topbar-logo{border-radius:6px;flex:none;align-items:center;display:inline-flex}.topbar-logo img{width:auto;height:22px}.topbar-slash{color:var(--faint);flex:none;font-size:18px;font-weight:300}.topbar-side .ws-drop{flex:auto;min-width:0;margin-bottom:0}.topbar-side .ws-trigger{padding-left:8px;padding-right:8px}.topbar-bell{display:contents}.topbar-main{flex:auto;justify-content:space-between;align-items:center;gap:16px;min-width:0;padding:0 18px;display:flex}.topbar-left{flex:auto;align-items:center;gap:12px;min-width:0;display:flex}.topbar-sub{color:var(--ink-2);background:#071f3f0d;border-radius:8px;align-items:center;gap:7px;padding:6px 10px;font-size:13.5px;font-weight:600;display:inline-flex}.topbar-main .right{flex:none;margin-left:auto}.brand{align-items:center;gap:11px;display:flex}.brand .logo{flex:none;align-items:center;display:inline-flex}.brand .logo img{width:auto;height:30px;display:block}.search{flex:1;max-width:520px;margin:0 auto}.search input{width:100%;height:36px;color:var(--ink);background:#071f3f0d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238aa' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") 13px no-repeat;border:0;border-radius:10px;padding:0 14px 0 36px;font-size:13.5px}.search input::placeholder{color:var(--faint)}.topbar .right{align-items:center;gap:10px;display:flex}.icobtn{width:36px;height:36px;color:var(--ink);background:0 0;border:0;border-radius:10px;place-items:center;padding:0;display:grid}.icobtn:hover{background:#071f3f0f}.avatar{background:var(--navy);color:#fff;border:0;border-radius:50%;place-items:center;width:34px;height:34px;font-size:12.5px;font-weight:700;display:grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%;display:block}.thumb{background:var(--sub-2);width:36px;height:36px;color:var(--muted);vertical-align:middle;border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:700;display:inline-grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.qty-stepper{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border-2);border-radius:999px;align-items:center;gap:1px;padding:2px;display:inline-flex}.qty-stepper .icobtn{width:26px;height:26px;color:var(--ink);border-radius:50%;font-size:16px;font-weight:700;line-height:1}.qty-stepper .icobtn:hover:not(:disabled){background:var(--sub-2)}.qty-stepper .icobtn:disabled{color:var(--faint);cursor:default}.qty-stepper input{text-align:center;width:30px;height:26px;font:inherit;font-variant-numeric:tabular-nums;color:var(--ink);background:0 0;border:0;padding:0;font-size:13px;font-weight:700}.qty-stepper input:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:6px}.qty-stepper input::placeholder{color:var(--faint);font-weight:400}.rating{color:var(--ink);white-space:nowrap;align-items:center;gap:5px;font-size:13px;display:inline-flex}.rating.none{color:var(--muted);font-size:12.5px}.rating strong{font-weight:700}.rating-stars{gap:1px;display:inline-flex}.rating-count{color:var(--muted);font-size:12px}.star{color:var(--border-2);display:inline-block;position:relative}.star svg{fill:currentColor;display:block}.star-fill{color:#f4b400;position:absolute;inset:0 auto 0 0;overflow:hidden}.mapcard-meta{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.mapcard-line{margin:0;font-size:13.5px;line-height:1.45}.mapcard-line.sub{color:var(--muted);font-size:12.5px}.mapcard-place{border-top:1px solid var(--hairline);margin-top:12px;padding-top:10px}.mapview-overlay a.btn{text-decoration:none}.place{flex-direction:column;gap:10px;display:flex}.place-head{flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;display:flex}.place-name{font-weight:700}.place-kind,.place-price{color:var(--muted)}.place-summary{margin:0;font-size:13.5px;line-height:1.5}.place-hours>summary{cursor:pointer;color:var(--muted);font-size:12.5px;font-weight:600}.place-hours ul{margin:6px 0 0;padding-left:18px;font-size:13px;line-height:1.6}.place-reviews h4{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin:4px 0 8px;font-size:12px;font-weight:700}.place-review{border-top:1px solid var(--hairline);gap:10px;padding:8px 0;display:flex}.place-review-b{flex:1;min-width:0}.place-review-h{flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12.5px;font-weight:600;display:flex}.place-review-h .sub{font-weight:400}.place-review p{color:var(--ink);margin:4px 0 0;font-size:13px;line-height:1.5}.photostrip{scrollbar-width:thin;border-radius:12px;grid-auto-columns:128px;grid-auto-flow:column;gap:4px;display:grid;overflow-x:auto}.photostrip-item{background:var(--sub-2);border-radius:6px;display:block;overflow:hidden}.photostrip-item.lead{grid-area:span 2/span 2}.photostrip-item img{object-fit:cover;width:100%;height:100%;transition:transform .2s;display:block}.photostrip-item:hover img{transform:scale(1.03)}.shelf{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px;display:grid}.shelf-item{background:var(--surface);box-shadow:0 0 0 1px var(--hairline);border-radius:10px;flex-direction:column;gap:6px;padding:10px;display:flex}.shelf-item .shelf-photo{aspect-ratio:1;background:var(--sub-2);border-radius:8px;place-items:center;display:grid;overflow:hidden}.shelf-item .shelf-photo img{object-fit:cover;width:100%;height:100%}.shelf-item .shelf-name{font-weight:600;line-height:1.25}.shelf-item .shelf-body{flex-direction:column;gap:6px;display:flex}.shelf-item .shelf-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:8px;display:flex}.shelf-item .shelf-price{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:13.5px;font-weight:700}.shelf-item .shelf-price .from{color:var(--muted);margin-right:3px;font-size:11px;font-weight:400}.shelf.wide{grid-template-columns:repeat(auto-fill,minmax(232px,1fr))}.shelf-item .shelf-picked{border-top:1px solid var(--hairline);flex-direction:column;gap:2px;margin:0;padding:6px 0 0;font-size:12px;list-style:none;display:flex}.shelf-item .shelf-picked li{justify-content:space-between;gap:6px;display:flex}.shelf-item .shelf-picked b{font-variant-numeric:tabular-nums}.shelf-item.picked{box-shadow:0 0 0 2px var(--coral)}.sidebar{background:var(--surface);border-right:1px solid var(--hairline);flex-direction:column;grid-area:side;min-height:0;padding:12px;display:flex}.sidebar>.ws-drop,.sidebar>.ws-space{flex:none}.nav{flex-direction:column;flex:auto;gap:2px;min-height:0;display:flex;overflow-y:auto}.nav[hidden]{display:none}.nav a{color:var(--ink-2);border-radius:10px;align-items:center;gap:12px;padding:9px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.nav-subitems{flex-direction:column;gap:1px;margin:0 0 4px;display:flex}.nav .nav-subitems a{padding:5px 12px 5px 42px;font-size:13px}.nav a svg{opacity:.8;flex:none;width:18px;height:18px}.nav a:hover{background:#071f3f0d}.nav a.active{color:#b8432f;background:#e2543f1a;font-weight:600}.nav a.active svg{opacity:1;color:var(--coral)}.nav .count{color:#fff;background:var(--coral);font-variant-numeric:tabular-nums;border:0;border-radius:7px;margin-left:auto;padding:2px 8px;font-size:12px;font-weight:600}.nav a.active .count{color:#b8432f;background:#e2543f29}.nav .count.quiet,.nav a.active .count.quiet{color:var(--muted);background:#071f3f14}.nav a.active.accent-violet{background:var(--violet-wash);color:var(--violet-ink)}.nav a.active.accent-violet svg{color:var(--violet)}.nav a.active.accent-violet .count{background:var(--violet-soft);color:var(--violet-ink)}.nav-label{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);margin-top:14px;padding:6px 11px 4px;font-size:11px}.nav-group{flex-direction:column;gap:2px;margin-top:8px;display:flex}.nav-group-h{color:var(--ink-2);align-items:center;gap:12px;padding:6px 12px 4px;font-size:13px;font-weight:600;display:flex}.nav-group-h svg{opacity:.8;flex:none;width:18px;height:18px}.nav-group.open .nav-group-h{color:var(--ink)}.nav-group.open .nav-group-h svg{opacity:1;color:var(--coral)}.nav-group-items{border-left:1px solid var(--hairline);flex-direction:column;gap:2px;margin-left:20px;padding-left:8px;display:flex}.nav-group-items a{padding:7px 10px;font-size:13.5px}.nav-div{background:var(--hairline);height:1px;margin:12px 4px}.ws-drop{margin-bottom:12px;position:relative}.ws-trigger{cursor:pointer;width:100%;color:var(--ink);background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:650;display:flex}.ws-trigger:hover{background:#071f3f0d}.ws-trigger .chev{color:var(--faint);flex:none}.ws-menu{z-index:30;background:var(--surface);min-width:320px;box-shadow:var(--pop-shadow);border:0;border-radius:12px;padding:6px;position:absolute;top:44px;left:0}.ws-menu-h{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:6px 10px;font-size:11px;font-weight:650}.ws-menu[hidden]{display:none}.ws-opt{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:8px 10px;display:flex}.ws-opt:hover:not(:disabled){background:#071f3f0d}.ws-opt .ws-ic{width:34px;height:34px;color:var(--ink-2);background:#071f3f0f;border-radius:8px;flex:none;place-items:center;display:grid}.ws-opt .ws-txt{flex-direction:column;gap:1px;min-width:0;display:flex}.ws-opt .ws-txt .n{font-size:13.5px;font-weight:650}.ws-opt .ws-txt .d{color:var(--muted);font-size:12px;font-weight:400}.ws-opt .ws-check{color:var(--coral);flex:none;margin-left:auto}.ws-opt.active{background:#e2543f1a}.ws-opt.active .ws-ic{color:#b8432f;background:#e2543f29}.ws-opt.active .ws-txt .n{color:#b8432f}.ws-opt:disabled{cursor:not-allowed}.ws-opt:disabled .ws-ic,.ws-opt:disabled .ws-txt{opacity:.5}.ws-opt .soon{color:var(--muted);background:#071f3f12;border-radius:6px;margin-left:auto;padding:2px 7px;font-size:11px;font-weight:650}.ws-space{position:relative}.sidebar>.ws-space{background:#071f3f0a;border-radius:12px;margin-bottom:12px;padding:4px}.ws-space .ws-trigger{text-align:left;gap:9px;padding:6px 8px}.ws-space .ws-trigger:hover{background:#071f3f0f}.ws-space .ws-trigger .ws-ic{color:#b8432f;background:#e2543f1f;border-radius:7px;flex:none;place-items:center;width:26px;height:26px;display:grid}.ws-lines{flex-direction:column;gap:1px;min-width:0;display:flex}.ws-lines .cap{text-transform:uppercase;letter-spacing:.09em;color:var(--faint);font-size:10px;font-weight:700;line-height:1.1}.ws-lines .now{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:650;line-height:1.25;overflow:hidden}.ws-space .ws-trigger .chev{transition:transform .15s}.ws-space.open .chev{transform:rotate(180deg)}.ws-menu.compact{min-width:236px}.ws-space .ws-menu{top:46px;left:4px}.ws-menu.compact .ws-opt{gap:10px;padding:7px 10px}.ws-menu.compact .ws-ic{width:28px;height:28px}.ws-name{font-size:13.5px;font-weight:650}.main{grid-area:main;padding:26px 30px 64px;overflow-y:auto}.container{max-width:1140px;margin:0 auto}.view{display:none}.view.active{display:block}.page-head{align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.page-head .crumb{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:7px;font-size:12.5px}.page-head h1{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:32px;font-weight:700;line-height:1.05}.page-head p{color:var(--muted);margin:6px 0 0;font-size:13.5px}.page-head .actions{flex:none;gap:8px;margin-left:auto;display:flex}.btn{height:38px;color:var(--ink);background:#071f3f0f;border:0;border-radius:10px;align-items:center;gap:7px;padding:0 16px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover{background:#071f3f1a}.btn.primary{background:var(--primary);color:var(--primary-ink);box-shadow:0 1px 2px #071f3f40,0 4px 12px #071f3f26}.btn.primary:hover{opacity:.92}.btn.sm{height:31px;padding:0 12px;font-size:12.5px}.btn.tiny{border-radius:8px;height:28px;padding:0 11px;font-size:12px;font-weight:600}.metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}@media (max-width:960px){.metrics{grid-template-columns:repeat(2,1fr)}}.metric{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;padding:16px 18px}.metric .top{justify-content:space-between;align-items:flex-start;display:flex}.metric .label{color:var(--muted);font-size:12.5px;font-weight:500}.metric .val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-size:26px;font-weight:650}.metric .delta{background:var(--b-subdued-bg);color:var(--b-subdued-ink);font-variant-numeric:tabular-nums;border-radius:6px;align-items:center;margin-top:6px;padding:2px 7px;font-size:12px;font-weight:650;display:inline-flex}.metric .delta.up{color:var(--pos);background:#1c7f4b1a}.metric .delta.down{color:var(--neg);background:#c0392b1a}.spark{width:66px;height:26px;color:var(--coral)}.spark.pos{color:var(--pos)}.spark.mut{color:var(--muted)}.card{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;overflow:hidden}.card-h{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:14px 17px;display:flex}.card-h h3{margin:0;font-size:15px;font-weight:660}.card-h .link{margin-left:auto;font-size:13px;text-decoration:none}.card-h .pill{color:var(--muted);background:#071f3f12;border-radius:6px;margin-left:auto;padding:2px 9px;font-size:12px}.card-b{padding:16px 17px}:where(.container,.container>form)>*+*{margin-top:16px}.backbtn+.page-head{margin-top:0}.page-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin:-8px 0 16px;display:flex}.home-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:16px;display:grid}@media (max-width:900px){.home-grid{grid-template-columns:1fr}}.stack{flex-direction:column;gap:16px;display:flex}.appr .r{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:13px 17px;display:flex}.appr .r:last-child{border-bottom:0}.appr .who{min-width:0}.appr .who .co{font-weight:600}.appr .who .sub{color:var(--muted);font-size:12.5px}.appr .rule{text-align:right;color:var(--muted);white-space:nowrap;margin-left:auto;font-size:12.5px}.appr .acts{flex:none;gap:6px;display:flex}.appr .code{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px}.lrow{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:12px 17px;display:flex}.lrow:last-child{border-bottom:0}.lrow .n{font-variant-numeric:tabular-nums;margin-left:auto;font-weight:650}.lrow.tasks{grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) max-content max-content minmax(150px,190px);align-items:center;display:grid}.lrow.tasks .n{white-space:nowrap;margin-left:0}.lrow.tasks .sub{min-width:0}.dotmark{border-radius:50%;flex:none;width:9px;height:9px}.dotmark.ok{background:var(--pos)}.dotmark.wait{background:var(--b-attention-ink)}.dotmark.err{background:var(--neg)}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:2px;padding:9px 9px 0;display:flex}.tab{color:var(--muted);background:0 0;border:0;border-radius:8px 8px 0 0;padding:8px 13px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block;position:relative}.tab:hover{background:var(--sub-2);color:var(--ink)}.tab.active{color:var(--ink)}.tab.active:after{content:"";background:var(--coral);border-radius:2px;height:2.5px;position:absolute;bottom:-1px;left:11px;right:11px}.tab .c{color:var(--faint);margin-left:5px;font-size:12px;font-weight:600}.board{grid-auto-columns:minmax(236px,1fr);grid-auto-flow:column;align-items:start;gap:12px;padding:4px 0 12px;display:grid;overflow-x:auto}.board-col{background:var(--sub-2);border-radius:12px;flex-direction:column;gap:8px;min-width:0;max-height:calc(100vh - 280px);padding:8px;display:flex}.board-col-h{color:var(--ink);align-items:center;gap:8px;padding:6px 8px 2px;font-size:13px;font-weight:650;display:flex}.board-col-h .n{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.board-col-h .sum{color:var(--faint);font-size:12px;font-weight:500}.board-col-b{flex-direction:column;gap:8px;min-height:36px;display:flex;overflow-y:auto}.board-col .empty{color:var(--faint);padding:8px;font-size:12.5px}.board-card[draggable=true]{cursor:grab}.board-card[draggable=true]:active{cursor:grabbing}.board-col.over{outline:2px dashed var(--border-2);outline-offset:-2px}.board-card{color:inherit;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;text-decoration:none;display:block;box-shadow:0 1px 2px #071f3f0a}a.board-card:hover{border-color:var(--border-2)}.board-card.has-acts{position:relative}.board-card.has-acts .t{color:inherit;padding-right:28px;text-decoration:none;display:block}.board-card.has-acts a.t:hover{text-decoration:underline}.board-card .acts{position:absolute;top:6px;right:6px}.board-card .t{font-size:13.5px;font-weight:600;line-height:1.3}.board-card .sub{color:var(--muted);margin-top:2px;font-size:12.5px}.board-card .meta{color:var(--muted);align-items:center;gap:8px;margin-top:8px;font-size:12px;display:flex}.board-card .meta .n{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}@media (max-width:720px){.board{grid-auto-columns:auto;grid-auto-flow:row}.board-col{max-height:none}}.seg-row{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;min-width:0;padding:12px 15px;display:flex}.seg{scrollbar-width:none;background:#071f3f12;border-radius:10px;gap:2px;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.seg::-webkit-scrollbar{display:none}.seg .sg{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:6px;padding:6px 14px;font-size:13.5px;font-weight:500;display:inline-flex}.seg .sg:hover{color:var(--ink)}.seg .sg.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #071f3f1f}.seg .sg .c{color:var(--faint);font-size:12px;font-weight:600}.seg .sg.on .c{color:var(--muted)}.toolbar{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 15px;display:flex}.toolbar .filter{height:32px;color:var(--ink);background:#071f3f0f;border:0;border-radius:10px;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:500;display:inline-flex}.toolbar .grow{flex:1}.toolbar .filter.icon{justify-content:center;width:32px;padding:0}.toolbar .filter.icon[aria-expanded=true]{background:#071f3f1f}.colpop{min-width:250px;max-height:min(70vh,520px)}.fp-sort{border-bottom:1px solid var(--hairline);align-items:center;gap:8px;margin-bottom:4px;padding:6px 8px 8px 11px;display:flex}.fp-sort-lbl{color:var(--ink);flex:1;font-size:13px}.fp-sort select{font:inherit;color:var(--ink);background:#071f3f0f;border:0;border-radius:8px;max-width:150px;padding:4px 8px;font-size:12.5px;font-weight:600}.fp-dir{width:26px;height:26px;color:var(--ink);cursor:pointer;background:#071f3f0f;border:0;border-radius:8px;font-size:13px}.fp-dir:hover{background:#071f3f1f}.fp-col{color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:5px 6px 5px 11px;font-size:13px;display:flex}.fp-col:hover{background:var(--sub-2)}.fp-col.off .fp-col-name{color:var(--faint)}.fp-col-name{white-space:nowrap;flex:1}.fp-eye{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.fp-eye:hover{color:var(--ink);background:#071f3f14}.fp-eye:disabled{cursor:not-allowed;color:var(--faint)}.fp-grip{color:var(--faint);cursor:grab;letter-spacing:-3px;background:0 0;border:0;padding:0 2px;font-size:13px;line-height:1}.fp-grip:hover,.fp-grip:focus-visible{color:var(--ink)}.fp-col.dragging{opacity:.4}.viewpop{min-width:280px;padding:8px}.fp-input{box-sizing:border-box;border:1px solid var(--border);width:100%;height:32px;font:inherit;color:var(--ink);border-radius:8px;margin:2px 0 8px;padding:0 10px;font-size:13px}.fp-input:focus{border-color:var(--coral);outline:none;box-shadow:0 0 0 3px #e2543f24}.fp-actions{justify-content:flex-end;gap:6px;display:flex}.sg-saved{align-items:center;display:inline-flex}.sg-saved .sg-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 6px 0 2px;font-size:15px;line-height:1}.sg-saved .sg-x:hover{color:var(--ink)}.toolbar .muted{color:var(--faint);font-size:12.5px}.bulk{border-bottom:1px solid var(--border);background:var(--sub-2);align-items:center;gap:10px;padding:11px 15px;display:none}.bulk.show{display:flex}.bulk .n{font-size:13px;font-weight:650}.bulk .grow{flex:1}table{border-collapse:collapse;width:100%}thead th{color:#7a8aa0;text-transform:uppercase;letter-spacing:.06em;text-align:left;border-bottom:1px solid var(--hairline);white-space:nowrap;padding:12px 15px;font-size:11px;font-weight:650}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}tbody td{border-bottom:1px solid var(--hairline-soft);vertical-align:middle;padding:12px 15px;font-size:13.5px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--sub-2)}td .co{font-weight:600}td .sub{color:var(--muted);font-size:12.5px}.chk{width:16px;height:16px;accent-color:var(--coral);cursor:pointer;margin:0}.colchk{width:20px}.mono{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12.5px}.tt{font-variant-numeric:tabular-nums;color:var(--link);font-size:12px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}button.badge.act{cursor:pointer;border:0;font-family:inherit}button.badge.act:hover{box-shadow:inset 0 0 0 1px}button.badge.act:focus-visible{border-radius:999px}.badge .d{border-radius:50%;width:7px;height:7px}.badge.success{background:var(--b-success-bg);color:var(--b-success-ink)}.badge.success .d{background:var(--b-success-ink)}.badge.info{background:var(--b-info-bg);color:var(--b-info-ink)}.badge.info .d{background:var(--b-info-ink)}.badge.attention{background:var(--b-attention-bg);color:var(--b-attention-ink)}.badge.attention .d{background:var(--b-attention-ink)}.badge.subdued{background:var(--b-subdued-bg);color:var(--b-subdued-ink)}.badge.subdued .d{background:var(--b-subdued-ink)}.badge.critical{background:var(--b-critical-bg);color:var(--b-critical-ink)}.badge.critical .d{background:var(--b-critical-ink)}.tp{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.tp.pos{background:var(--tp-pos-bg);color:var(--tp-pos)}.tp.wh{background:var(--tp-wh-bg);color:var(--tp-wh)}.tp.free{background:var(--tp-free-bg);color:var(--tp-free)}.tp.cust{background:var(--tp-cust-bg);color:var(--tp-cust)}.sync{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.sync .d{border-radius:50%;width:7px;height:7px}.sync.ok .d{background:var(--pos)}.sync.wait .d{background:var(--b-attention-ink)}.sync.err .d{background:var(--neg)}.sync.err{color:var(--neg);font-weight:600}.bar{background:var(--sub-2);border-radius:4px;min-width:90px;height:7px;overflow:hidden}.bar>i{background:var(--coral);border-radius:4px;height:100%;display:block}.bar.stacked{display:flex}.bar.stacked>i{border-radius:0}.bar.stacked>i.pipe{background:var(--sub);opacity:.55}.bar.n>i{background:var(--navy)}.rowlink{color:var(--muted);opacity:0;font-size:13px;text-decoration:none}tr:hover .rowlink{opacity:1}.rowlink:hover{color:var(--link)}.pager{color:var(--muted);justify-content:space-between;align-items:center;padding:13px 15px;font-size:13px;display:flex}.pager .grp{gap:6px;display:flex}.pgbtn{width:33px;height:31px;color:var(--ink);background:#071f3f0f;border:0;border-radius:8px;place-items:center;display:grid}.pgbtn:hover{background:var(--sub-2)}.intgrid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:900px){.intgrid{grid-template-columns:1fr}}.int-h{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:16px 17px;display:flex}.int-h .logo{color:#fff;border-radius:10px;place-items:center;width:38px;height:38px;font-size:15px;font-weight:800;display:grid}.int-h h3{margin:0;font-size:15px}.int-h .sub{color:var(--muted);font-size:12px}.kvrow{border-bottom:1px solid var(--border);padding:11px 17px;font-size:13px;display:flex}.kvrow:last-child{border-bottom:0}.kvrow .k{color:var(--muted)}.kvrow .v{font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.chartcard{background:var(--surface);box-shadow:var(--shadow);border:0;border-radius:16px;padding:18px 18px 12px}.chartcard h3{margin:0 0 2px;font-size:15px}.chartcard .sub{color:var(--muted);margin-bottom:14px;font-size:12.5px}.barchart{align-items:flex-end;gap:14px;height:150px;padding-top:8px;display:flex}.barchart .col{flex-direction:column;flex:1;align-items:center;gap:8px;height:100%;display:flex}.barchart .col .fill{background:var(--navy);border-radius:6px 6px 0 0;width:100%;max-width:52px;margin-top:auto}.barchart .col .lb{color:var(--muted);font-size:12px}.setrow{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:15px 17px;display:flex}.setrow:last-child{border-bottom:0}.setrow .ic{background:var(--sub-2);width:34px;height:34px;color:var(--ink);border-radius:8px;place-items:center;display:grid}.setrow .t{font-weight:600}.setrow .d{color:var(--muted);font-size:12.5px}.setrow .chev{color:var(--faint);margin-left:auto}.crumbs{color:var(--ink);flex-wrap:wrap;align-items:center;gap:6px;min-width:0;font-size:14px;font-weight:600;display:flex}.crumbs .crumb-item{align-items:center;gap:6px;display:inline-flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.crumbs .crumb-sep{color:var(--border-2)}.backbtn{border:1px solid var(--border-2);background:var(--surface);height:31px;color:var(--ink);border-radius:999px;align-items:center;gap:7px;margin-bottom:14px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.backbtn:hover{background:var(--sub-2)}.kpis{flex-wrap:wrap;gap:26px;margin:2px 0 20px;display:flex}.kpis .kpi .l{color:var(--muted);font-size:12px}.kpis .kpi .n{font-family:var(--font-display);font-variant-numeric:tabular-nums;margin-top:2px;font-size:22px;font-weight:700}.detail-grid{grid-template-columns:1fr 328px;align-items:start;gap:16px;display:grid}@media (max-width:900px){.detail-grid{grid-template-columns:1fr}}.detail-stack{flex-direction:column;gap:16px;display:flex}.fields{padding:2px 17px}.fields .f{border-bottom:1px solid var(--border);gap:14px;padding:11px 0;display:flex}.fields .f:last-child{border-bottom:0}.fields .f .k{color:var(--muted);flex:none;width:42%;font-size:13px}.fields .f .v{font-size:13.5px;font-weight:600}.f2{grid-template-columns:1fr 1fr;gap:0 24px;padding:2px 17px;display:grid}.f2 .f{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;padding:11px 0;display:flex}.f2 .f .k{color:var(--muted);font-size:12px}.f2 .f .v{font-size:13.5px;font-weight:600}.f2.f3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:900px){.f2.f3{grid-template-columns:1fr 1fr}}@media (max-width:620px){.f2,.f2.f3{grid-template-columns:1fr}}.tl{padding:8px 17px 14px}.tl .e{gap:12px;padding:9px 0;display:flex;position:relative}.tl .e .dot{background:var(--coral);z-index:1;border-radius:50%;flex:none;width:10px;height:10px;margin-top:3px}.tl .e:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:15px;bottom:-9px;left:4px}.tl .e .t{font-size:13px;font-weight:600}.tl .e .s{color:var(--muted);font-size:12px}.tl .e.mut .dot{background:var(--border-2)}.steps{background:var(--surface);box-shadow:var(--shadow);border-radius:16px;flex-wrap:nowrap;margin:0 0 16px;padding:0;list-style:none;display:flex;overflow:hidden}.steps .st{flex:1 1 0;align-items:center;gap:10px;min-width:0;padding:13px 17px;display:flex}.steps .st+.st{border-left:1px solid var(--hairline)}.steps .st .n{background:var(--b-subdued-bg);width:22px;height:22px;color:var(--b-subdued-ink);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.steps .st .c{flex-direction:column;min-width:0;display:flex}.steps .st .t{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.steps .st .s{color:var(--faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.steps .st.done .n{background:var(--b-success-bg);color:var(--b-success-ink)}.steps .st.done .t{color:var(--ink-2)}.steps .st.cur{background:var(--sub-2)}.steps .st.cur .n{background:var(--coral);color:#fff}.steps .st.cur .t{color:var(--ink)}.steps .st.skip .n,.steps .st.skip .c{opacity:.5}.steps.dense .st.cur{flex:1.8 1 0}.steps.dense .st:not(.cur) .s{display:none}@media (max-width:1100px){.steps.dense .st:not(.cur){flex:none}.steps.dense .st:not(.cur) .c{display:none}}.steps .st:has(.st-btn){align-items:stretch;padding:0}.steps .st-btn{width:100%;min-width:0;height:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:13px 17px;display:flex}.steps .st-btn:disabled{cursor:default}.steps .st-btn:not(:disabled):hover{background:var(--sub-2)}.steps .st-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.feed-rail:before{content:"";background:var(--border-2);border-radius:999px;width:7px;height:7px;position:absolute;top:0;left:1px}tbody tr.hide-search,.appr .r.hide-search,tbody tr.hide-filter{display:none}.toolbar .filter.act{color:#b8432f;background:#e2543f1f}.filterpop{z-index:70;background:var(--surface);box-shadow:var(--pop-shadow);border:0;border-radius:12px;min-width:180px;max-height:300px;padding:6px;position:fixed;overflow:auto}.filterpop[hidden]{display:none}.fp-back{text-align:left;width:100%;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:6px 11px 2px;font-size:12px;display:block}.fp-back:hover{color:var(--ink)}.fp-item{text-align:left;width:100%;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:7px 11px;font-size:13px;display:block}.fp-item:hover{background:var(--sub-2)}.fp-item.act{color:var(--coral);font-weight:600}.avatar{cursor:pointer}#toast{background:var(--ink);color:var(--surface);opacity:0;pointer-events:none;z-index:60;text-align:center;border-radius:999px;max-width:82vw;padding:11px 18px;font-size:13.5px;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;bottom:26px;left:50%;transform:translate(-50%)translateY(18px);box-shadow:0 12px 32px #071f3f47}#toast.show{opacity:1;transform:translate(-50%)translateY(0)}.frmgrid{grid-template-columns:1fr 1fr;gap:14px 18px;padding:16px 17px;display:grid}.frmgrid .fld{flex-direction:column;gap:6px;display:flex}.frmgrid .fld.full{grid-column:1/-1}.frmgrid .fld label{color:var(--muted);font-size:12px;font-weight:600}.inp{border:1px solid var(--border-2);background:var(--surface);width:100%;height:38px;color:var(--ink);border-radius:10px;padding:0 12px;font-family:inherit;font-size:13.5px}.inp:focus{border-color:var(--coral);outline:none;box-shadow:0 0 0 3px #e2543f2e}@media (max-width:620px){.frmgrid{grid-template-columns:1fr}}.toggle{background:var(--border-2);border:0;border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:left .15s;position:absolute;top:2px;left:2px}.toggle.on{background:var(--pos)}.toggle.on:after{left:18px}.rolechip{background:var(--sub-2);color:var(--ink);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.sr-only,.cal-event .sr-time{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cal-page{min-height:calc(100dvh - var(--topbar-h) - 90px);flex-direction:column;gap:clamp(12px,1.2vw,20px);min-width:0;display:flex}.cal-page .page-head{margin-bottom:0}.cal-page .page-head h1{font-size:clamp(28px,2.2vw,40px)}.cal-page .page-head p{max-width:78ch;font-size:clamp(13px,.95vw,15.5px)}.cal-toolbar{flex-wrap:wrap;align-items:center;gap:clamp(8px,.9vw,14px);min-width:0;display:flex}.btn.violet{background:var(--violet);color:#fff;border-color:#0000;font-weight:600}.btn.violet:hover:not(:disabled){background:var(--violet-ink)}.cal-toolbar .seg .sg.on{background:var(--navy);color:#fff;box-shadow:none}.cal-search{flex:200px;min-width:180px;max-width:480px}.cal-search .search{max-width:none;margin:0}.outlook-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex:0 auto;align-items:center;gap:9px;min-width:0;padding:7px 11px;display:flex}.outlook-card .ms{flex:none;grid-template-rows:repeat(2,7px);grid-template-columns:repeat(2,7px);gap:2px;display:grid}.outlook-card .ms span:first-child{background:#f25022}.outlook-card .ms span:nth-child(2){background:#7fba00}.outlook-card .ms span:nth-child(3){background:#00a4ef}.outlook-card .ms span:nth-child(4){background:#ffb900}.outlook-card .txt{flex-direction:column;min-width:0;display:flex}.outlook-card .who{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:650;overflow:hidden}.outlook-card .st{color:var(--b-success-ink);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.outlook-card.syncing .st{color:var(--muted)}.outlook-card.error .st{color:var(--b-critical-ink)}.outlook-card.disconnected .st{color:var(--violet-ink);font-weight:650}.cal-layout{flex:auto;grid-template-columns:clamp(240px,24%,340px) minmax(0,1fr);align-items:stretch;gap:clamp(14px,1.4vw,26px);min-width:0;min-height:0;display:grid}.cal-side{flex-direction:column;gap:clamp(12px,1.1vw,18px);min-width:0;display:flex}.cal-main{--tg-hour:clamp(46px, calc((100dvh - 400px) / 11), 104px);--tg-gutter:clamp(44px, 4vw, 60px);--tg-daymin:104px;flex-direction:column;min-width:0;min-height:clamp(560px,100dvh - 260px,1000px);padding:0;display:flex;overflow:hidden}.cal-nav{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:clamp(6px,.6vw,10px);padding:clamp(10px,1vw,16px) clamp(12px,1.1vw,18px);display:flex}.cal-nav h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 0 clamp(4px,.6vw,12px);font-size:clamp(17px,1.4vw,24px);font-weight:700;line-height:1.2}.cal-loading,.cal-found{color:var(--muted);background:var(--sub-2);white-space:nowrap;border-radius:7px;margin-left:auto;padding:3px 9px;font-size:11.5px}.cal-note{color:var(--muted);background:var(--sub-2);padding:9px clamp(12px,1.1vw,18px);font-size:12.5px}.cal-allday{grid-template-columns:var(--tg-gutter) minmax(0, 1fr);border-bottom:1px solid var(--hairline);align-items:stretch;min-height:40px;display:grid}.cal-allday .lbl{text-transform:uppercase;letter-spacing:.07em;color:var(--faint);justify-content:flex-end;align-items:center;padding-right:8px;font-size:10px;font-weight:700;display:flex}.cal-allday .lane{grid-template-columns:repeat(var(--tg-days), minmax(0, 1fr));align-content:start;gap:3px;padding:5px 4px;display:grid}.cal-allday .slot{min-width:0}.cal-milestone{border:0;border-left:3px solid var(--violet);background:var(--violet-wash);text-align:left;width:100%;color:var(--violet-ink);border-radius:8px;align-items:center;gap:6px;min-width:0;padding:4px 8px;font-size:11.5px;font-weight:600;display:flex}.cal-milestone:hover{background:var(--violet-soft)}.cal-milestone .mk{background:var(--violet);border-radius:1px;flex:none;width:7px;height:7px;transform:rotate(45deg)}.cal-milestone .t{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cal-milestone.deadline{border-left-color:var(--violet-ink);background:var(--violet-wash);color:var(--violet-ink)}.cal-milestone.deadline .mk{background:var(--violet-ink);border-radius:999px;transform:none}.cal-scroll{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto hidden}.cal-track{min-width:calc(var(--tg-gutter) + var(--tg-days) * var(--tg-daymin));flex-direction:column;flex:auto;display:flex}.cal-track .tgrid{flex:auto;min-height:0}.cal-dayhead{color:var(--muted);align-items:center;gap:6px;min-width:0;font-size:clamp(11px,.85vw,13px);display:flex}.cal-dayhead .wd{text-transform:uppercase;letter-spacing:.05em;font-weight:650}.cal-dayhead .nr{color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(13px,1vw,15px);font-weight:650}.cal-dayhead.today .nr{background:var(--navy);color:#fff;border-radius:999px;place-items:center;width:clamp(22px,1.9vw,27px);height:clamp(22px,1.9vw,27px);display:grid}.cal-event{text-align:left;border:0;border-left:3px solid var(--violet);background:var(--violet-wash);width:100%;height:100%;color:var(--ink);border-radius:10px;flex-direction:column;gap:1px;padding:clamp(3px,.35vw,6px) clamp(5px,.55vw,9px);display:flex;overflow:hidden}.cal-event:hover{background:var(--violet-soft);box-shadow:0 2px 8px #071f3f1a}.cal-event .t{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:clamp(11.5px,.85vw,13px);font-weight:650;line-height:1.25;display:-webkit-box;overflow:hidden}.cal-event .w,.cal-event .s{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:clamp(10.5px,.75vw,12px);line-height:1.2;overflow:hidden}.cal-event .s{color:var(--violet-ink);font-weight:600}.cal-event.pending{background:var(--surface);border:1px dashed var(--violet-line);border-left:3px dashed var(--violet)}.cal-event.declined{opacity:.55}.cal-event.declined .t{text-decoration:line-through}.cal-event.cont-before{border-top-left-radius:0;border-top-right-radius:0}.cal-event.cont-after{border-bottom-right-radius:0;border-bottom-left-radius:0}.today-day{color:var(--violet-ink);padding:0 0 6px;font-size:12px;font-weight:650}.today-list{flex-direction:column;display:flex}.today-row{border:0;border-top:1px solid var(--hairline-soft);text-align:left;background:0 0;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:10px;padding:8px 4px;display:grid}.today-row:first-child{border-top:0}.today-row:hover{background:var(--violet-wash);border-radius:8px}.today-row .tm{font-variant-numeric:tabular-nums;flex-direction:column;display:flex}.today-row .tm .a{font-size:12.5px;font-weight:700}.today-row .tm .b{color:var(--faint);font-size:11px}.today-row .bd{flex-direction:column;gap:1px;min-width:0;display:flex}.today-row .bd .t{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600;line-height:1.25;overflow:hidden}.today-row .bd .m{color:var(--muted);align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.today-row .bd .m span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.today-row .dot{background:var(--violet);border-radius:999px;flex:none;width:6px;height:6px}.today-row .dot.milestone{background:var(--violet-ink)}.today-more{color:var(--violet-ink);background:0 0;border:0;align-items:center;gap:6px;margin-top:10px;padding:4px 0;font-size:12px;font-weight:650;display:inline-flex}.today-more:hover{text-decoration:underline}.mgrid{flex:auto;grid-template-columns:repeat(7,minmax(0,1fr));align-content:stretch;display:grid}.mgrid-head{text-transform:uppercase;letter-spacing:.07em;color:var(--faint);border-bottom:1px solid var(--hairline);padding:8px clamp(6px,.6vw,10px);font-size:10px;font-weight:700}.mgrid-cell{border-left:1px solid var(--hairline-soft);border-bottom:1px solid var(--hairline-soft);flex-direction:column;gap:3px;min-width:0;min-height:clamp(84px,11vh,132px);padding:5px;display:flex}.mgrid-cell:nth-child(7n+1){border-left:0}.mgrid-cell.out{background:var(--sub-2)}.mgrid-cell.sel{box-shadow:inset 0 0 0 2px var(--violet-line)}.mgrid-day{color:var(--ink-2);background:0 0;border:0;border-radius:999px;align-self:flex-start;width:23px;height:23px;font-size:12px;font-weight:650}.mgrid-cell.out .mgrid-day{color:var(--faint)}.mgrid-day.today{background:var(--navy);color:#fff}.mgrid-item{background:var(--violet-wash);border:0;border-left:3px solid var(--violet);text-align:left;color:var(--ink);border-radius:8px;align-items:baseline;gap:5px;min-width:0;padding:2px 6px;font-size:11px;display:flex}.mgrid-item .tm{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.mgrid-item .t{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.mgrid-item.pending{background:var(--surface);border:1px dashed var(--violet-line);border-left:3px dashed var(--violet)}.mgrid-item.milestone{background:var(--violet-wash);border-left-color:var(--violet-ink);color:var(--violet-ink)}.mgrid-more{color:var(--muted);background:0 0;border:0;align-self:flex-start;padding:1px 4px;font-size:10.5px;font-weight:650}.mgrid-more:hover{color:var(--violet-ink)}.drawer-actions{flex-wrap:wrap;gap:8px;display:flex}.drawer-sub{text-transform:uppercase;letter-spacing:.06em;color:var(--faint);margin:0;font-size:11px;font-weight:650}.drawer-text{color:var(--ink-2);white-space:pre-wrap;margin:0;font-size:13px}.att-list{flex-direction:column;gap:4px;display:flex}.att{align-items:center;gap:8px;font-size:12.5px;display:flex}.att .n{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.att .r{color:var(--muted);flex:none;margin-left:auto;font-size:11px}.att .r.accepted{color:var(--b-success-ink)}.att .r.declined{color:var(--b-critical-ink)}@media (max-width:1023px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-side{flex-flow:wrap;align-items:flex-start}.cal-side>*{flex:280px;min-width:0}.cal-main{min-height:clamp(520px,100dvh - 220px,900px)}}@media (max-width:767px){.cal-side{flex-direction:column}.cal-toolbar{align-items:stretch}.cal-search{max-width:none}.cal-page{min-height:0}}.drawer-overlay{z-index:80;background:#071f3f47;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--surface);flex-direction:column;width:min(420px,100%);height:100%;display:flex;box-shadow:0 4px 12px #071f3f1a,-24px 0 64px #071f3f38}.drawer-h{border-bottom:1px solid var(--hairline);align-items:flex-start;gap:10px;padding:16px 18px 14px;display:flex}.drawer-t{min-width:0}.drawer-t h3{font-family:var(--font-display);margin:0;font-size:18px;line-height:1.25}.drawer-t .sub{color:var(--muted);margin-top:3px;font-size:12.5px}.drawer-b{flex-direction:column;flex:auto;gap:14px;padding:16px 18px;display:flex;overflow-y:auto}.drawer-f{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;padding:14px 18px;display:flex}.minical-h{align-items:center;gap:4px;margin-bottom:8px;display:flex}.minical-h .m{font-family:var(--font-display);margin-right:auto;font-size:clamp(14px,1.1vw,17px);font-weight:700}.icobtn.sm{width:26px;height:26px;color:var(--muted)}.minical-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid}.minical-grid .wd{text-align:center;letter-spacing:.04em;color:var(--faint);padding-bottom:3px;font-size:10px;font-weight:700}.minical-grid .d{aspect-ratio:1;color:var(--ink-2);font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:999px;place-items:center;padding:0;font-size:12px;font-weight:550;display:grid;position:relative}.minical-grid .d:hover{background:var(--violet-wash)}.minical-grid .d.out{color:var(--faint)}.minical-grid .d.has:after{content:"";background:var(--violet);border-radius:999px;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:3px;left:50%}.minical-grid .d.today{box-shadow:inset 0 0 0 1.5px var(--violet-line);color:var(--violet-ink);font-weight:700}.minical-grid .d.sel{background:var(--violet);color:#fff;box-shadow:none;font-weight:700}.minical-grid .d.sel:after{background:#ffffffd9}.tgrid{--tg-days:7;--tg-hour:clamp(46px, calc((100dvh - 400px) / 11), 104px);--tg-gutter:clamp(44px, 4vw, 60px);--tg-daymin:104px;flex-direction:column;min-width:0;display:flex}.tgrid-head,.tgrid-body{grid-template-columns:var(--tg-gutter) repeat(var(--tg-days), minmax(0, 1fr));display:grid}.tgrid-head{z-index:3;background:var(--surface);border-bottom:1px solid var(--hairline);position:sticky;top:0}.tgrid-hcell{border-left:1px solid var(--hairline-soft);min-width:0;padding:clamp(7px,.8vw,12px) clamp(6px,.6vw,10px)}.tgrid-body{flex:auto;min-height:0;overflow-y:auto}.tgrid-gutter{position:relative}.tgrid-hour{color:var(--faint);font-variant-numeric:tabular-nums;font-size:10.5px;position:absolute;right:8px;transform:translateY(-50%)}.tgrid-cols{grid-column:2/-1;grid-template-columns:repeat(var(--tg-days), minmax(0, 1fr));display:grid;position:relative}.tgrid-line{background:var(--hairline-soft);height:1px;position:absolute;left:0;right:0}.tgrid-col{border-left:1px solid var(--hairline-soft);min-width:0;position:relative}.tgrid-slot{background:0 0;border:0;padding:0;position:absolute;left:0;right:0}.tgrid-slot:hover{background:var(--violet-wash)}.tgrid-item{z-index:1;position:absolute}.tgrid-now{background:var(--violet);z-index:2;height:2px;position:absolute;left:0;right:0}.tgrid-now span{background:var(--violet);border-radius:999px;width:8px;height:8px;position:absolute;top:-3px;left:-3px}.modal-overlay{z-index:80;background:#071f3f80;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.modal-overlay.show{display:flex}.modal{background:var(--surface);border-radius:16px;width:min(480px,100%);max-height:90vh;overflow:auto;box-shadow:0 4px 12px #071f3f1a,0 24px 64px #071f3f47}.modal-h{border-bottom:1px solid var(--hairline);align-items:center;padding:16px 18px;display:flex}.modal-h h3{font-family:var(--font-display);margin:0;font-size:18px}.modal-x{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;width:30px;height:30px;margin-left:auto;font-size:22px;line-height:1}.modal-x:hover{background:var(--sub-2)}.modal-b{flex-direction:column;gap:13px;padding:16px 18px;display:flex}.modal-b .fld{flex-direction:column;gap:6px;display:flex}.modal-b label{color:var(--muted);font-size:12px;font-weight:600}.modal-f{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:14px 18px;display:flex}.modal.wide{width:min(680px,100%)}.modal.xl{width:min(1080px,100%)}.modal h4{margin:0;font-size:13px;font-weight:700}.oline{grid-template-columns:1.5fr 94px 60px 78px 84px 26px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.oline .inp{height:34px;padding:0 10px}.oline-head{margin-bottom:6px}.oline-head span{color:var(--muted);padding:0 2px;font-size:11px;font-weight:600}.oline.mat-line,.oline.mat-head{grid-template-columns:1.6fr 92px 66px 82px 26px}.oline.mat-head span{color:var(--muted);padding:0 2px;font-size:11px;font-weight:600}.modal.wide .modal-b,.modal.xl .modal-b{gap:0;padding:0}.cpv{grid-template-columns:1fr 320px;align-items:stretch;gap:0;display:grid}@media (max-width:900px){.cpv{grid-template-columns:1fr}}.cpv-doc{border-right:1px solid var(--hairline);background:var(--sub-2);min-height:460px}.cpv-doc iframe{border:0;width:100%;height:100%;min-height:460px;display:block}.cpv-side{min-width:0}.cpv-empty{text-align:center;min-height:460px;color:var(--muted);justify-content:center;align-items:center;padding:24px;font-size:13px;display:flex}.msec{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--border);margin-top:2px;padding:15px 17px 4px;font-size:12px;font-weight:700}.msec.first{border-top:0;margin-top:0}.msec-lead{color:var(--muted);margin:0;padding:4px 17px 2px;font-size:12.5px;line-height:1.45}.disc{border-top:1px solid var(--hairline);margin-top:6px}.disc>summary{cursor:pointer;color:var(--ink);align-items:center;gap:8px;padding:10px 17px;font-size:13px;font-weight:600;list-style:none;display:flex}.disc>summary::-webkit-details-marker{display:none}.disc>summary:before{content:"";border-right:1.6px solid var(--muted);border-bottom:1.6px solid var(--muted);width:7px;height:7px;margin:0 4px 3px 2px;transition:transform .15s;transform:rotate(-45deg)}.disc[open]>summary:before{margin-bottom:0;transform:rotate(45deg)}.disc>summary:hover .disc-t{color:var(--coral)}.disc-h{color:var(--muted);font-size:12px;font-weight:400}.disc-b{padding-bottom:4px}.bc-grid{grid-template-columns:1fr 328px;align-items:start;gap:16px;display:grid}@media (max-width:1000px){.bc-grid{grid-template-columns:1fr}}.bc-main{padding:0;overflow:hidden}.tl-more>summary{cursor:pointer;color:var(--muted);padding:4px 0 4px 22px;font-size:12.5px}.tl-more>summary:hover{color:var(--ink)}.bc-rail{flex-direction:column;gap:14px;display:flex;position:sticky;top:20px}.bc-panel{padding:2px 0 16px}.bc-panel[hidden]{display:none}.cbx{position:relative}.cbx-list{z-index:70;overscroll-behavior:contain;background:var(--surface);box-shadow:var(--pop-shadow);border:0;border-radius:12px;margin:0;padding:4px;list-style:none;position:fixed;overflow-y:auto}.cbx-opt{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.cbx-opt.active,.cbx-opt:hover{background:#071f3f0f}.cbx-hint{color:var(--muted);font-size:12px}.cbx-empty{color:var(--muted);padding:10px;font-size:13px}.rowed{border:1px solid var(--hairline);border-radius:8px;overflow:hidden}.rowed-head,.rowed-cells{align-items:center;gap:10px;display:grid}.rowed-head{background:var(--sub-2);border-bottom:1px solid var(--hairline);padding:8px 12px}.rowed-h{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.rowed-h em{letter-spacing:0;text-transform:none;font-style:normal;font-weight:500;display:block}.rowed-row{border-bottom:1px solid var(--hairline);padding:8px 12px}.rowed-row:last-of-type{border-bottom:0}.rowed-cell{min-width:0}.rowed-cell-l{color:var(--muted);margin-bottom:3px;font-size:11px;display:none}.rowed-x{border:1px solid var(--border);background:var(--surface);width:30px;height:30px;color:var(--muted);cursor:pointer;border-radius:8px;font-size:17px;line-height:1}.rowed-x:hover{border-color:var(--coral);color:var(--coral)}.rowed-row .field-err,.rowed-note{margin-top:5px;font-size:12px;display:block}.rowed-note{color:var(--muted)}.rowed-empty,.rowed-add{padding:10px 12px}.rowed-empty{color:var(--muted);margin:0;font-size:13px}.rowed-add{border-top:1px solid var(--hairline)}.rowed:has(.rowed-empty) .rowed-add{border-top:0;padding-top:0}@media (max-width:900px){.rowed-head{display:none}.rowed-cells{grid-template-columns:1fr 1fr!important}.rowed-cell-l{display:block}.rowed-row{border-bottom:1px solid var(--border)}}.calc-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:9px 17px;font-size:13.5px;display:flex}.calc-row:last-child{border-bottom:0}.calc-row .v{font-variant-numeric:tabular-nums;font-weight:700}.calc-row .v.pos{color:var(--pos)}.calc-row .v.neg{color:var(--neg)}.calc-big{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.scn{border-bottom:1px solid var(--border);padding:11px 17px}.scn:last-child{border-bottom:0}.scn .h{justify-content:space-between;margin-bottom:4px;font-size:13px;font-weight:700;display:flex}.scn .l{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:12px;display:flex}.pos-grid{grid-template-columns:1fr 1fr;gap:9px 20px;padding:6px 17px 4px;display:grid}.pos-grid label{align-items:center;gap:9px;font-size:13.5px;display:flex}.pos-grid input[type=checkbox]{width:16px;height:16px;accent-color:var(--coral)}.ctlrow{align-items:center;gap:8px;display:flex}.ctlrow>.inp{flex:auto;min-width:0}.inp-money{width:100%;display:block;position:relative}.inp-money>.inp{font-variant-numeric:tabular-nums;padding-left:30px}.inp-money-sign{color:var(--muted);pointer-events:none;font-size:13.5px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.ctlrow>.inp-money,.row-actions>.inp-money{flex:auto;width:auto;min-width:0}.chkline{cursor:pointer;flex:auto;align-items:center;gap:9px;min-width:0;font-size:13.5px;display:flex}.chkline input[type=checkbox]{width:16px;height:16px;accent-color:var(--coral);flex:none}.chkline-t{flex:auto;min-width:0}.chkline-h{color:var(--muted);font-size:12px;display:block}.toggle-row{align-items:center;gap:11px;padding:12px 17px;font-size:13.5px;font-weight:600;display:flex}.toggle-row .hint{color:var(--muted);font-size:12.5px;font-weight:400}.sumcard{border:1px solid var(--hairline);border-radius:12px;overflow:hidden}.sumcard .t{text-align:center;background:var(--sub-2);border-bottom:1px solid var(--border);padding:9px;font-size:13px;font-weight:700}.sumcard .l{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;justify-content:space-between;padding:7px 12px;font-size:12.5px;display:flex}.sumcard .l:last-child{border-bottom:0}.sumcard .l.tot{font-weight:700}.sumcards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 17px;display:grid}.sumcards.s2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:900px){.sumcards,.sumcards.s2{grid-template-columns:1fr}}.fieldchips{flex-wrap:wrap;gap:7px;padding:12px 17px;display:flex}.fieldchip{font-family:var(--font-mono);background:var(--sub-2);border:1px solid var(--hairline);cursor:pointer;color:var(--ink);border-radius:8px;padding:4px 9px;font-size:12px}.fieldchip:hover{border-color:var(--coral);color:var(--coral)}.sj-body{border:1px solid var(--border-2);background:var(--surface);width:100%;min-height:300px;color:var(--ink);font-family:var(--font-mono);resize:vertical;box-sizing:border-box;border-radius:10px;padding:13px;font-size:13px;line-height:1.65}.sj-body:focus{outline:2px solid var(--focus);outline-offset:1px}.oline-t{font-variant-numeric:tabular-nums;text-align:right;color:var(--muted);font-size:13px}.oline-x{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;width:28px;height:28px;font-size:17px}.oline-x:hover{background:var(--sub-2);color:var(--neg)}.foot{max-width:1140px;color:var(--faint);text-align:center;margin:20px auto 0;font-size:12px}@media (max-width:820px){.app{grid-template-columns:minmax(0,1fr);grid-template-areas:"top""main"}.sidebar{display:none}.search{max-width:none}.home-grid,.intgrid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.fc{--s1:#1f5fb0;--s2:#e2543f;--s1-soft:#1f5fb01a;--ord1:#1c5cab;--ord2:#2a78d6;--ord3:#5598e7;--ord4:#86b6ef;--good:var(--pos);--crit:var(--neg);--warn-ink:var(--b-attention-ink);--warn-dot:#e0a52a;--cur-bg:var(--b-info-bg);--cur-ink:var(--b-info-ink);flex-direction:column;gap:16px;display:flex}.fc .muted{color:var(--faint)}.fc .fc-sub{color:var(--muted)}.fc .num{font-variant-numeric:tabular-nums}.fc .fc-code{white-space:nowrap;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:12.5px}.fc .g2{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.fc .g3{grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;display:grid}.fc .g23{grid-template-columns:2fr 3fr;align-items:start;gap:16px;display:grid}@media (max-width:960px){.fc .g2,.fc .g3,.fc .g23{grid-template-columns:1fr}}.fc .metrics{margin-bottom:0}.fc .metric{color:inherit;flex-direction:column;text-decoration:none;display:flex;position:relative}.fc .metric.warn{border-color:var(--warn-dot)}.fc .metric .fc-foot{color:var(--muted);border-top:1px solid var(--border);margin-top:10px;padding-top:8px;font-size:12px}.fc .metric .delta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fc .metric .delta b{align-items:center;gap:3px;font-weight:700;display:inline-flex}.fc .metric .delta b.up{color:var(--pos)}.fc .metric .delta b.down{color:var(--neg)}.fc svg.fc-spark{width:78px;height:28px;position:absolute;top:14px;right:14px}.fc .card{overflow:visible}.fc .card>.card-h{padding:13px 17px}.fc .card-h .note{color:var(--muted);font-size:12px}.fc .card-h .right{align-items:center;gap:8px;margin-left:auto;display:flex}.fc .card-b{padding:14px 17px 16px}.fc .card-b.tight{padding:0}.fc .card>.card-h+.tw table{border-radius:0}.fc .card>.tw:last-child{border-radius:0 0 14px 14px;overflow:auto hidden}.fc .notes{color:var(--muted);border-top:1px solid var(--border);flex-wrap:wrap;gap:16px;padding:10px 17px 12px;font-size:12px;display:flex}.fc .page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}select.fc-cmp{border:1px solid var(--border-2);background:var(--surface);height:36px;color:var(--ink);font:inherit;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237488a0' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:999px;padding:0 34px 0 14px;font-size:13.5px;font-weight:600}.fc-lbl{color:var(--muted);font-size:12.5px;font-weight:600}.fc .badge{margin:0}.fc .fc-tgl{border:1px solid var(--border-2);background:var(--surface);height:29px;color:var(--muted);cursor:pointer;border-radius:999px;padding:0 11px;font-size:12.5px;font-weight:600}.fc .fc-tgl:hover{background:var(--sub-2);color:var(--ink)}.fc .fc-tgl[aria-pressed=true]{background:var(--sub-2);color:var(--ink);border-color:var(--border-2)}.fc .seg{border:1px solid var(--border-2);border-radius:999px;height:36px;display:inline-flex;overflow:hidden}.fc .seg button{background:var(--surface);color:var(--muted);cursor:pointer;border:0;padding:0 14px;font-size:13px;font-weight:600}.fc .seg button+button{border-left:1px solid var(--border-2)}.fc .seg button[aria-pressed=true]{background:var(--navy);color:#fff}.fc .tblview{border-top:1px solid var(--border);margin-top:14px;padding-top:4px;display:none}.fc .tblview.on{display:block}.fc .legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:8px;font-size:12px;display:flex}.fc .legend .k{align-items:center;gap:6px;display:inline-flex}.fc .legend .sw{border-top:2px solid var(--s1);border-radius:1px;width:18px;height:0}.fc .legend .sw.dash{border-top-style:dashed}.fc .legend .sw.s2{border-top-color:var(--s2)}.fc .legend .sw.thr{border-top-color:var(--neg);border-top-style:dashed}.fc .legend .sq{background:var(--s1);border-radius:2px;width:10px;height:10px}.fc .legend .sq.s2{background:var(--s2)}.fc .legend .sq.band{background:var(--s1-soft);border:1px solid var(--border)}.fc .chart{width:100%;position:relative}.fc .chart svg{width:100%;height:auto;display:block;overflow:visible}.fc .chart .grid-l{stroke:var(--border);stroke-width:1px}.fc .chart .axis-l{stroke:var(--border-2);stroke-width:1px}.fc .chart text{fill:var(--faint);font-size:11px;font-family:var(--font)}.fc .chart text.lab{fill:var(--muted)}.fc .chart text.end{fill:var(--ink);font-size:12px;font-weight:700}.fc .chart .band{fill:var(--s1-soft)}.fc .chart .thr{stroke:var(--neg);stroke-width:1px;stroke-dasharray:4 4}.fc .chart .cross{stroke:var(--border-2);stroke-width:1px;pointer-events:none}.fc .tip{pointer-events:none;background:var(--ink);color:var(--surface);opacity:0;z-index:4;white-space:nowrap;border-radius:8px;min-width:160px;padding:8px 10px;font-size:12px;transition:opacity .12s;position:absolute;transform:translate(-50%);box-shadow:0 8px 24px #071f3f40}.fc .tip.on{opacity:1}.fc .tip b{margin-bottom:4px;display:block}.fc .tip .r{justify-content:space-between;gap:14px;display:flex}.fc .tip .r i{vertical-align:middle;border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.fc .tip .r i.dash{background:0 0;border-top:2px dashed;width:10px;height:0}.fc .hbars{flex-direction:column;gap:12px;display:flex}.fc .hbar{grid-template-columns:130px minmax(0,1fr) 92px;align-items:center;gap:12px;font-size:13px;display:grid}.fc .hbar .lab{color:var(--muted)}.fc .hbar .track{flex-direction:column;gap:2px;display:flex}.fc .hbar .b{background:var(--s1);border-radius:0 4px 4px 0;min-width:2px;height:10px}.fc .hbar .b.s2{background:var(--s2)}.fc .hbar .b.o1{background:var(--ord1)}.fc .hbar .b.o2{background:var(--ord2)}.fc .hbar .b.o3{background:var(--ord3)}.fc .hbar .b.o4{background:var(--ord4)}.fc .hbar .b.o1,.fc .hbar .b.o2,.fc .hbar .b.o3,.fc .hbar .b.o4{height:18px}.fc .hbar .val{text-align:right;font-size:12.5px;font-weight:700}.fc .hbar .val.good{color:var(--pos)}.fc .hbar .val.crit{color:var(--neg)}.fc .hbar .val small{color:var(--muted);font-weight:400;display:block}.fc .funnel .hbar{grid-template-columns:120px minmax(0,1fr) 150px}.fc .funnel .val{font-size:13px}.fc .tw{-webkit-overflow-scrolling:touch;overflow-x:auto}.fc table.fin{border-collapse:separate;border-spacing:0;width:100%;min-width:900px;font-size:12.5px}.fc table.fin th,.fc table.fin td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;vertical-align:middle;padding:6px 9px;font-size:12.5px}.fc table.fin th{color:var(--faint);background:var(--surface);font-size:12px;font-weight:500}.fc table.fin th.grp{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid var(--border-2);text-align:center;padding-top:10px;font-size:11px;font-weight:700}.fc table.fin th.grp.fc-fc{color:var(--s1)}.fc table.fin th.grp.cur{color:var(--cur-ink)}.fc table.fin td:first-child,.fc table.fin th:first-child{text-align:left;background:var(--surface);z-index:2;font-variant-numeric:normal;min-width:210px;padding-left:17px;position:sticky;left:0}.fc table.fin tr.sub td{border-top:1px solid var(--border-2);background:var(--sub-2);font-weight:700}.fc table.fin tr.tot td{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);font-weight:700}.fc table.fin tr.pct td{color:var(--faint);padding-top:2px;padding-bottom:6px;font-size:12px}.fc table.fin tr.pct td:first-child{padding-left:31px}.fc table.fin td.fc-fc{color:var(--muted)}.fc table.fin td.cur{background:var(--cur-bg)}.fc table.fin th.cur{color:var(--cur-ink);font-weight:700}.fc table.fin td.sep,.fc table.fin th.sep{border-left:1px solid var(--border-2)}.fc table.fin td.good{color:var(--pos)}.fc table.fin td.crit{color:var(--neg)}.fc table.fin td.check{color:var(--pos);font-weight:700}.fc table.fin td.ind{padding-left:31px}.fc table.fin tbody tr:hover td{background:var(--sub-2)}.fc table.fin tbody tr:hover td.cur{background:var(--cur-bg)}.fc table.fin tbody tr:last-child td{border-bottom:1px solid var(--border)}.fc table.fin tbody tr.tot:last-child td{border-bottom:2px solid var(--ink)}.fc table.list{border-collapse:collapse;width:100%;font-size:13px}.fc table.list th{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);padding:9px 12px;font-size:11px;font-weight:700}.fc table.list td{padding:9px 12px;font-size:13px}.fc table.list td.r,.fc table.list th.r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.fc table.list tbody tr:last-child td{border-bottom:0}.fc table.edit td[contenteditable]{background:var(--sub-2);outline:1px solid var(--border);cursor:text;border-radius:6px;min-width:78px}.fc table.edit td[contenteditable]:focus{outline:2px solid var(--focus);background:var(--surface)}.fc .att{flex-direction:column;display:flex}.fc .att a{border-bottom:1px solid var(--border);color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 17px;text-decoration:none;display:grid}.fc .att a:last-child{border-bottom:0}.fc .att a:hover{background:var(--sub-2)}.fc .att .t{font-size:13px;font-weight:600}.fc .att .s{color:var(--muted);margin-top:1px;font-size:12px}.fc .att .arr{color:var(--faint);font-size:15px}.fc .sev{background:var(--border-2);border-radius:3px;width:8px;height:32px}.fc .sev.crit{background:var(--neg)}.fc .sev.warn{background:var(--warn-dot)}.fc .sev.good{background:var(--pos)}.fc .sev.info{background:var(--s1)}.fc .versions{flex-direction:column;display:flex}.fc .ver{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:12px 17px;display:grid}.fc .ver:last-child{border-bottom:0}.fc .ver.active{background:var(--sub-2)}.fc .ver .n{font-weight:600}.fc .ver .m{color:var(--muted);font-size:12px}.fc .ver .lock{width:16px;height:16px;color:var(--faint)}.fc .assump{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;padding:4px 17px 8px;font-size:13px;display:grid}.fc .assump.one{grid-template-columns:1fr}.fc .assump div{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:8px 0;display:flex}.fc .assump div span:last-child{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.fc .assump div span:last-child small{color:var(--muted);margin-left:4px;font-weight:400}.fc .assump div span.expl{color:var(--muted);font-weight:400}.fc .map-ok{align-items:center;gap:10px;padding:12px 17px 4px;font-size:13px;display:flex}.fc .bar-ok{background:var(--sub-2);border-radius:3px;flex:1;height:6px;overflow:hidden}.fc .bar-ok i{background:var(--pos);width:100%;height:100%;display:block}.fc .src dl{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;padding:12px 17px 14px;font-size:12.5px;display:grid}.fc .src dt{color:var(--muted)}.fc .src dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.fc .src.wide dl{grid-template-columns:auto 1fr auto 1fr auto 1fr}@media (max-width:900px){.fc .src.wide dl{grid-template-columns:auto 1fr}}.fc .flow{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;display:grid}.fc .flow .st{border-right:1px solid var(--border);color:var(--muted);padding:12px 16px;font-size:12.5px;position:relative}.fc .flow .st:last-child{border-right:0}.fc .flow .st b{color:var(--ink);margin-bottom:2px;font-size:13px;display:block}.fc .flow .st .arr{border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:7px solid var(--border-2);z-index:1;width:0;height:0;position:absolute;top:50%;right:-7px;transform:translateY(-50%)}@media (max-width:900px){.fc .flow{grid-template-columns:1fr 1fr}}.fc .journal{flex-direction:column;font-size:12.5px;display:flex}.fc .journal div{border-bottom:1px solid var(--border);grid-template-columns:48px 96px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 17px;display:grid}.fc .journal div:last-child{border-bottom:0}.fc .journal .t{color:var(--faint);font-variant-numeric:tabular-nums}.fc .fc-banner{background:var(--b-attention-bg);color:var(--b-attention-ink);border:1px solid var(--border);border-radius:12px;align-items:flex-start;gap:10px;padding:10px 14px;font-size:13px;display:flex}.fc .fc-banner b{font-weight:700}:root{--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}.grid.g2{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (max-width:900px){.grid.g2{grid-template-columns:1fr}}.metrics.m5{grid-template-columns:repeat(5,1fr)}.metrics.m3{grid-template-columns:repeat(3,1fr)}.brand .wordmark{color:var(--ink);align-items:baseline;gap:8px;text-decoration:none;display:inline-flex}.brand .wordmark b{font-family:var(--font-display);letter-spacing:.06em;font-size:22px;font-weight:800}.brand .wordmark small{color:var(--muted);letter-spacing:.02em;font-size:12px;font-weight:600}.brand .wordmark .mark{background:var(--coral);border-radius:3px;align-self:center;width:10px;height:10px}.searchbox{flex:1;max-width:520px;margin:0 auto;position:relative}.searchbox .search{max-width:none;margin:0}.searchbox .search input{padding-right:46px}.searchbox .hint{pointer-events:none;gap:3px;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.kbd{min-width:18px;height:18px;color:var(--faint);font-size:11px;font-weight:700;font-family:var(--font);background:#071f3f0f;border-radius:6px;justify-content:center;align-items:center;padding:0 4px;line-height:1;display:inline-flex}.toolbar .search.tbl{flex:0 240px;max-width:240px;margin:0}.toolbar .search.tbl input{background-position:10px;height:30px;padding:0 10px 0 30px;font-size:12.5px}.searchmenu{background:var(--surface);box-shadow:var(--pop-shadow);z-index:60;overscroll-behavior:contain;border-radius:12px;max-height:min(70vh,560px);padding:6px;position:absolute;top:44px;left:0;right:0;overflow-y:auto}.searchmenu .grp+.grp{border-top:1px solid var(--hairline-soft);margin-top:4px;padding-top:4px}.searchmenu .grp>.h{letter-spacing:.04em;text-transform:uppercase;color:var(--faint);align-items:center;gap:8px;padding:7px 10px 5px;font-size:11px;font-weight:700;display:flex}.searchmenu .grp>.h .n{letter-spacing:0;text-transform:none;color:var(--faint);margin-left:auto;font-weight:600}.searchmenu .res{color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:7px 10px;font-size:13.5px;text-decoration:none;display:flex}.searchmenu .res:hover,.searchmenu .res.on{background:var(--sub-2)}.searchmenu .res .c{color:var(--muted);flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600}.searchmenu .res .t{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.searchmenu .res .m{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12.5px;overflow:hidden}.searchmenu .res .r{flex:none;align-items:center;gap:8px;margin-left:auto;display:flex}.searchmenu .st{text-align:center;color:var(--muted);padding:16px 12px;font-size:13px}.searchmenu .foot{border-top:1px solid var(--hairline);margin-top:4px;padding-top:4px}.searchmenu .foot .res{color:var(--link);font-weight:600}.searchmenu mark{color:inherit;background:#ff823338;border-radius:3px;padding:0 1px}@media (max-width:900px){.searchbox{max-width:none}.searchmenu{position:fixed;top:60px;left:12px;right:12px}}.usermenu{position:relative}.usermenu .menu{background:var(--surface);min-width:220px;box-shadow:var(--pop-shadow);z-index:40;border:0;border-radius:12px;padding:6px;position:absolute;top:42px;right:0}.usermenu .menu .who{border-bottom:1px solid var(--hairline);margin-bottom:4px;padding:8px 10px 10px}.usermenu .menu .who .n{font-size:13.5px;font-weight:700}.usermenu .menu .who .r{color:var(--muted);font-size:12px}.usermenu .menu button,.usermenu .menu>a{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13.5px;font-weight:600;text-decoration:none;display:block}.usermenu .menu button:hover,.usermenu .menu>a:hover{background:var(--sub-2)}.nav a.rowlink-like,.rowclick{cursor:pointer}.dt-scroll{overflow-x:auto}.dt-nowrap table{width:max-content;min-width:100%}.dt-nowrap th,.dt-nowrap td{white-space:nowrap}.dt-nowrap .dt-sticky{z-index:1;background:var(--surface);box-shadow:1px 0 0 var(--hairline);position:sticky;left:0}.dt-nowrap tbody tr:hover .dt-sticky{background:var(--sub-2)}.empty{text-align:center;color:var(--muted);padding:34px 20px;font-size:13.5px}.empty b{color:var(--ink);margin-bottom:4px;font-size:15px;display:block}.errbox{background:var(--b-critical-bg);color:var(--b-critical-ink);border:0;border-radius:16px;flex-direction:column;align-items:flex-start;gap:10px;padding:22px;display:flex}.errbox .t{font-size:15px;font-weight:700}.errbox .m{font-size:13px}.errbox .rid{font-family:var(--font-mono);opacity:.8;font-size:12px}.skel{background:var(--sub-2);border-radius:8px;min-height:14px;position:relative;overflow:hidden}.skel:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);animation:1.4s infinite skel;position:absolute;inset:0;transform:translate(-100%)}@keyframes skel{to{transform:translate(100%)}}.field-err{color:var(--neg);font-size:12px;font-weight:600}.form-err{background:var(--b-critical-bg);color:var(--b-critical-ink);border-radius:8px;margin:0 17px 14px;padding:10px 12px;font-size:13px;font-weight:600}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.danger{color:var(--neg);border-color:var(--neg)}.tabpanel[hidden]{display:none}select.inp{appearance:auto}textarea.inp{resize:vertical;height:auto;min-height:70px;padding:8px 10px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--sub-2);color:var(--ink);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.chip.removable{align-items:center;gap:6px;padding-right:4px;display:inline-flex}.chip-x{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:15px;line-height:1}.chip-x:hover{color:var(--coral)}.linkrow .badge,.linkrow .toggle{margin-left:auto}.login-wrap{background:var(--frame);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:0;border-radius:16px;width:min(420px,100%);padding:30px 30px 26px;box-shadow:0 2px 6px #071f3f0f,0 18px 50px #071f3f24}.login-card .brand{justify-content:center;margin-bottom:6px}.login-card h1{font-family:var(--font-display);text-align:center;margin:12px 0 4px;font-size:24px}.login-card p.sub{color:var(--muted);text-align:center;margin:0 0 20px;font-size:13.5px}.login-card form{flex-direction:column;gap:13px;display:flex}.login-card .fld{flex-direction:column;gap:6px;display:flex}.login-card label{color:var(--muted);font-size:12px;font-weight:600}.login-card .btn{justify-content:center;width:100%}.login-card .links{justify-content:space-between;margin-top:14px;font-size:13px;display:flex}.login-card .links a{font-weight:600;text-decoration:none}.login-card .or{color:var(--faint);align-items:center;gap:10px;margin:4px 0;font-size:12px;display:flex}.login-card .or:before,.login-card .or:after{content:"";background:var(--border);flex:1;height:1px}.login-card .stripe{background:linear-gradient(90deg, var(--navy), var(--coral));border-radius:16px 16px 0 0;height:4px;margin:-30px -30px 24px}.appr .r .acts form{gap:6px;display:inline-flex}.inline-form{display:inline}.stack-sm{flex-direction:column;gap:10px;display:flex}.row-actions{flex-wrap:wrap;gap:8px;padding:12px 17px;display:flex}.badge.lg{padding:4px 12px;font-size:13px}.progress-note{color:var(--muted);margin-top:4px;font-size:12px}.oline .inp{min-width:0}.oline.o5{grid-template-columns:1.6fr 92px 82px 90px 26px}.calc-panel-note{color:var(--muted);padding:0 17px 10px;font-size:12px}.banner{background:var(--b-attention-bg);color:var(--b-attention-ink);border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:11px 14px;font-size:13px;display:flex}.banner.info{background:var(--b-info-bg);color:var(--b-info-ink)}.tabpanel .frmgrid{padding-top:4px}.int-h .badge{margin-left:auto}.usermenu .avatar{padding:0}:root{--chart-1:#e2543f;--chart-2:#071f3f}.barchart .col .fill{background:var(--chart-2)}.barchart .col:nth-child(odd) .fill{background:var(--chart-1)}.logo-chip{border-radius:8px;flex:none;align-items:center;display:inline-flex}.logo-chip img{width:auto;height:28px;display:block}.fc .flow.f5{grid-template-columns:repeat(5,minmax(0,1fr))}.fc .flow.f6{grid-template-columns:repeat(6,minmax(0,1fr))}@media (max-width:900px){.fc .flow.f5,.fc .flow.f6{grid-template-columns:1fr 1fr}}.fc .flow .st .big{font-family:var(--font-display);color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:1px;font-size:22px;font-weight:700;display:block}.fc .flow .st .chips{margin-top:8px}.chip.attention{background:color-mix(in srgb, var(--warn-dot) 18%, transparent);color:var(--ink)}.chip.critical{background:color-mix(in srgb, var(--neg) 14%, transparent);color:var(--neg)}.fc .cutrow{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (max-width:900px){.fc .cutrow{grid-template-columns:1fr}}.fc .cut{flex-direction:column;gap:8px;display:flex}.fc .cut .row{align-items:baseline;gap:12px;display:flex}.fc .cut .time{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.fc .cut .cd{color:var(--pos);text-align:right;margin-left:auto;font-size:12px;font-weight:700}.fc .cut .cd.warn{color:var(--warn-dot)}.fc table.fin td.pj{font-variant-numeric:tabular-nums}.fc table.fin td.pj.shortage{background:color-mix(in srgb, var(--neg) 14%, transparent);color:var(--neg);font-weight:700}.fc table.fin td.pj.below_safety{background:color-mix(in srgb, var(--warn-dot) 16%, transparent)}.fc table.fin td.pj.ample{color:var(--muted)}.fc table.fin tr.sel td{background:color-mix(in srgb, var(--s1) 8%, transparent)}.fc table.fin tr.pick{cursor:pointer}.fc .whrow{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.4fr) minmax(90px,1fr) auto auto;align-items:center;gap:12px;padding:11px 17px;font-size:13px;display:grid}.fc .whrow:last-child{border-bottom:0}.fc .whrow .s{color:var(--muted);font-size:12px}.fc .whrow .pctv{font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:700}.fc .prop{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:16px;padding:12px 17px;display:grid}.fc .prop:last-child{border-bottom:0}.fc .prop .t{font-size:13px;font-weight:600}.fc .prop .s{color:var(--muted);max-width:64ch;margin-top:2px;font-size:12px}.fc .prop .k{letter-spacing:.06em;color:var(--faint);text-transform:uppercase;font-size:11px;font-weight:700}.fc .prop .v{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:600}.fc .prop .acts{align-items:center;gap:8px;display:flex}@media (max-width:900px){.fc .prop{grid-template-columns:auto minmax(0,1fr)}.fc .prop .acts{grid-column:2}}.pgbtn:disabled{opacity:.45;cursor:not-allowed}.ds-layout{grid-template-columns:208px 1fr;align-items:start;gap:28px;display:grid}.ds-nav{flex-direction:column;gap:2px;font-size:13px;display:flex;position:sticky;top:18px}.ds-nav a{color:var(--muted);border-radius:8px;padding:5px 10px;text-decoration:none}.ds-nav a:hover{background:var(--sub-2);color:var(--ink)}.ds-section{margin-bottom:44px;scroll-margin-top:20px}.ds-section>h2{font-family:var(--font-display);border-bottom:1px solid var(--border);margin:0 0 4px;padding-bottom:8px;font-size:22px}.ds-intro{color:var(--muted);max-width:78ch;margin:0 0 18px;font-size:13.5px}.ds-demo{margin-bottom:22px;scroll-margin-top:20px}.ds-demo-h{align-items:center;gap:8px;display:flex}.ds-demo-h h3{margin:0 auto 0 0;font-size:15px;font-weight:700}.ds-when{color:var(--muted);max-width:78ch;margin:4px 0 10px;font-size:12.5px}.ds-stage{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.ds-stage.sub{background:var(--sub-2)}.ds-stage>.block{flex:100%;display:block}.ds-code{border:1px solid var(--border);background:var(--sub-2);white-space:pre;color:var(--ink);border-radius:10px;margin:8px 0 0;padding:13px 15px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;overflow-x:auto}.ds-swatches{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;width:100%;display:grid}.ds-swatch{border:1px solid var(--border);border-radius:10px;font-size:12px;overflow:hidden}.ds-swatch .sw{height:46px}.ds-swatch .nm{color:var(--muted);border-top:1px solid var(--border);background:var(--surface);padding:7px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}@media (max-width:900px){.ds-layout{grid-template-columns:1fr}.ds-nav{flex-flow:wrap;position:static}}.btn.quiet{background:0 0}.btn.quiet:hover{background:#071f3f12}.btn.quiet.accent{color:var(--primary)}.btn.icon-only{justify-content:center;width:38px;padding:0}.btn.sm.icon-only{width:31px}.btn.tiny.icon-only{width:28px}.actionmenu{display:inline-flex;position:relative}.am-menu{z-index:40;background:var(--surface);min-width:216px;box-shadow:var(--pop-shadow);border-radius:12px;padding:6px;position:absolute;top:44px;right:0}.am-menu.snug{top:32px}.am-menu.left{left:0;right:auto}.am-item>*{width:100%;height:auto;box-shadow:none;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;padding:8px 10px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.am-item>:hover{opacity:1;background:#071f3f0f}.am-item.danger>*{color:var(--neg)}.am-item.danger>:hover{background:#c0392b14}.applied{border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:7px;padding:10px 15px;display:flex}.fchip{color:#b8432f;background:#e2543f1a;border-radius:8px;align-items:center;font-size:12.5px;font-weight:600;display:inline-flex}.fchip .lbl{color:inherit;font:inherit;background:0 0;border:0;border-radius:8px 0 0 8px;padding:4px 4px 4px 10px}.fchip .x{color:inherit;background:0 0;border:0;border-radius:0 8px 8px 0;padding:3px 9px 5px 5px;font-size:15px;line-height:1}.fchip .lbl:hover,.fchip .x:hover{background:#e2543f29}.applied .clear-all{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:4px 8px;font-size:12.5px;font-weight:600;text-decoration:underline}.applied .clear-all:hover{color:var(--ink);background:#071f3f0d}.toolbar .filter .c{color:#b8432f;font-variant-numeric:tabular-nums;background:#e2543f29;border-radius:6px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:650}.fp-head{text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:6px 11px;font-size:11px;font-weight:650}.fp-item{align-items:center;gap:10px;display:flex}.fp-item .fp-v{color:var(--muted);margin-left:auto;font-size:12px;font-weight:600}.fp-check{color:var(--ink);cursor:pointer;white-space:nowrap;border-radius:8px;align-items:center;gap:9px;padding:7px 11px;font-size:13px;display:flex}.fp-check:hover{background:#071f3f0f}.fp-check.off{cursor:not-allowed;color:var(--faint)}.feed{padding:0 0 6px}.feed-composer{border-bottom:1px solid var(--hairline);padding:14px 17px}.feed-day+.feed-day{border-top:1px solid var(--hairline-soft)}.feed-day-h{letter-spacing:.02em;text-transform:uppercase;color:var(--faint);margin:0;padding:12px 17px 6px;font-size:12px;font-weight:700}.feed-e{gap:12px;padding:8px 17px;display:flex}.feed-rail{flex:none;width:9px;margin-top:7px;position:relative}.feed-rail:before{content:"";background:var(--surface);border:2px solid var(--border-2);border-radius:999px;height:9px;position:absolute;inset:0 0 auto}.feed-rail:after{content:"";background:var(--hairline);width:1px;position:absolute;top:13px;bottom:-15px;left:4px}.feed-e:last-child .feed-rail:after{display:none}.feed-e.note .feed-rail:before{background:var(--coral)}.feed-e.audit .feed-rail:before{background:var(--hairline)}.feed-e.pinned{background:var(--sub-2)}.feed-b{flex:1;min-width:0}.feed-t{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.feed-title{color:var(--ink);margin-top:2px;font-size:13px;font-weight:600}.feed-e.audit .feed-title{color:var(--muted);font-weight:500}.feed-time{color:var(--faint);font-variant-numeric:tabular-nums;font-size:12px}.feed-tag,.feed-via,.feed-pin{background:var(--b-subdued-bg);color:var(--b-subdued-ink);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.feed-via{font-weight:500}.feed-pin{background:var(--b-attention-bg);color:var(--b-attention-ink)}.feed-meta{flex:none;align-items:center;gap:8px;margin-top:3px;display:inline-flex}.feed-actions{gap:6px;display:flex}.feed-body{color:var(--ink-2);white-space:pre-wrap;margin-top:2px;font-size:13px}.feed-e.event .feed-body,.feed-e.audit .feed-body{color:var(--muted);font-size:12.5px}.linkrow{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:11px 17px;font-size:13px;display:flex}.linkrow:last-child{border-bottom:0}.linkrow .k{color:var(--muted)}.linkrow a{margin-left:auto;font-weight:600;text-decoration:none}.linkrow .rt{margin-left:auto;font-weight:600}.byline{align-items:center;gap:8px;min-width:0;display:flex}.byline .who{flex-wrap:wrap;align-items:baseline;gap:6px;min-width:0;display:flex}.byline .name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.byline .meta{color:var(--muted);font-size:12.5px}.byline .meta b{color:var(--faint);padding:0 2px;font-weight:700}.byline.sm .name{font-size:13px}.byline.sm .meta{font-size:12px}.notes{flex-direction:column;display:flex}.note{box-shadow:inset 0 -1px 0 var(--hairline);padding:12px 0}.note:last-child{box-shadow:none}.note.pinned{background:var(--sub-2);box-shadow:none;border-radius:10px;margin-bottom:8px;padding:12px}.note .head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.note .head .spacer{flex:1}.note .body{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-2)}.note .mentions{color:var(--muted);margin-top:6px;font-size:12.5px}.notif{box-shadow:inset 0 -1px 0 var(--hairline);color:inherit;grid-template-columns:8px minmax(0,1fr) max-content;align-items:start;gap:10px;padding:12px 4px;text-decoration:none;display:grid}.notif:last-child{box-shadow:none}.notif:hover{background:var(--sub-2)}.notif .mark{background:0 0;border-radius:999px;flex:none;width:8px;height:8px;margin-top:6px}.notif.unread .mark{background:var(--coral)}.notif .notif-b{flex-direction:column;gap:2px;min-width:0;display:flex}.notif .t{color:var(--ink);font-weight:600}.notif.unread .t{font-weight:800}.notif .s{color:var(--muted);overflow-wrap:anywhere;font-size:12.5px}.notif .side{align-items:center;gap:8px;display:flex}.bellwrap{display:inline-flex;position:relative}.bellwrap .count{background:var(--coral);color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--surface);border-radius:999px;padding:0 4px;font-size:10.5px;font-weight:800;line-height:16px;position:absolute;top:-2px;right:-2px}.ment{flex-direction:column;gap:8px;display:flex}.ment-box{position:relative}.ment-box textarea{width:100%}.ment-menu{z-index:30;background:var(--surface);min-width:280px;max-width:340px;max-height:248px;box-shadow:var(--pop-shadow);border-radius:12px;padding:5px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.ment-menu-h{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:7px 10px 5px;font-size:10.5px;font-weight:650}.ment-opt{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:7px 10px;display:flex}.ment-opt:hover,.ment-opt.active{background:var(--sub-2)}.ment-av{background:var(--b-subdued-bg);width:28px;height:28px;color:var(--b-subdued-ink);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:650;display:grid}.ment-opt.active .ment-av{background:var(--coral);color:#fff}.ment-t{min-width:0}.ment-t b{font-size:13.5px;font-weight:600;display:block}.ment-t span{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;display:block;overflow:hidden}.ment-team{color:var(--faint);background:var(--b-subdued-bg);border-radius:6px;flex:none;margin-left:auto;padding:2px 7px;font-size:10.5px}.ment-hint{color:var(--faint);margin:0;font-size:12px}.ment-hint kbd{border:1px solid var(--border);background:var(--sub-2);color:var(--muted);border-radius:6px;padding:1px 6px;font-family:inherit;font-size:11px;font-weight:600}.ment-chips{min-height:26px;color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12.5px;display:flex}.ment-chip{color:var(--link);background:#e2543f1c;border:1px solid #e2543f47;border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.ment-chip button{color:inherit;opacity:.65;cursor:pointer;background:0 0;border:0;border-radius:50%;padding:2px;font-size:14px;line-height:1}.ment-chip button:hover{opacity:1;background:#e2543f2e}.ment-name{color:var(--link);white-space:nowrap;font-weight:650}.note-text{white-space:pre-wrap;margin:0}.note-sent{color:var(--faint);align-items:center;gap:6px;margin:6px 0 0;font-size:11.5px;display:flex}.row-actions .toggle-row.end{margin-left:auto;padding:0}.row-note{text-align:right;color:var(--faint);margin:-6px 0 0;padding:0 17px 12px;font-size:12px}.choicecards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:6px 17px 14px;display:grid}.choicecards[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.choicecards[data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:760px){.choicecards,.choicecards[data-columns="2"],.choicecards[data-columns="4"]{grid-template-columns:1fr}}.choicecards[data-layout=rows]{grid-template-columns:1fr;gap:8px}.choicecard.row{border-radius:10px;align-items:center;padding:10px 14px}.choicecard.row .choicecard-mark{margin-top:0}.choicecard.row .choicecard-ic svg{width:20px;height:20px}.choicecard.row .choicecard-badge{margin-left:auto;padding-left:12px;position:static}.choicecard{text-align:left;border:1.5px solid var(--hairline);background:var(--surface);color:inherit;font:inherit;cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.choicecard:hover:not(:disabled){border-color:var(--muted)}.choicecard:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.choicecard:disabled{opacity:.55;cursor:not-allowed}.choicecard.on{border-color:var(--coral);box-shadow:0 0 0 3px #e85d3c24}.choicecard-mark{border:1.5px solid var(--muted);background:var(--surface);border-radius:50%;flex:none;width:18px;height:18px;margin-top:1px}.choicecard.on .choicecard-mark{border:5px solid var(--coral)}.choicecard-body{flex-direction:column;gap:3px;min-width:0;display:flex}.choicecard-t{font-size:14px;font-weight:640}.choicecard-h{color:var(--muted);font-size:12.5px}.choicecard.iconed{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:18px 16px 16px}.choicecard.iconed .choicecard-mark{margin-top:0;position:absolute;top:12px;left:12px}.choicecard.iconed .choicecard-body{align-items:center}.choicecard-ic{color:var(--muted);display:inline-flex}.choicecard-ic svg{width:28px;height:28px}.choicecard.on .choicecard-ic{color:var(--coral)}.choicecard-badge{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);background:#071f3f12;border-radius:6px;padding:2px 7px;font-size:11px;position:absolute;top:10px;right:12px}.perm-list{flex-direction:column;display:flex}.perm-row{border-top:1px solid var(--hairline);cursor:pointer;align-items:center;gap:12px;padding:10px 17px;font-size:13.5px;display:flex}.perm-row:first-child{border-top:0}.perm-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--coral);flex:none}.perm-row.locked{cursor:default}.perm-row.locked .perm-t{color:var(--muted)}.perm-row.extra .perm-t{font-weight:600}.perm-t{flex:auto;min-width:0}.perm-k{font-family:var(--font-mono);color:var(--muted);font-size:11.5px;font-weight:400;display:block}.perm-src{color:var(--muted);border:1px solid var(--hairline);white-space:nowrap;border-radius:6px;flex:none;padding:2px 8px;font-size:11.5px}.perm-src.extra{color:var(--coral);border-color:var(--coral)}.logview{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:224px minmax(0,1fr);gap:0;min-height:420px;display:grid;overflow:hidden}.logview.with-detail{grid-template-columns:224px minmax(0,1fr) 360px}.logview-rail{border-right:1px solid var(--hairline);padding:12px 10px;font-size:13px;overflow-y:auto}.logview-rail-h{justify-content:space-between;align-items:center;padding:2px 6px 10px;font-weight:600;display:flex}.logview-facet{border-top:1px solid var(--hairline);padding:6px 0}.logview-facet-h{width:100%;font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px;font-weight:600;display:flex}div.logview-facet-h{cursor:default}.logview-facet-h .chev{width:12px;color:var(--muted);font-size:11px}.logview-facet .inp{width:calc(100% - 12px);height:30px;margin:4px 6px 6px;font-size:12.5px}.logview-opt{border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:3px 6px;display:flex}.logview-opt:hover{background:var(--sub-2)}.logview-opt .chkline{min-width:0;font-size:12.5px}.logview-opt .c,.logview-facet-h .c{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11.5px}.logview-main{flex-direction:column;min-width:0;display:flex}.logview-toolbar{border-bottom:1px solid var(--hairline);align-items:center;gap:8px;padding:10px 12px;display:flex}.logview-toolbar>:first-child{flex:auto}.logview-toolbar-r{flex:none;align-items:center;gap:6px;display:inline-flex}.logview-toolbar-r .btn svg{margin-right:4px}.logview-timeline{border-bottom:1px solid var(--hairline);padding:8px 12px 4px}.logview-timeline .bars{align-items:flex-end;gap:2px;height:28px;display:flex}.logview-timeline .bars span{background:var(--border);border-radius:2px 2px 0 0;flex:1 1 0}.logview-timeline .bars span.ok{background:var(--pos)}.logview-timeline .bars span.err{background:var(--neg)}.logview-timeline .ticks{font-family:var(--font-mono);color:var(--faint);justify-content:space-between;padding-top:4px;font-size:10.5px;display:flex}.logview-head,.logview-row{grid-template-columns:136px 92px minmax(180px,.9fr) minmax(180px,1fr) minmax(0,1.3fr);align-items:center;gap:12px;padding:0 12px;display:grid}.logview.with-detail .logview-head,.logview.with-detail .logview-row{grid-template-columns:136px 92px minmax(160px,1fr) minmax(160px,1fr) minmax(0,.8fr)}.logview-head{letter-spacing:.02em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--hairline);padding-top:8px;padding-bottom:6px;font-size:11.5px;font-weight:600}.logview-rows{max-height:640px;font-family:var(--font-mono);font-size:12.5px;overflow:auto}.logview-row{border:0;border-bottom:1px solid var(--hairline);width:100%;min-height:30px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0}.logview-row:nth-child(2n){background:var(--sub-2)}.logview-row:hover{background:var(--frame)}.logview-row.selected{background:var(--b-info-bg);box-shadow:inset 3px 0 0 var(--b-info-ink)}.logview-row:focus-visible{outline:2px solid var(--b-info-ink);outline-offset:-2px;border-radius:0}.logview-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.logview-row .t .d{color:var(--faint);margin-right:4px}.logview-row .s{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.logview-row .s .dot{background:var(--b-attention-ink);border-radius:50%;flex:none;width:7px;height:7px}.logview-row.ok .s .dot{background:var(--pos)}.logview-row.err .s .dot{background:var(--neg)}.logview-row.err .x{color:var(--neg)}.logview-row .src{color:var(--ink-2)}.logview-row .x{color:var(--muted)}.logview-empty{text-align:center;color:var(--muted);font-family:var(--font);padding:22px 12px;font-size:13px}.logview-detail{border-left:1px solid var(--hairline);background:var(--frame);padding:12px;overflow-y:auto}.logview-detail-h{flex-wrap:nowrap;align-items:center;gap:8px;padding:2px 2px 12px;display:flex}.logview-detail-h .lv-nav{flex-direction:row;flex:none;align-items:center;gap:2px;margin-left:auto;display:flex}.logview-detail-h .lv-nav .icobtn{border-radius:8px;width:30px;height:30px;font-size:12px}.logview-detail-h .lv-nav .icobtn:focus-visible,.logview-toolbar-r .icobtn:focus-visible{outline-color:var(--b-info-ink)}.logview-detail-h .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);flex:auto;font-size:12.5px;overflow:hidden}.logview-chip{font-family:var(--font-mono);border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:6px;flex:none;padding:2px 7px;font-size:11px}.logtrace{padding-left:14px;position:relative}.logtrace:before{content:"";border-left:1px dashed var(--border);position:absolute;top:8px;bottom:14px;left:5px}.lt-step,.lt-end{padding-bottom:14px;position:relative}.lt-mark,.lt-end{align-items:center;gap:8px;font-size:12.5px;display:flex}.lt-dot{border:2px solid var(--faint);background:var(--frame);border-radius:50%;flex:none;width:11px;height:11px;position:absolute;left:-14px}.lt-step.ok .lt-dot{border-color:var(--pos);background:var(--pos)}.lt-step.err .lt-dot{border-color:var(--neg);background:var(--neg)}.lt-step.wait .lt-dot{border-color:var(--b-attention-ink);background:var(--b-attention-ink)}.lt-title{color:var(--ink);font-weight:600}.lt-at{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;margin-left:auto;font-size:11px}.lt-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-top:8px;padding:2px 12px}.lt-kv{border-bottom:1px solid var(--hairline);justify-content:space-between;gap:12px;padding:8px 0;font-size:12.5px;display:flex}.lt-kv:last-child{border-bottom:0}.lt-kv .k{color:var(--muted);flex:none}.lt-kv .v{font-family:var(--font-mono);text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;overflow:hidden}.lt-note{background:var(--b-critical-bg);color:var(--b-critical-ink);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;margin:8px 0;padding:8px 10px;font-size:12.5px}.lt-step.ok .lt-note,.lt-step.wait .lt-note{background:var(--b-attention-bg);color:var(--b-attention-ink)}.lt-end{flex-wrap:wrap;padding-bottom:0}.lt-end .lt-dot{border-color:var(--ink-2);background:var(--ink-2)}.lt-id{font-family:var(--font-mono);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:100%;font-size:11px;overflow:hidden}.logview-tag{background:var(--b-attention-bg);color:var(--b-attention-ink);border-radius:6px;padding:2px 8px;font-size:11.5px}.logview-tag.ok{background:var(--b-success-bg);color:var(--b-success-ink)}.logview-tag.err{background:var(--b-critical-bg);color:var(--b-critical-ink)}@media (max-width:1100px){.logview,.logview.with-detail{grid-template-columns:1fr}.logview-rail,.logview-detail{border-left:0;border-right:0;border-bottom:1px solid var(--hairline)}}.container:has(>.page-wide){max-width:none}.page-wide .logview{height:calc(100dvh - 292px);min-height:480px}.page-wide .logview-rows{flex:auto;max-height:none}.app:has(>.main .page-tool) .main{min-height:0;padding:0;overflow:hidden}.container:has(>.page-tool){max-width:none;height:100%}.page-tool{background:var(--surface);grid-template-columns:minmax(0,1fr);height:100%;min-height:0;display:grid}.page-tool.with-rail{grid-template-columns:244px minmax(0,1fr)}.page-tool.with-rail.wide-rail{grid-template-columns:340px minmax(0,1fr)}.tool-rail{border-right:1px solid var(--hairline);min-height:0;padding:12px 10px;font-size:13px;overflow-y:auto}.tool-main{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:auto}.tool-rail-h{border-bottom:1px solid var(--hairline);margin-bottom:8px;padding:2px 6px 12px}.tool-rail-sec{border-top:1px solid var(--hairline);margin-top:10px;padding:14px 6px 0}.tool-rail-sec.first{border-top:0;margin-top:0;padding-top:2px}.tool-rail-sec.flush{padding-left:0;padding-right:0}.tool-rail-sec.flush .tool-rail-sec-h{padding:0 6px}.tool-rail-sec-h{align-items:baseline;gap:8px;margin-bottom:9px;display:flex}.tool-rail-sec-h h3{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);flex:1;margin:0;font-size:11px;font-weight:700}.tool-rail-sec-h .n{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:650}.tool-rail-sec-b{flex-direction:column;gap:10px;display:flex}.tool-rail-sec>.tool-rail-sec-b>*{flex:none}.tool-rail-sec .fld{flex-direction:column;gap:5px;display:flex}.tool-rail-sec .fld label{color:var(--muted);font-size:12px;font-weight:600}.tool-rail-sec .fld .progress-note,.tool-rail-sec .fld .field-err{font-size:11.5px}.tool-back{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;text-decoration:none;display:inline-flex}.tool-back:hover{color:var(--ink)}.tool-title{font-family:var(--font-display);margin:6px 0 8px;font-size:18px;font-weight:600}.tool-rail-h .tabs{margin:0 -6px}.logview.tool{border:0;border-radius:0;grid-template-columns:244px minmax(0,1fr);height:100%;min-height:0}.logview.tool.with-detail{grid-template-columns:244px minmax(0,1fr) 380px}.logview.tool .logview-rows{flex:auto;max-height:none}.logview.tool .logview-main{min-height:0}.app:has(>.main .page-tool) .topbar .searchbox{display:none}.nav-sub-h{border-bottom:1px solid var(--hairline);grid-template-columns:28px 1fr 28px;align-items:center;margin-bottom:6px;padding:4px 0 10px;display:grid}.nav-back{width:28px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:18px;line-height:1}.nav-back:hover{background:#071f3f0f}.nav-sub-t{text-align:center;font-size:13.5px;font-weight:600}.nav-chev{color:var(--faint);margin-left:auto;font-size:16px;line-height:1}.nav a.soon{color:var(--muted)}.nav a.soon svg{opacity:.55}.nav-offline{color:var(--muted);letter-spacing:.02em;white-space:nowrap;background:#071f3f12;border-radius:6px;margin-left:auto;padding:3px 6px;font-size:10px;font-weight:650;line-height:1}.topbar-tool{flex:auto;align-items:center;min-width:0;display:flex}.topbar-tool:empty{display:none}.topbar-tool .logview-toolbar{border:0;flex:auto;gap:12px;padding:0}.topbar-tool .logview-toolbar>:first-child{flex:0 460px}.topbar-tool .logview-toolbar-r{margin-left:auto}.app:has(>.main .page-tool) .topbar-left:empty{display:none}.app:has(>.main .page-tool) .topbar-left:not(:has(.topbar-sub)){display:none}.logview-rail-btns{gap:4px;display:inline-flex}.logview-rail-h .c{color:var(--muted);font-size:12px;font-weight:400}.filterbar{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-wrap:wrap;flex:320px;align-items:center;gap:6px;min-width:0;min-height:34px;padding:3px 6px 3px 8px;display:flex;position:relative}.filterbar.open,.filterbar:focus-within{border-color:var(--coral);box-shadow:0 0 0 3px #e2543f24}.filterbar>input{min-width:120px;height:26px;font:inherit;color:var(--ink);background:0 0;border:0;outline:none;flex:140px;padding:0 4px;font-size:13px}.filterbar>input::placeholder{color:var(--faint)}.fb-menu .fp-check{padding:6px 9px}.fb-menu .fp-check .chk{flex:0 0 16px;width:16px;height:16px}.fb-chip{color:var(--ink);white-space:nowrap;background:#071f3f0f;border-radius:8px;align-items:center;font-size:12.5px;display:inline-flex}.fb-chip .fb-lbl{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px 0 0 8px;padding:4px 4px 4px 9px}.fb-chip .fb-lbl em{color:var(--muted);font-style:normal}.fb-chip .fb-lbl b{color:#b8432f;font-weight:600}.fb-chip .fb-lbl:hover{background:#071f3f14}.filterbar .fb-x{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:0 8px 8px 0;padding:3px 8px 5px 4px;font-size:15px;line-height:1}.filterbar .fb-x:hover{color:var(--ink);background:#071f3f14}.fb-typing{color:var(--muted);white-space:nowrap;padding-left:2px;font-size:12.5px}.filterbar .fb-add{border:1px dashed var(--border);width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;margin-left:auto;font-size:16px;line-height:1}.filterbar .fb-add:hover{color:var(--ink);border-color:var(--ink)}.filterbar .fb-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 6px;font-size:12.5px;font-weight:600;text-decoration:underline}.filterbar .fb-clear:hover{color:var(--ink)}.fb-wrap{flex-wrap:wrap;flex:320px;align-items:center;gap:8px;min-width:0;display:flex}.fb-wrap>.filterbar{flex:220px}.fb-quick{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fb-quick-item{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;height:32px;display:inline-flex;position:relative}.fb-quick-item.act{background:#071f3f0f;border-color:#0000}.fb-quick-btn{height:100%;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:6px;padding:0 9px 0 11px;font-size:13px;font-weight:500;display:inline-flex}.fb-quick-btn b{color:#b8432f;font-weight:600}.fb-quick-btn .fb-caret{color:var(--muted);font-size:11px}.fb-quick-btn:hover,.fb-quick-btn.open{background:#071f3f0f}.fb-quick-item.act .fb-quick-btn{border-radius:10px 0 0 10px;padding-right:4px}.fb-quick-item .fb-x{width:22px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;margin-right:3px;font-size:15px;line-height:1}.fb-quick-item .fb-x:hover{color:var(--ink);background:#071f3f14}.fb-quick .fb-clear{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:4px 6px;font-size:12.5px;font-weight:600;text-decoration:underline}.fb-quick .fb-clear:hover{color:var(--ink)}.fb-menu{background:var(--surface);min-width:240px;max-width:100%;box-shadow:var(--pop-shadow);z-index:70;overscroll-behavior:contain;border-radius:12px;max-height:min(60vh,420px);padding:6px;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto}.fb-menu .fp-item.on,.fb-menu .fp-check.on{background:var(--sub-2)}.fb-hint{color:var(--muted);padding:8px 11px;font-size:12.5px}.fb-op{border-top:1px solid var(--hairline);margin-top:6px;padding-top:6px}.fb-op>button[role=radio]{color:var(--ink);font-weight:500}.fb-op>button[role=radio].act{color:var(--ink)}.fp-tick{width:14px;color:var(--ink);text-align:center;font-size:12px;display:inline-block}.fb-enter{color:var(--muted);white-space:nowrap;background:#071f3f0f;border-radius:6px;margin-left:auto;padding:1px 6px;font-size:11px}.fb-menu .fp-check .fb-enter{margin-left:auto}.fb-view{border-right:1px solid var(--hairline);flex:none;align-items:center;margin:0 2px 0 -2px;padding-right:8px;display:inline-flex}.fb-view select{appearance:none;font:inherit;color:var(--ink);cursor:pointer;background:#071f3f0f url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'><path d='M2 3.5l3 3 3-3' fill='none' stroke='%23071f3f' stroke-width='1.4'/></svg>") right 7px center no-repeat;border:0;border-radius:8px;max-width:180px;padding:3px 22px 3px 9px;font-size:12.5px;font-weight:600}.fb-view select:focus-visible{outline:2px solid var(--coral);outline-offset:1px}.shop{--shop-bg:#faf8f4;--shop-surface:#fff;--shop-ink:#14213d;--shop-muted:#6b7280;--shop-line:#e8e4dc;--shop-accent:#071f3f;--shop-accent-ink:#fff;--shop-pop:#f2c94c;--shop-ok:#1f7a4d;--shop-warn:#b45309;--shop-bad:#b91c1c;--shop-radius:18px;background:var(--shop-bg);min-height:100vh;color:var(--shop-ink);flex-direction:column;font-size:15px;display:flex}.shop a{color:inherit}.shop a.shop-btn{color:var(--shop-accent-ink)}.shop a.shop-btn.ghost,.shop a.shop-btn.pop{color:var(--shop-ink)}.shop-header{z-index:6;-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--shop-line);background:#faf8f4eb;position:sticky;top:0}.shop-header .shop-bar{align-items:center;gap:16px;max-width:1180px;height:72px;margin:0 auto;padding:0 24px;display:flex}.shop-logo{border-radius:8px;align-items:center;gap:14px;line-height:1;text-decoration:none;display:inline-flex}.shop-logo img{width:auto;height:26px;display:block}.shop-logo:focus{outline:none}.shop-logo:focus-visible{outline:2px solid var(--shop-pop);outline-offset:2px}.shop-logo .tag{letter-spacing:.12em;text-transform:uppercase;color:var(--shop-muted);border-left:1px solid var(--shop-line);padding-top:2px;padding-left:12px;font-size:11px;font-weight:700}.shop-header .spacer{flex:1}.shop-cart-btn{border:1px solid var(--shop-line);background:var(--shop-surface);border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;position:relative}.shop-cart-btn .count{background:var(--shop-pop);min-width:22px;height:22px;color:var(--shop-ink);border-radius:999px;place-items:center;padding:0 6px;font-size:12px;display:inline-grid}.shop-user{position:relative}.shop-user-btn{border:1px solid var(--shop-line);background:var(--shop-surface);cursor:pointer;font:inherit;color:var(--shop-ink);text-align:left;border-radius:999px;align-items:center;gap:10px;padding:5px 12px 5px 5px;display:inline-flex}.shop-user-btn .dot{background:var(--shop-accent);width:36px;height:36px;color:var(--shop-accent-ink);letter-spacing:.02em;border-radius:999px;place-items:center;font-size:13px;font-weight:800;display:inline-grid}.shop-user-btn .who{flex-direction:column;max-width:220px;line-height:1.15;display:flex}.shop-user-btn .company{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.shop-user-btn .person{color:var(--shop-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.shop-user-btn .caret{color:var(--shop-muted);margin-left:2px;font-size:14px}.shop-menu{background:var(--shop-surface);border:1px solid var(--shop-line);z-index:7;border-radius:16px;flex-direction:column;gap:2px;min-width:220px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #071f3f1f}.shop-menu a,.shop-menu button{text-align:left;width:100%;font:inherit;color:var(--shop-ink);cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;text-decoration:none;display:block}.shop-menu a:hover,.shop-menu button:hover{background:var(--shop-bg)}.shop-menu a.active{background:var(--shop-accent);color:var(--shop-accent-ink)}.shop-menu form{border-top:1px solid var(--shop-line);margin:4px 0 0;padding-top:6px}.shop-main{flex:1;padding:32px 0 80px}.shop-main .wrap{max-width:1180px;margin:0 auto;padding:0 24px}.shop-footer{border-top:1px solid var(--shop-line);color:var(--shop-muted);text-align:center;padding:20px 24px;font-size:12.5px}.shop-btn{border:1px solid var(--shop-accent);background:var(--shop-accent);color:var(--shop-accent-ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:transform 80ms,opacity .12s;display:inline-flex}.shop-btn:hover{transform:translateY(-1px)}.shop-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.shop .shop-btn:focus,.shop .shop-cart-btn:focus,.shop .shop-user-btn:focus{outline:none}.shop .shop-btn:focus-visible,.shop .shop-cart-btn:focus-visible,.shop .shop-user-btn:focus-visible{outline:2px solid var(--shop-pop);outline-offset:2px}.shop-btn.ghost{color:var(--shop-ink);border-color:var(--shop-line);background:0 0}.shop-btn.pop{background:var(--shop-pop);border-color:var(--shop-pop);color:var(--shop-ink)}.shop-btn.sm{padding:7px 14px;font-size:13px}.shop-title{font-family:var(--font-display);margin:0 0 6px;font-size:34px;line-height:1.1}.shop-sub{color:var(--shop-muted);max-width:62ch;margin:0 0 24px}.shop-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.shop-head .actions{gap:8px;padding-top:8px;display:flex}.shop-note{background:#fff7dc;border:1px solid #f0dc9a;border-radius:12px;margin:0 0 20px;padding:12px 16px;font-size:14px}.shop-note.bad{background:#fdecec;border-color:#f5b5b5}.shop-pill{color:var(--shop-ink);background:#eef1f6;border-radius:999px;align-items:center;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.shop-pill.ok{color:var(--shop-ok);background:#e3f4ea}.shop-pill.warn{color:var(--shop-warn);background:#fdf1e2}.shop-pill.bad{color:var(--shop-bad);background:#fdecec}.shop-pill.pop{background:var(--shop-pop)}.shop-card{background:var(--shop-surface);border:1px solid var(--shop-line);border-radius:var(--shop-radius);padding:20px 22px}.shop-card h2{font-family:var(--font-display);margin:0 0 12px;font-size:20px}.shop-stack{align-content:start;gap:16px;display:grid}.shop-cols{grid-template-columns:1fr 1fr;gap:16px;display:grid}.shop-cols.wide{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start}.shop-kv{grid-template-columns:160px 1fr;gap:8px 16px;font-size:14px;display:grid}.shop-kv .k{color:var(--shop-muted)}.shop-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:20px;display:grid}.shop-stat{background:var(--shop-surface);border:1px solid var(--shop-line);border-radius:12px;padding:14px 16px}.shop-stat .l{color:var(--shop-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.shop-stat .n{font-family:var(--font-display);margin-top:4px;font-size:24px}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;display:grid}.shop-product{background:var(--shop-surface);border:1px solid var(--shop-line);border-radius:var(--shop-radius);flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.shop-product .art{aspect-ratio:1;background:linear-gradient(160deg,#eef1f6,#f8f6f1);border-radius:12px;place-items:center;display:grid;position:relative;overflow:hidden}.shop-product .art img{object-fit:cover;width:100%;height:100%}.shop-product .art .mono{font-family:var(--font-display);color:#071f3f2e;letter-spacing:.04em;font-size:44px}.shop-product .art .stock{position:absolute;top:10px;left:10px}.shop-product .name{font-size:15px;font-weight:700;line-height:1.25}.shop-product .meta{color:var(--shop-muted);font-size:12.5px}.shop-product .price{align-items:baseline;gap:8px;display:flex}.shop-product .price strong{font-size:19px}.shop-product .price s{color:var(--shop-muted);font-size:13px}.shop-product .tiers{color:var(--shop-muted);font-size:12px}.shop-qty{border:1px solid var(--shop-line);background:var(--shop-surface);border-radius:999px;align-items:center;display:inline-flex;overflow:hidden}.shop-qty button{cursor:pointer;width:36px;height:36px;color:var(--shop-ink);background:0 0;border:0;font-size:18px}.shop-qty button:disabled{opacity:.35;cursor:not-allowed}.shop-qty input{text-align:center;width:48px;height:36px;font:inherit;-moz-appearance:textfield;background:0 0;border:0;font-weight:700}.shop-qty input::-webkit-outer-spin-button{-webkit-appearance:none}.shop-qty input::-webkit-inner-spin-button{-webkit-appearance:none}.shop-product .buy{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;display:flex}.shop-lines{border-collapse:collapse;width:100%;font-size:14px}.shop-lines th,.shop-lines td{text-align:left;border-bottom:1px solid var(--shop-line);vertical-align:middle;padding:12px 8px}.shop-lines th{color:var(--shop-muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.shop-lines .num{text-align:right;white-space:nowrap}.shop-lines tr:last-child td{border-bottom:0}.shop-lines .sub{color:var(--shop-muted);font-size:12.5px}.shop-lines a{font-weight:700;text-decoration:none}.shop-total{grid-template-columns:1fr auto;gap:6px 24px;padding-top:12px;font-size:14px;display:grid}.shop-total .big{font-family:var(--font-display);font-size:22px}.shop-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.shop-field label{font-size:13px;font-weight:700}.shop-field .hint{color:var(--shop-muted);font-size:12.5px}.shop-field .err{color:var(--shop-bad);font-size:12.5px}.shop-input{border:1px solid var(--shop-line);background:var(--shop-surface);width:100%;font:inherit;color:var(--shop-ink);border-radius:12px;padding:11px 14px}.shop-input:focus{outline:2px solid var(--shop-pop);outline-offset:1px;border-color:#0000}textarea.shop-input{resize:vertical}.shop-form-err{background:#fdecec;border:1px solid #f5b5b5;border-radius:12px;margin:0 0 14px;padding:10px 14px;font-size:14px}.shop-empty{text-align:center;color:var(--shop-muted);padding:40px 20px}.shop-empty .big{font-family:var(--font-display);color:var(--shop-ink);margin-bottom:6px;font-size:22px}.shop-orders{gap:12px;display:grid}.shop-order{background:var(--shop-surface);border:1px solid var(--shop-line);border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:8px 16px;padding:16px 20px;text-decoration:none;display:grid}.shop-order .code{font-size:16px;font-weight:800}.shop-order .meta{color:var(--shop-muted);font-size:13px}.shop-order .amount{font-family:var(--font-display);text-align:right;font-size:20px}.shop-steps{flex-wrap:wrap;gap:6px;margin-top:6px;font-size:12.5px;display:flex}.shop-steps span{color:var(--shop-muted);background:#eef1f6;border-radius:999px;padding:3px 10px}.shop-steps span.done{color:var(--shop-ok);background:#e3f4ea}.shop-steps span.now{background:var(--shop-pop);color:var(--shop-ink)}.shop-claim-line{grid-template-columns:1fr 96px 130px;gap:8px;margin-bottom:8px;display:grid}.shop-claim-read{grid-template-columns:1fr 96px 130px 40px;align-items:center;gap:8px;margin-bottom:8px;display:grid}.shop-claim-read .art{flex-direction:column;gap:2px;min-width:0;display:flex}.shop-claim-read .art .name{font-size:14px;font-weight:700}.shop-claim-read .art .src{color:var(--shop-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.shop-claim-read .drop{border:1px solid var(--shop-line);background:var(--shop-surface);height:40px;color:var(--shop-muted);cursor:pointer;border-radius:12px;font-size:18px;line-height:1}.shop-claim-read .drop:hover{color:var(--shop-bad);border-color:#f5b5b5}@media (max-width:820px){.shop-header .shop-bar{gap:12px;height:64px;padding:0 14px}.shop-logo .tag,.shop-user-btn .who{display:none}.shop-main{padding:20px 0 60px}.shop-main .wrap{padding:0 14px}.shop-cols,.shop-cols.wide{grid-template-columns:1fr}.shop-title{font-size:28px}.shop-claim-line{grid-template-columns:1fr 80px 110px}.shop-claim-read{grid-template-columns:1fr 72px 96px 36px}}.mapview{background:var(--sub-2);box-shadow:inset 0 0 0 1px var(--hairline);border-radius:10px;position:relative;overflow:hidden}.mapview-canvas{width:100%;height:100%}.mapview .leaflet-container{background:var(--sub-2);width:100%;height:100%;font:inherit}.mapview .leaflet-control-attribution{color:var(--muted);background:#fffc;font-size:10px}.mapview .leaflet-control-attribution a{color:var(--muted)}.mapview-empty{pointer-events:none;color:var(--muted);text-align:center;place-items:center;padding:0 24px;font-size:13px;display:grid;position:absolute;inset:0}.mapview-overlay{z-index:600;background:var(--surface);width:320px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);box-shadow:var(--pop-shadow);border-radius:10px;position:absolute;top:12px;right:12px;overflow-y:auto}@media (max-width:640px){.mapview-overlay{width:auto;max-height:55%;inset:auto 12px 12px}}.mapview-legend{z-index:500;background:var(--surface);box-shadow:var(--shadow);color:var(--muted);border-radius:8px;flex-wrap:wrap;gap:4px 12px;padding:8px 10px;font-size:12px;display:flex;position:absolute;bottom:12px;left:12px}.mapview-legend span{align-items:center;gap:6px;display:inline-flex}.mapview-legend i{border-radius:50%;width:8px;height:8px}.mapview .mv-dot{stroke:var(--surface);cursor:pointer}.mapview .mv-dot.on{stroke:var(--ink)}.mapview .mv-success{fill:var(--b-success-ink)}.mapview .mv-info{fill:var(--b-info-ink)}.mapview .mv-attention{fill:var(--b-attention-ink)}.mapview .mv-subdued{fill:var(--b-subdued-ink)}.mapview .mv-critical{fill:var(--b-critical-ink)}.mapview .mv-area{stroke:var(--muted);fill:var(--muted)}.mapview .mv-area.on,.mapview .mv-ring{stroke:var(--coral);fill:var(--coral)}.mapview .leaflet-tooltip{background:var(--surface);color:var(--ink);box-shadow:var(--pop-shadow);border:0;border-radius:8px;padding:6px 9px;font-size:12px;font-weight:600}.mapview .leaflet-tooltip:before{display:none}.lrow.pick{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0;text-decoration:none}.lrow.pick:hover{background:var(--sub-2)}.lrow.on{background:var(--sub-2);box-shadow:inset 3px 0 0 var(--coral)}.lrow-main{flex-direction:column;gap:2px;min-width:0;display:flex}.lrow-t{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;font-weight:600;display:flex;overflow:hidden}.lrow:has(.lrow-main) .n{white-space:nowrap}.lrow-s{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}
