:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;background:#f4f7f5;color:#151a18;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #151a18;--ink-soft: #2b3430;--muted: #64716b;--faint: #839088;--canvas: #f4f7f5;--surface: #fffefa;--surface-strong: #ffffff;--line: #dbe4df;--line-strong: #c5d2ca;--brand: #0a6c5f;--brand-dark: #07473f;--brand-soft: #dff3ee;--blue: #275d8f;--blue-soft: #e4eff8;--amber: #b9571b;--amber-soft: #fff0dc;--red: #b42318;--red-soft: #ffebe8;--green: #0b7650;--green-soft: #ddf4e9;--shadow: 0 18px 42px rgb(19 32 28 / .1);--shadow-soft: 0 10px 24px rgb(19 32 28 / .08)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:linear-gradient(135deg,#f4f7f5f5,#f8faf8f5),repeating-linear-gradient(90deg,rgb(10 108 95 / .05) 0,rgb(10 108 95 / .05) 1px,transparent 1px,transparent 48px)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit}svg{flex:0 0 auto}.app-shell{min-height:100vh;display:grid;grid-template-columns:284px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;border-right:1px solid rgb(255 255 255 / .08);background:linear-gradient(180deg,#17221f,#111816 58%,#0b1110),repeating-linear-gradient(135deg,rgb(255 255 255 / .04) 0,rgb(255 255 255 / .04) 1px,transparent 1px,transparent 18px);color:#eef7f3;padding:22px 16px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgb(255 255 255 / .18);border-radius:8px;background:#dff3ee;color:var(--brand-dark)}.brand strong,.brand small{display:block}.brand strong{color:#fff;font-size:18px;font-weight:700;letter-spacing:0}.brand small{margin-top:1px;color:#a7bbb3;font-size:12px}.sidebar-status,.sidebar-footer{min-width:0;border:1px solid rgb(255 255 255 / .1);border-radius:8px;background:#ffffff0f}.sidebar-status{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;color:#c7f1de;padding:12px}.sidebar-status.warning{color:#ffd9c2}.sidebar-status strong,.sidebar-status small{display:block}.sidebar-status strong{color:#fff;font-size:13px;font-weight:700}.sidebar-status small{margin-top:3px;color:#aec0ba;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.nav-list{display:grid;gap:6px}.nav-item{width:100%;min-width:0;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#b7c6c0;padding:10px;text-align:left;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.nav-item svg{justify-self:center}.nav-item span,.nav-item strong,.nav-item small{min-width:0}.nav-item strong,.nav-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-item strong{color:inherit;font-size:14px;font-weight:600}.nav-item small{margin-top:2px;color:#82958d;font-size:11px}.nav-item:hover,.nav-item.active{border-color:#c1e7da47;background:#dff3ee1f;color:#effff9;transform:translate(2px)}.nav-item.active small{color:#b8ddd1}.sidebar-footer{margin-top:auto;display:grid;grid-template-columns:18px minmax(32px,auto) minmax(0,1fr);gap:8px;align-items:center;padding:10px;color:#9fb2ab;font-size:12px}.sidebar-footer strong{min-width:0;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-main{min-width:0;padding:24px}.topbar,.screen,.loading-strip{width:min(1240px,100%);margin-right:auto;margin-left:auto}.topbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.topbar h1{margin:0;color:var(--ink);font-size:30px;font-weight:700;line-height:1.1;letter-spacing:0}.ready-pill{min-height:36px;display:inline-flex;align-items:center;gap:8px;border:1px solid #b8decf;border-radius:999px;background:var(--green-soft);color:var(--green);padding:0 12px;font-size:13px;font-weight:700;white-space:nowrap}.ready-pill.warning{border-color:#ffd0b6;background:var(--amber-soft);color:var(--amber)}.loading-strip{border:1px solid #b8d5eb;border-radius:8px;background:var(--blue-soft);color:#1b4e7d;margin-bottom:14px;padding:11px 12px;font-weight:600}.screen-grid{display:grid;grid-template-columns:minmax(304px,388px) minmax(0,1fr);gap:18px;align-items:start}.panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:#fffefaf2;box-shadow:0 1px #ffffffb8 inset;padding:16px}.filters-panel{position:sticky;top:24px}.search-panel,.rule-panel{box-shadow:var(--shadow-soft)}.section-heading,.list-header,.panel-title-row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.section-heading{margin-bottom:16px}.section-heading.compact{margin-bottom:12px}.list-header{align-items:center;margin-top:2px}.panel-title-row{align-items:center;margin-bottom:12px}.section-heading h1,.list-header h2,.panel h2{margin:0;color:var(--ink);font-weight:700;letter-spacing:0}.section-heading h1{font-size:28px;line-height:1.12}.list-header h2,.panel h2{font-size:20px;line-height:1.2}.section-heading p,.list-header p{margin:5px 0 0;color:var(--muted);line-height:1.45}.eyebrow{margin:0 0 5px;color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.panel-title-row>span{min-height:28px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:#f7faf8;color:var(--muted);padding:0 9px;font-size:12px;font-weight:600;white-space:nowrap}.field{display:grid;gap:7px;margin-bottom:13px}.field span,.toggle-row span{color:var(--ink-soft);font-size:13px;font-weight:600}.field input,.field label input{min-width:0;width:100%;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--ink);padding:10px 11px;outline:none}.field input::placeholder{color:#707b75;font-weight:400}.field input:focus,.input-shell:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #0a6c5f26}.input-shell{min-width:0;display:flex;align-items:center;gap:8px;border:1px solid var(--line-strong);border-radius:8px;background:#fff;color:var(--faint);padding:0 10px}.field .input-shell input{border:0;border-radius:0;box-shadow:none;padding-right:0;padding-left:0}.two-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end}.two-column label{display:grid;gap:7px}.toggle-row{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:8px;background:#f9fbf9;padding:9px 10px}.toggle-row input[type=checkbox]{width:42px;height:24px;accent-color:var(--brand)}.chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.chip{flex:0 0 auto;max-width:230px;min-height:34px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:var(--ink-soft);padding:0 11px;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:border-color .16s ease,background .16s ease,color .16s ease}.chip:hover,.chip-selected{border-color:#6ab9a7;background:var(--brand-soft);color:var(--brand-dark)}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.button,.icon-button,.back-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid transparent;min-height:40px;font-weight:700;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.button:hover,.icon-button:hover,.back-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.button:focus-visible,.icon-button:focus-visible,.back-button:focus-visible,.chip:focus-visible,.nav-item:focus-visible,.bid-card:focus-visible,.mobile-tabs button:focus-visible{outline:3px solid rgb(10 108 95 / .25);outline-offset:2px}.button{padding:0 14px}.primary-button,.icon-button.primary{background:var(--brand);color:#fff}.primary-button:hover,.icon-button.primary:hover{background:var(--brand-dark)}.secondary-button,.icon-button,.back-button{background:#fff;border-color:var(--line-strong);color:var(--ink)}.icon-button{width:40px;min-width:40px;padding:0}.icon-button.danger{border-color:#ffc8c2;background:#fff8f7;color:var(--red)}.back-button{width:fit-content;margin-bottom:12px;padding:0 12px}.filter-summary,.result-count,.muted,.fetched-at{color:var(--muted)}.filter-summary{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);margin-top:14px;padding-top:12px;font-size:13px}.filter-summary strong{color:var(--brand-dark);white-space:nowrap}.status-message{border-radius:8px;margin:9px 0;padding:10px 11px;font-size:13px;font-weight:600;line-height:1.4}.status-muted{background:#f7faf8;border:1px solid var(--line);color:var(--muted)}.status-error{background:var(--red-soft);border:1px solid #ffc8c2;color:var(--red)}.status-success{background:var(--green-soft);border:1px solid #b8decf;color:var(--green)}.list-column{display:grid;gap:14px;min-width:0}.metric-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric-card{min-width:0;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:8px;background:var(--surface-strong);padding:12px}.metric-card span,.metric-card strong{display:block}.metric-card span{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.metric-card strong{margin-top:4px;color:var(--ink);font-size:26px;font-weight:700;line-height:1}.metric-card.accent-green{border-top-color:var(--green)}.metric-card.accent-amber{border-top-color:var(--amber)}.metric-card.accent-red{border-top-color:var(--red)}.taxonomy-summary{margin-bottom:14px}.bid-list{display:grid;gap:10px}.bid-card{position:relative;width:100%;min-width:0;display:grid;gap:9px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;background:var(--surface-strong);padding:14px;color:inherit;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;content-visibility:auto;contain-intrinsic-size:124px}.bid-card-open{border-left-color:var(--green)}.bid-card-closed{border-left-color:var(--red)}.bid-card:hover{border-color:#9acbbe;box-shadow:var(--shadow);transform:translateY(-2px)}.bid-card h3{margin:0;color:var(--ink);font-size:16px;line-height:1.35;overflow-wrap:anywhere}.bid-title-row{display:grid;grid-template-columns:minmax(0,1fr) 20px;align-items:start;gap:8px}.bid-title-row svg{margin-top:2px;color:var(--faint)}.card-topline,.card-bottomline{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px}.card-bottomline{border-top:1px solid var(--line);color:var(--muted);font-size:12px;padding-top:9px}.card-bottomline strong{color:var(--brand-dark);flex:0 0 auto}.ifb,.meta,.truncate{min-width:0}.ifb,.meta{color:var(--muted);font-size:12px}.ifb{font-weight:700;letter-spacing:.02em;text-transform:uppercase}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bid-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.bid-meta-grid span{min-width:0;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;background:#f8faf8;color:var(--muted);padding:7px 8px;font-size:12px}.badge{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.badge-open{background:var(--green-soft);color:var(--green)}.badge-closed{background:var(--red-soft);color:var(--red)}.empty-state,.center-state{border:1px dashed var(--line-strong);border-radius:8px;background:#fffefadb;color:var(--muted);padding:24px;text-align:center}.load-more{display:flex;justify-content:center;color:var(--muted);padding:8px 0 18px}.detail-screen{display:grid;gap:12px}.detail-hero{border-color:#b8decf;background:linear-gradient(135deg,#fff,#f4fbf8)}.detail-hero-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-hero h1{margin:9px 0 12px;max-width:980px;color:var(--ink);font-size:28px;line-height:1.16;letter-spacing:0;overflow-wrap:anywhere}.detail-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;color:var(--muted);font-size:13px}.detail-meta-grid span,.detail-meta-grid strong{min-width:0;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 9px;overflow-wrap:anywhere}.detail-meta-grid strong{color:var(--brand-dark)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.field-row{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding:10px 0}.field-row span{color:var(--muted);font-size:12px;font-weight:600}.field-row strong{min-width:0;color:var(--ink);overflow-wrap:anywhere}.section-box{border-top:1px solid var(--line);padding:12px 0}.section-box h3{margin:0 0 6px;color:var(--ink-soft);font-size:15px}.section-box p{margin:0;color:var(--ink-soft);line-height:1.58;overflow-wrap:anywhere}.doc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:10px 0;color:var(--ink);text-decoration:none}.doc-row:hover{color:var(--brand-dark)}.doc-row:first-of-type{border-top:0}.doc-row span{display:grid;gap:3px;min-width:0}.doc-row small{color:var(--muted)}.fetched-at{text-align:center;font-size:12px}.taxonomy-grid,.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.wide-panel{grid-column:1 / -1}.taxonomy-list,.entity-list{display:grid;gap:0}.taxonomy-list span,.entity-list span{border-top:1px solid var(--line);color:var(--ink-soft);padding:8px 0;overflow-wrap:anywhere}.entity-list{max-height:430px;overflow:auto}.action-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:13px 0}.action-row:first-of-type{border-top:0}.action-row h3{margin:0;color:var(--ink);font-size:15px;line-height:1.35;overflow-wrap:anywhere}.action-row p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.4;overflow-wrap:anywhere}.alert-row.unread{background:linear-gradient(90deg,rgb(223 243 238 / .72),transparent 52%)}.token-box{border:1px solid var(--line);border-radius:8px;background:#f8faf8;color:var(--ink-soft);margin-bottom:12px;padding:11px;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;overflow-wrap:anywhere}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.stats-grid div{border:1px solid #b8d5eb;border-radius:8px;background:var(--blue-soft);padding:10px}.stats-grid span,.stats-grid strong{display:block}.stats-grid span{display:flex;align-items:center;gap:6px;color:var(--blue);font-size:12px;font-weight:600}.stats-grid strong{margin-top:4px;color:#123c62;font-size:22px}.mobile-tabs{display:none}@media(max-width:1120px){.screen-grid{grid-template-columns:minmax(286px,340px) minmax(0,1fr)}.bid-meta-grid,.detail-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.app-shell{display:block}.sidebar{display:none}.app-main{padding:14px 12px 86px}.topbar{min-height:58px;margin-bottom:12px}.topbar h1{font-size:24px}.screen-grid,.detail-grid,.taxonomy-grid,.admin-grid{grid-template-columns:1fr}.filters-panel{position:static}.wide-panel{grid-column:auto}.mobile-tabs{position:fixed;right:10px;bottom:10px;left:10px;z-index:20;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;border:1px solid var(--line-strong);border-radius:8px;background:#fffefafa;padding:6px;box-shadow:0 16px 34px #13201c2e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-tabs button{min-width:0;display:grid;justify-items:center;gap:3px;border:0;border-radius:8px;background:transparent;color:var(--muted);padding:7px 3px;font-size:11px;font-weight:600}.mobile-tabs span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-tabs button.active{background:var(--brand-soft);color:var(--brand-dark)}}@media(max-width:620px){.section-heading,.list-header,.panel-title-row{align-items:stretch}.section-heading h1{font-size:24px}.two-column,.field-row,.stats-grid,.bid-meta-grid,.detail-meta-grid{grid-template-columns:1fr}.metric-strip{gap:7px}.metric-card{padding:10px 8px}.metric-card span{font-size:10px}.metric-card strong{font-size:22px}.card-bottomline,.action-row{align-items:flex-start;flex-direction:column}.action-row .icon-button{width:100%}.ready-pill{max-width:160px;justify-content:center;overflow:hidden;text-overflow:ellipsis}}
