:root {
  --sidebar: 15.75rem;
  --navy: #121c2b;
  --ink: #172235;
  --muted: #69768a;
  --line: #dfe5ed;
  --wash: #f5f8fc;
  --blue: #0878f9;
  --blue-dark: #0568d7;
  --green: #13a94a;
  --amber: #ee9418;
  --red: #e93e3e;
  --cyan: #218fc6;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--wash);
  font-size: 100%;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html, body { margin: 0; min-width: 0; min-height: 100%; }
body { overflow-x: hidden; background: var(--wash); font-size: .875rem; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
button { color: inherit; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: .1875rem solid rgba(8,120,249,.22); outline-offset: .125rem; }
svg { display: block; width: 1.25rem; height: 1.25rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
[hidden] { display: none !important; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--sidebar) minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; z-index: 40; height: 100vh; display: flex; flex-direction: column; overflow-y: auto; background: #fff; border-right: .0625rem solid var(--line); }
.brand-lockup { position: relative; flex: 0 0 6.5rem; overflow: hidden; background: var(--navy); }
.brand-lockup img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.icon-button { width: 2.5rem; height: 2.5rem; display: grid; place-items: center; padding: 0; border: 0; border-radius: .5rem; background: transparent; }
.sidebar-close { display: none; position: absolute; top: .75rem; right: .75rem; color: white; background: rgba(0,0,0,.28); }

.primary-nav { padding: .875rem .625rem .35rem; }
.nav-item, .source-item, .settings-button { width: 100%; display: flex; align-items: center; gap: .75rem; border: 0; background: transparent; text-align: left; color: #344157; }
.nav-item { position: relative; min-height: 2.5rem; margin-bottom: .125rem; padding: 0 .75rem; border-radius: .45rem; font-size: .75rem; font-weight: 550; }
.nav-item svg, .source-item svg, .settings-button svg { flex: 0 0 auto; width: 1.1rem; height: 1.1rem; color: #66758a; }
.nav-item:hover, .source-item:hover, .settings-button:hover { background: #f3f7fb; color: var(--blue-dark); }
.nav-item.active { background: #eaf4ff; color: var(--blue-dark); font-weight: 700; }
.nav-item.active::before { content: ""; position: absolute; inset: .45rem auto .45rem -.625rem; width: .2rem; border-radius: 0 .2rem .2rem 0; background: var(--blue); }
.nav-item.active svg { color: var(--blue); }
.count-badge { margin-left: auto; min-width: 1.45rem; padding: .12rem .35rem; border-radius: 1rem; text-align: center; background: #edf1f6; color: #59677a; font-size: .65rem; }
.source-block { margin: .25rem .625rem 0; padding-top: .8rem; border-top: .0625rem solid var(--line); }
.source-heading { padding: 0 .75rem .5rem; color: #758297; font-size: .625rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.source-item { min-height: 2.15rem; padding: 0 .75rem; border-radius: .4rem; font-size: .72rem; }
.source-item.active { color: var(--blue-dark); background: #edf6ff; font-weight: 700; }
.settings-button { min-height: 3.5rem; margin-top: auto; padding: 0 1.3rem; border-top: .0625rem solid var(--line); font-size: .75rem; }
.mobile-overlay { display: none; position: fixed; inset: 0; z-index: 35; background: rgba(10,22,38,.48); }

.main-panel { min-width: 0; }
.topbar { position: sticky; top: 0; z-index: 30; min-height: 4.8rem; padding: .7rem clamp(1rem, 2vw, 2rem); display: grid; grid-template-columns: minmax(19rem,1fr) minmax(18rem,30rem) auto auto; gap: 1rem; align-items: center; background: rgba(255,255,255,.97); border-bottom: .0625rem solid var(--line); }
.mobile-menu { display: none; }
.title-line { display: flex; align-items: center; gap: .42rem; font-size: clamp(1rem, 1.35vw, 1.3rem); line-height: 1.15; font-weight: 780; letter-spacing: -.02em; text-transform: uppercase; }
.title-info { flex: 0 0 1rem; width: 1rem; height: 1rem; color: #748196; }
.subtitle { margin-top: .3rem; color: #7a8798; font-size: .72rem; }
.global-search { height: 2.55rem; display: grid; grid-template-columns: 1.6rem 1fr auto; align-items: center; padding: 0 .7rem; border: .0625rem solid #d4dce7; border-radius: .55rem; background: #fff; box-shadow: 0 .0625rem .25rem rgba(20,35,54,.03); }
.global-search:focus-within { border-color: #7cb7fa; box-shadow: 0 0 0 .2rem rgba(8,120,249,.1); }
.global-search svg { width: 1rem; height: 1rem; color: #6f7e91; }
.global-search input { min-width: 0; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: .78rem; }
.global-search input::placeholder { color: #8793a4; }
kbd { padding: .2rem .4rem; border-radius: .3rem; background: #eef2f6; color: #697689; font: .62rem inherit; }
.menu-anchor { position: relative; }
.notification-button { position: relative; color: #364559; }
.notification-button span { position: absolute; top: -.25rem; right: -.2rem; min-width: 1.2rem; height: 1.2rem; padding: 0 .25rem; display: grid; place-items: center; border: .12rem solid #fff; border-radius: 1rem; background: #e8242b; color: white; font-size: .58rem; font-weight: 800; }
.user-profile { min-width: 11.5rem; display: grid; grid-template-columns: 2.6rem 1fr 1rem; gap: .7rem; align-items: center; padding: 0; border: 0; background: transparent; text-align: left; }
.avatar { width: 2.6rem; height: 2.6rem; display: grid; place-items: center; border: .125rem solid #e1e6ec; border-radius: 50%; background: linear-gradient(145deg,#365b72,#b18d77); color: #fff; font-size: .72rem; font-weight: 800; }
.profile-copy strong, .profile-copy small { display: block; white-space: nowrap; }
.profile-copy strong { font-size: .78rem; }
.profile-copy small { margin-top: .12rem; color: #7d8998; font-size: .65rem; }
.user-profile > svg { width: 1rem; height: 1rem; }

.popover { position: absolute; z-index: 60; top: calc(100% + .5rem); right: 0; min-width: 15rem; padding: .5rem; border: .0625rem solid var(--line); border-radius: .65rem; background: #fff; box-shadow: 0 1rem 2.5rem rgba(13,29,49,.18); }
.popover header { padding: .55rem .6rem .7rem; border-bottom: .0625rem solid var(--line); }
.popover header strong, .popover header span { display: block; }
.popover header span { margin-top: .2rem; color: var(--muted); font-size: .7rem; }
.notification-popover { width: min(24rem, calc(100vw - 2rem)); }
.notification-item { width: 100%; display: grid; grid-template-columns: 2rem 1fr; gap: .65rem; align-items: start; padding: .7rem .6rem; border: 0; border-bottom: .0625rem solid #edf1f5; background: transparent; text-align: left; }
.notification-item:last-child { border-bottom: 0; }
.notification-item:hover { background: #f6f9fc; }
.notification-item svg { width: 1.25rem; color: var(--amber); }
.notification-item strong { display: block; font-size: .74rem; }
.notification-item span { display: block; margin-top: .18rem; color: var(--muted); font-size: .66rem; }
.profile-popover { min-width: 13rem; }
.profile-popover strong, .profile-popover span { display: block; padding: .25rem .4rem; }
.profile-popover span { color: var(--muted); font-size: .68rem; }
.profile-popover button, .saved-views-popover button { width: 100%; padding: .6rem .55rem; border: 0; border-radius: .4rem; background: transparent; text-align: left; font-size: .72rem; }
.profile-popover button:hover, .saved-views-popover button:hover { background: #f1f6fb; color: var(--blue-dark); }

.content { padding: .7rem clamp(1rem, 2vw, 2rem) 1rem; }
.action-bar { min-height: 2.6rem; display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: .45rem; }
.last-updated { color: #8491a2; font-size: .68rem; }
.action-buttons { display: flex; gap: .55rem; }
.button { min-height: 2.35rem; padding: 0 .9rem; display: inline-flex; align-items: center; justify-content: center; gap: .45rem; border: .0625rem solid #d4dce6; border-radius: .45rem; background: #fff; font-size: .72rem; font-weight: 700; box-shadow: 0 .0625rem .15rem rgba(20,35,54,.04); }
.button svg { width: 1rem; height: 1rem; }
.button.primary { border-color: var(--blue); background: var(--blue); color: white; }
.button.primary:hover { background: var(--blue-dark); }
.button.secondary:hover { background: #f5f8fb; }
.button.danger { border-color: #efb9b9; background: #fff7f7; color: #c52d2d; }
.button.hidden { display: none; }

.metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: clamp(.6rem,1.2vw,1rem); margin-bottom: 1rem; }
.metric-card { min-height: 7.25rem; display: flex; align-items: flex-start; justify-content: space-between; padding: 1.1rem; border: .0625rem solid var(--line); border-radius: .6rem; background: #fff; text-align: left; box-shadow: 0 .15rem .5rem rgba(17,31,49,.025); transition: border-color .16s, box-shadow .16s, transform .16s; }
.metric-card:hover { transform: translateY(-.08rem); border-color: #a8ccef; box-shadow: 0 .45rem 1rem rgba(20,54,91,.08); }
.metric-card.active { border-color: var(--blue); background: linear-gradient(180deg,#fff,#f5faff); box-shadow: 0 0 0 .18rem rgba(8,120,249,.11); }
.metric-copy { display: block; }
.metric-label { display: block; margin-bottom: .55rem; color: #47546a; font-size: .7rem; font-weight: 700; }
.metric-card strong { display: block; font-size: clamp(1.65rem,2.2vw,2.15rem); line-height: 1; letter-spacing: -.035em; }
.metric-card small { display: block; margin-top: .7rem; color: #758297; font-size: .65rem; }
.metric-icon { width: 2.4rem; height: 2.4rem; display: grid; place-items: center; border-radius: 50%; background: #eaf4ff; color: var(--blue); }
.metric-icon svg { width: 1.15rem; height: 1.15rem; }
.metric-seven .metric-icon { background: #fff0ef; color: var(--red); }
.metric-thirty .metric-icon { background: #fff3df; color: var(--amber); }
.metric-submitted .metric-icon { background: #e8f8fb; color: var(--cyan); }

.opportunity-board { position: relative; overflow: visible; border: .0625rem solid var(--line); border-radius: .6rem; background: #fff; box-shadow: 0 .15rem .5rem rgba(17,31,49,.025); }
.view-state { min-height: 2.5rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: .45rem .8rem; border-bottom: .0625rem solid #cfe2f8; background: #f1f7fe; color: #245b91; font-size: .72rem; font-weight: 650; }
.view-state button { display: inline-flex; align-items: center; gap: .3rem; border: 0; background: transparent; color: var(--blue-dark); font-size: .68rem; font-weight: 700; }
.view-state svg { width: .9rem; height: .9rem; }
.board-toolbar { min-height: 3.6rem; display: flex; align-items: center; justify-content: space-between; gap: .8rem; padding: 0 .7rem; border-bottom: .0625rem solid var(--line); }
.tabs { min-width: 0; min-height: 3.55rem; display: flex; overflow-x: auto; scrollbar-width: none; }
.tabs::-webkit-scrollbar { display: none; }
.tab-button { position: relative; flex: 0 0 auto; padding: 0 .85rem; border: 0; background: transparent; color: #3c485c; white-space: nowrap; font-size: .7rem; font-weight: 650; }
.tab-button:hover { color: var(--blue); }
.tab-button.active { color: var(--blue-dark); }
.tab-button.active::after { content:""; position:absolute; left:.65rem; right:.65rem; bottom:.4rem; height:.13rem; border-radius:.13rem; background:var(--blue); }
.filters { display: flex; align-items: center; gap: .5rem; }
.filter-button, .filters > select { min-height: 2.2rem; padding: 0 .7rem; border: .0625rem solid var(--line); border-radius: .42rem; background: #fff; color: #3f4b5e; font-size: .68rem; font-weight: 620; }
.filter-button { display: inline-flex; align-items: center; gap: .4rem; }
.filter-button svg { width: .95rem; height: .95rem; }
.filter-button i { min-width: 1.05rem; padding: .1rem .25rem; border-radius: 1rem; background: var(--blue); color: #fff; font-size: .58rem; font-style: normal; text-align: center; }
.filters > select { max-width: 12rem; }
.filter-popover { width: 17rem; padding: .8rem; }
.filter-popover label { display: flex; flex-direction: column; gap: .35rem; margin-bottom: .75rem; color: #4b586b; font-size: .7rem; font-weight: 650; }
.filter-popover select { width: 100%; min-height: 2.3rem; padding: 0 .55rem; border: .0625rem solid var(--line); border-radius: .4rem; background: #fff; color: var(--ink); }
.text-button { padding: .35rem 0; border: 0; background: transparent; color: var(--blue-dark); font-size: .7rem; font-weight: 700; }
.saved-views-popover { width: 13rem; }
.bulk-bar { min-height: 2.8rem; display: flex; align-items: center; gap: .7rem; padding: .45rem .9rem; border-bottom: .0625rem solid #bdd8f6; background: #eaf4ff; color: #255988; font-size: .7rem; }
.bulk-bar button { display: inline-flex; align-items: center; gap: .35rem; padding: .35rem .55rem; border: .0625rem solid #b5d4f5; border-radius: .35rem; background: #fff; color: #25639f; font-size: .65rem; font-weight: 700; }
.bulk-bar svg { width: .85rem; height: .85rem; }

.table-scroller { overflow: auto; border-radius: 0 0 .6rem .6rem; }
table { width: 100%; min-width: 79.5rem; border-collapse: collapse; table-layout: fixed; }
thead { background: #f8fafc; }
th { height: 2.65rem; padding: 0 .65rem; border-right: .0625rem solid #edf0f4; border-bottom: .0625rem solid var(--line); color: #5a6678; text-align: left; font-size: .68rem; font-weight: 780; text-transform: uppercase; letter-spacing: .02em; }
th:nth-child(1){width:2.5rem} th:nth-child(2){width:5.5rem} th:nth-child(3){width:7.5rem} th:nth-child(4){width:9rem} th:nth-child(5){width:7.5rem} th:nth-child(6){width:15rem} th:nth-child(7){width:8.5rem} th:nth-child(8),th:nth-child(9){width:6rem} th:nth-child(10){width:4.5rem;text-align:center} th:nth-child(11){width:5rem;text-align:center} th:nth-child(12){width:2.5rem}
th:last-child,td:last-child{border-right:0}
td { height: 4.65rem; padding: .55rem .65rem; border-right: .0625rem solid #edf0f4; border-bottom: .0625rem solid var(--line); vertical-align: middle; color: #374256; font-size: .74rem; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: #fbfdff; }
tbody tr.selected { background: #eff7ff; }
body.compact td { height: 3.85rem; padding-block: .35rem; }
input[type=checkbox] { width: .95rem; height: .95rem; accent-color: var(--blue); }
.type-pill { display: inline-flex; min-width: 0; max-width: 100%; min-height: 1.45rem; padding: .18rem .4rem; align-items: center; justify-content: center; border-radius: 1rem; background: var(--blue); color: #fff; font-size: .65rem; font-weight: 760; line-height: 1.15; text-align: center; white-space: normal; overflow-wrap:normal; }
.type-pill.rfi{background:#6d2bd3}.type-pill.demo{background:#078d87}.type-pill.white-paper{background:#946221}.type-pill.partnership{background:#596980}.type-pill.pilot{background:#1777b9}.type-pill.sbir{background:#cc5d1b}.type-pill.meeting{background:#6860aa}
.due-date strong { display:block; margin-bottom:.2rem; color:#176fc9; font-size:.73rem; }.due-date.urgent strong{color:#df3b36}.due-date.soon strong{color:#dd7715}.due-date span{color:#778395;font-size:.65rem}
.agency-cell { min-width:0; display:flex; flex-direction:column; align-items:flex-start; gap:.12rem; }
.agency-code { position:relative; display:inline-block; padding-bottom:.25rem; color:#086dcc; font-size:1rem; font-weight:850; line-height:1; letter-spacing:.025em; }
.agency-code::after { content:""; position:absolute; left:0; bottom:.06rem; width:1.4rem; height:.12rem; border-radius:1rem; background:linear-gradient(90deg,#0878f9,#b88a58); }
.agency-name { display:block; max-width:100%; color:#354156; font-size:.72rem; font-weight:670; line-height:1.18; overflow-wrap:anywhere; }
.agency-source { display:block; max-width:100%; color:#8a96a6; font-size:.66rem; line-height:1.2; overflow-wrap:anywhere; }
.item-number{color:#4e5b70;font-size:.69rem}.item-title{color:#253146;font-size:.73rem;font-weight:680;line-height:1.35}.item-title button{display:block;margin:.2rem 0 0;padding:0;border:0;background:none;color:var(--blue-dark);font-size:.67rem;font-weight:700;text-align:left}.item-title .title-open{font-size:.73rem;color:#253146}
.status-control { position:relative; }
.status-trigger { width:100%; min-height:1.9rem; display:flex; align-items:center; justify-content:space-between; gap:.35rem; padding:.28rem .5rem; border:.0625rem solid #dce4ec; border-radius:.38rem; background:#f7f9fb; color:#4e5a6f; font-size:.68rem; text-align:left; }
.status-trigger svg{width:.8rem;height:.8rem}.status-trigger.pursuing,.status-trigger.capture{border-color:#f1cf9d;background:#fff8ee;color:#c87009}.status-trigger.qualified,.status-trigger.ready-for-demo,.status-trigger.submitted{border-color:#c6e8cf;background:#f2fbf5;color:#14883d}.status-trigger.ai-review,.status-trigger.drafting{border-color:#d1e2fa;background:#f2f7fe;color:#3471bb}.status-trigger.go-no-go-review{border-color:#f2d1aa;background:#fff7ee;color:#c96d0b}
.status-menu { position:fixed; z-index:100; width:11.5rem; max-height:min(22rem,70vh); overflow:auto; padding:.3rem; border:.0625rem solid #cfd8e4; border-radius:.5rem; background:#fff; box-shadow:0 1rem 2.5rem rgba(13,29,49,.22); }
.status-menu button { width:100%; display:flex; align-items:center; justify-content:space-between; gap:.5rem; padding:.52rem .55rem; border:0;border-radius:.35rem;background:transparent;text-align:left;font-size:.67rem; }
.status-menu button:hover,.status-menu button.active{background:#edf5ff;color:var(--blue-dark)}.status-menu svg{width:.8rem;height:.8rem}
.money-cell{color:#465266;font-size:.63rem;line-height:1.4}.money-cell span{display:block;color:#8590a0;font-size:.55rem}.fit-score{width:2.2rem;height:2.2rem;margin:auto;display:grid;place-items:center;border:.13rem solid #30b54f;border-radius:50%;font-size:.8rem;font-weight:750}.fit-score.score-3{border-color:#f0a42d}.fit-score.score-2,.fit-score.score-1{border-color:#ef4a43}.row-menu{width:1.5rem;height:2.2rem;border:0;border-radius:.4rem;background:transparent;color:#465469}.row-menu:hover{background:#edf4fb}.empty-row td{height:13rem;text-align:center;color:#7d8998;font-size:.8rem}
.document-count { min-width:2.8rem; min-height:2.75rem; margin:auto; display:inline-flex; align-items:center; justify-content:center; gap:.3rem; padding:.35rem .55rem; border:.0625rem solid #cfe0f3; border-radius:1.4rem; background:#f4f9ff; color:var(--blue-dark); font-size:.72rem; font-weight:780; line-height:1; }
.document-count:hover { border-color:#77afea; background:#e7f3ff; }
.document-count:focus-visible { border-color:#0878f9; outline:.1875rem solid rgba(8,120,249,.22); outline-offset:.125rem; }
.document-count svg { flex:0 0 auto; width:.9rem; height:.9rem; }
.document-count-label { display:none; }
.document-count-value { font:inherit; }
.table-footer { min-height:3.3rem;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:0 .9rem;border-top:.0625rem solid var(--line);color:#6e7a8b;font-size:.65rem}.pagination,#pageButtons{display:flex;align-items:center;gap:.35rem}.pagination button,.pagination select{min-width:2rem;height:2rem;display:grid;place-items:center;border:.0625rem solid var(--line);border-radius:.4rem;background:#fff;color:#657286;font-size:.65rem}.pagination button svg{width:.9rem;height:.9rem}.pagination button.active{border-color:var(--blue);background:var(--blue);color:#fff}.pagination button:disabled{opacity:.35;cursor:default}.pagination select{width:5rem;margin-left:.35rem}.page-ellipsis{padding:.35rem}
.legend { min-height:3rem;display:flex;align-items:center;justify-content:center;gap:1.25rem;overflow:auto;color:#687486;font-size:.6rem}.legend span{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.legend .dot{width:.5rem;height:.5rem;border-radius:50%}.dot.green{background:var(--green)}.dot.amber{background:var(--amber)}.dot.red{background:var(--red)}.dot.blue{background:#2e9ce4}.legend-break{margin-left:.7rem}.ring{width:.85rem;height:.85rem;border:.13rem solid;border-radius:50%;box-shadow:inset 0 0 0 .17rem #fff}.ring.stated{border-color:#31b557;background:#31b557}.ring.forecast{border-color:#4b8ff4;background:#4b8ff4}.ring.unknown{border-color:#cbd2dc;background:#cbd2dc}

dialog { width:min(47rem,calc(100vw - 2rem)); height:min(52rem,calc(100dvh - 2rem)); max-height:calc(100dvh - 2rem); padding:0;border:0;border-radius:.75rem;color:var(--ink);box-shadow:0 1.6rem 5rem rgba(10,24,43,.28)}dialog::backdrop{background:rgba(12,25,43,.48);backdrop-filter:blur(.12rem)}#opportunityForm{height:100%;display:block;padding:0;overflow:auto}.dialog-header{position:sticky;top:0;z-index:4;min-height:5rem;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.3rem;border-bottom:.0625rem solid var(--line);background:#fff}.dialog-header span{color:var(--blue-dark);font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.dialog-header h2{margin:.25rem 0 0;font-size:1.25rem;max-width:38rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-close{background:#f1f4f7;color:#647187}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1rem;padding:1.2rem 1.3rem}.form-grid label{display:flex;flex-direction:column;gap:.4rem;color:#4d596c;font-size:.68rem;font-weight:680}.form-grid .span-two{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.settings-body select{width:100%;min-height:2.45rem;border:.0625rem solid #d3dce7;border-radius:.45rem;padding:.55rem .65rem;outline:0;color:var(--ink);background:#fff;font-size:.75rem;font-weight:450}.form-grid textarea{resize:vertical}.form-grid .checkbox-label{flex-direction:row;align-items:center}.form-grid .checkbox-label input{width:1rem;min-height:auto}.dialog-actions{position:sticky;bottom:0;z-index:4;min-height:4rem;display:flex;align-items:center;gap:.6rem;padding:0 1.3rem;border-top:.0625rem solid var(--line);background:#fbfcfd}.dialog-spacer{flex:1}.form-error{padding:0 1.3rem;color:var(--red);font-size:.7rem}.form-error:not(:empty){padding-bottom:.8rem}.settings-body{display:grid;gap:1rem;padding:1.3rem}.settings-body label{display:flex;flex-direction:column;gap:.4rem;font-size:.72rem;font-weight:650}.settings-dialog{width:min(30rem,calc(100vw - 2rem));height:auto}
.toast{position:fixed;right:1.5rem;bottom:1.4rem;z-index:120;max-width:min(22rem,calc(100vw - 2rem));padding:.8rem 1rem;border-radius:.5rem;background:var(--navy);color:#fff;box-shadow:0 .8rem 2rem rgba(13,28,48,.28);opacity:0;pointer-events:none;transform:translateY(.6rem);transition:.2s;font-size:.72rem}.toast.show{opacity:1;transform:none}
.resource-workspace{padding:1rem 1.3rem 1.2rem;border-top:.0625rem solid var(--line);background:#f8fafc}.resource-workspace>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.resource-workspace>header span{color:var(--blue-dark);font-size:.6rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.resource-workspace>header h3{margin:.18rem 0 0;font-size:.92rem}.resource-workspace>header strong{color:var(--muted);font-size:.65rem}.resource-composer-tabs{display:flex;gap:.35rem;margin-bottom:.65rem;overflow-x:auto}.resource-composer-tabs button{flex:0 0 auto;padding:.45rem .65rem;border:.0625rem solid var(--line);border-radius:.4rem;background:#fff;font-size:.66rem;font-weight:680}.resource-composer-tabs button.active{border-color:#8bbdf4;background:#eaf4ff;color:var(--blue-dark)}.resource-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:end;margin-bottom:.9rem}.resource-composer textarea{grid-row:1/3}.resource-composer input,.resource-composer textarea{width:100%;min-height:2.35rem;padding:.55rem .65rem;border:.0625rem solid #d3dce7;border-radius:.42rem;background:#fff;color:var(--ink);font-size:.72rem;resize:vertical}.file-picker{min-height:2.6rem;display:flex;align-items:center;padding:.45rem .6rem;border:.0625rem dashed #aab9ca;border-radius:.42rem;background:#fff}.file-picker input{border:0;min-height:auto;padding:0}.file-picker span{display:none}.resource-list{display:grid;gap:.45rem}.resource-empty{padding:.8rem;border:.0625rem dashed #cad3df;border-radius:.45rem;color:var(--muted);text-align:center;font-size:.68rem}.resource-item{display:grid;grid-template-columns:1.8rem minmax(0,1fr) auto;gap:.55rem;align-items:start;padding:.65rem;border:.0625rem solid #e0e6ed;border-radius:.45rem;background:#fff}.resource-kind{width:1.8rem;height:1.8rem;display:grid;place-items:center;border-radius:.38rem;background:#edf5ff;color:var(--blue-dark);font-size:.55rem;font-weight:800;text-transform:uppercase}.resource-item strong,.resource-item span{display:block}.resource-item strong{font-size:.68rem}.resource-item span{margin-top:.18rem;color:var(--muted);font-size:.6rem;line-height:1.4;overflow-wrap:anywhere}.resource-item a{color:var(--blue-dark);text-decoration:none}.resource-item a:hover{text-decoration:underline}.resource-delete{width:1.8rem;height:1.8rem;display:grid;place-items:center;border:0;border-radius:.35rem;background:transparent;color:#8b6370}.resource-delete:hover{background:#fff0f0;color:#c72e2e}.resource-delete svg{width:.85rem;height:.85rem}

@media (max-width: 80rem) {
  :root { --sidebar: 13.75rem; }
  .topbar { grid-template-columns:minmax(15rem,1fr) minmax(16rem,24rem) auto auto; gap:.65rem; }
  .user-profile { min-width: 2.7rem; grid-template-columns:2.6rem; }
  .profile-copy,.user-profile>svg { display:none; }
  .metric-card { padding:.9rem; }
  .filters>select { max-width:9rem; }
}

@media (max-width: 64rem) {
  .app-shell { grid-template-columns:1fr; }
  .sidebar { position:fixed; left:0; top:0; width:min(18rem,85vw); transform:translateX(-105%); transition:transform .2s ease; box-shadow:1rem 0 2.5rem rgba(8,20,36,.22); }
  body.nav-open .sidebar { transform:translateX(0); }
  body.nav-open .mobile-overlay { display:block; }
  .sidebar-close,.mobile-menu { display:grid; }
  .topbar { grid-template-columns:2.5rem minmax(0,1fr) auto auto; }
  .global-search { grid-column:1/-1; grid-row:2; }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .board-toolbar { align-items:flex-start; flex-direction:column; padding:.35rem .7rem .7rem; }
  .tabs { width:100%; min-height:3rem; }
  .filters { width:100%; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
  .filter-button,.filters>select { width:100%; max-width:none; min-width:0; }
}

@media (max-width: 47rem) {
  .table-scroller { overflow:visible; }
  table,thead,tbody,tr,td { display:block; min-width:0; width:100%; }
  thead { position:absolute; width:.0625rem; height:.0625rem; overflow:hidden; clip:rect(0 0 0 0); }
  tbody { padding:.2rem .55rem .65rem; }
  tbody tr { position:relative; margin:.65rem 0; padding:.8rem .8rem 3.35rem 3rem; border:.0625rem solid var(--line); border-radius:.65rem; background:#fff; box-shadow:0 .15rem .5rem rgba(17,31,49,.035); }
  tbody tr.selected { border-color:#7cb7fa; background:#f5faff; }
  td { min-height:0; height:auto; padding:.2rem 0; border:0; font-size:.78rem; }
  td:nth-child(1){position:absolute;left:.85rem;top:.95rem;width:auto}td:nth-child(2){padding-right:2.2rem}td:nth-child(3){margin:.45rem 0}.agency-cell{grid-template-columns:1.8rem 1fr}.agency-mark{width:1.8rem;height:1.8rem}td:nth-child(5)::before{content:"Item ";color:var(--muted);font-size:.72rem}td:nth-child(6){margin:.45rem 0;font-size:.8rem}td:nth-child(7){margin-top:.6rem}.status-trigger{width:100%;min-height:2.1rem}td:nth-child(8),td:nth-child(9){display:inline-block;width:49%;padding-top:.55rem}.money-cell::before{display:block;color:var(--muted);font-size:.72rem}.money-cell:nth-child(8)::before{content:"Minimum"}.money-cell:nth-child(9)::before{content:"Maximum"}td:nth-child(10){position:absolute;right:.8rem;top:.7rem;left:auto;width:auto}.fit-score{width:2rem;height:2rem;font-size:.75rem}td:nth-child(11){position:absolute;right:3rem;top:auto;bottom:.55rem;left:auto;width:auto}td:nth-child(12){position:absolute;right:.55rem;bottom:.55rem;left:auto;width:auto}.empty-row{padding:1rem!important}.empty-row td{position:static;width:100%;height:auto}
  .document-count { min-width:4.15rem; min-height:2.2rem; padding:.35rem .55rem; border-radius:.5rem; background:#eef6ff; }
  .document-count-label { display:inline; font-size:.68rem; font-weight:720; }
  .table-footer { min-height:4.5rem; align-items:flex-start; flex-direction:column; padding:.75rem; }
  .pagination { width:100%; justify-content:space-between; }
  .page-ellipsis { display:none; }
  .legend { justify-content:flex-start; padding:.4rem; }
}

.login-page { min-height:100dvh; display:grid; place-items:center; padding:clamp(1rem,4vw,3rem); background:#0f1c2c; }
.login-shell { width:min(68rem,100%); min-height:38rem; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr); overflow:hidden; border:.0625rem solid rgba(255,255,255,.12); border-radius:1rem; background:#fff; box-shadow:0 2rem 6rem rgba(0,0,0,.32); }
.login-brand { position:relative; min-width:0; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(1.5rem,4vw,3.5rem); overflow:hidden; background:#121c2b; color:#fff; }
.login-brand::after { content:""; position:absolute; width:30rem; height:30rem; right:-12rem; bottom:-13rem; border-radius:50%; background:radial-gradient(circle at 40% 40%,rgba(20,122,230,.48),rgba(181,127,75,.2) 40%,transparent 70%); filter:blur(1rem); }
.login-brand img {
  position:relative;
  z-index:1;
  width:min(24rem,88%);
  height:auto;
  object-fit:contain;
  object-position:left center;
  mix-blend-mode:lighten;
  -webkit-mask-image:linear-gradient(to right,#000 0%,#000 76%,rgba(0,0,0,.72) 86%,transparent 100%),linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.66) 82%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,#000 0%,#000 76%,rgba(0,0,0,.72) 86%,transparent 100%),linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.66) 82%,transparent 100%);
  mask-composite:intersect;
}
.login-brand>div { position:relative; z-index:1; max-width:30rem; }
.login-brand span,.login-eyebrow { color:#79baff; font-size:.72rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.login-brand h1 { margin:.75rem 0; max-width:28rem; font-size:clamp(2rem,4vw,3.4rem); line-height:1.02; letter-spacing:-.04em; }
.login-brand p { max-width:28rem; margin:0; color:#b9c7d8; font-size:1rem; line-height:1.6; }
.login-card { display:flex; flex-direction:column; justify-content:center; padding:clamp(1.5rem,4vw,3.5rem); }
.login-card h2 { margin:.5rem 0 .45rem; font-size:1.65rem; letter-spacing:-.025em; }
.login-card>div>p { margin:0 0 1.7rem; color:#718095; line-height:1.5; }
.login-card form { display:grid; gap:1rem; }
.login-card label { display:grid; gap:.45rem; color:#445166; font-size:.78rem; font-weight:720; }
.login-card input { width:100%; min-height:2.75rem; padding:.65rem .75rem; border:.0625rem solid #cbd5e1; border-radius:.48rem; outline:0; color:#172235; background:#fff; }
.login-card input:focus { border-color:#0878f9; box-shadow:0 0 0 .2rem rgba(8,120,249,.12); }
.login-card .button { min-height:2.8rem; margin-top:.2rem; }
.login-card>small { display:block; margin-top:1.25rem; color:#8a96a6; font-size:.68rem; line-height:1.5; }
.login-error { min-height:1.1rem; margin:0; color:#c72e2e; font-size:.73rem; }

@media (max-width: 45rem) {
  .login-page { padding:0; background:#fff; }
  .login-shell { min-height:100dvh; grid-template-columns:1fr; border:0; border-radius:0; box-shadow:none; }
  .login-brand { min-height:14rem; padding:1.5rem; }
  .login-brand img { width:min(17rem,88%); }
  .login-brand h1 { margin:.55rem 0 0; font-size:1.8rem; }
  .login-brand p { display:none; }
  .login-card { justify-content:flex-start; padding:1.6rem 1.25rem 2rem; }
}

@media (max-width: 42rem) {
  body { background:#fff; }
  .topbar { min-height:auto; padding:.65rem .75rem; grid-template-columns:2.35rem minmax(0,1fr) 2.35rem; gap:.5rem; }
  .page-title { min-width:0; }
  .title-line { font-size:.88rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .subtitle { display:none; }
  .profile-anchor { display:none; }
  .notification-button { width:2.35rem;height:2.35rem; }
  .global-search { grid-column:1/-1; }
  .content { padding:.65rem .7rem 1rem; }
  .action-bar { align-items:stretch; flex-direction:column; }
  .last-updated { order:2; }
  .action-buttons { width:100%; }
  .action-buttons .button { flex:1; }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; }
  .metric-card { min-height:6.35rem; padding:.75rem; }
  .metric-label { margin-bottom:.35rem; font-size:.62rem; }
  .metric-card strong { font-size:1.55rem; }
  .metric-card small { margin-top:.5rem; font-size:.58rem; }
  .metric-icon { width:2rem;height:2rem; }
  .board-toolbar { padding:.25rem .55rem .6rem; }
  .tabs { margin:0 -.15rem; }
  .tab-button { padding:0 .65rem; font-size:.65rem; }
  .filters { grid-template-columns:1fr 1fr; }
  .filter-button,.filters>select { min-height:2.35rem; }
  .table-scroller { overflow:visible; }
  table,thead,tbody,tr,td { display:block; min-width:0; width:100%; }
  thead { position:absolute; width:.0625rem; height:.0625rem; overflow:hidden; clip:rect(0 0 0 0); }
  tbody { padding:.2rem .55rem .65rem; }
  tbody tr { position:relative; margin:.65rem 0; padding:.8rem .8rem .75rem 3rem; border:.0625rem solid var(--line); border-radius:.65rem; background:#fff; box-shadow:0 .15rem .5rem rgba(17,31,49,.035); }
  tbody tr.selected { border-color:#7cb7fa; background:#f5faff; }
  td { min-height:0; height:auto; padding:.2rem 0; border:0; font-size:.7rem; }
  td:nth-child(1){position:absolute;left:.85rem;top:.95rem}td:nth-child(2){padding-right:2.2rem}td:nth-child(3){margin:.45rem 0}.agency-cell{grid-template-columns:1.8rem 1fr}.agency-mark{width:1.8rem;height:1.8rem}td:nth-child(5)::before{content:"Item ";color:var(--muted);font-size:.62rem}td:nth-child(6){margin:.45rem 0;font-size:.75rem}td:nth-child(7){margin-top:.6rem}.status-trigger{width:100%;min-height:2.1rem}td:nth-child(8),td:nth-child(9){display:inline-block;width:49%;padding-top:.55rem}.money-cell::before{display:block;color:var(--muted);font-size:.58rem}.money-cell:nth-child(8)::before{content:"Minimum"}.money-cell:nth-child(9)::before{content:"Maximum"}td:nth-child(10){position:absolute;right:.8rem;top:.7rem}.fit-score{width:2rem;height:2rem;font-size:.7rem}td:nth-child(11){position:absolute;right:.65rem;top:3.15rem}td:nth-child(12){position:absolute;right:.55rem;bottom:.55rem}.empty-row{padding:1rem!important}.empty-row td{height:auto}
  .table-footer { min-height:4.5rem; align-items:flex-start; flex-direction:column; padding:.75rem; }
  .pagination { width:100%; justify-content:space-between; }
  .page-ellipsis { display:none; }
  .legend { justify-content:flex-start; padding:.4rem; }
  .form-grid { grid-template-columns:1fr; max-height:68dvh; }
  .form-grid .span-two { grid-column:auto; }
  .dialog-actions { padding:.55rem .8rem; flex-wrap:wrap; }
  .dialog-actions .button { flex:1; }
  .dialog-spacer { display:none; }
  .toast { left:1rem; right:1rem; bottom:1rem; max-width:none; }
  .resource-workspace{padding:.9rem}.resource-composer{grid-template-columns:1fr}.resource-composer textarea{grid-row:auto}.resource-composer .button{width:100%}
}

@media (max-width: 25rem) {
  .metric-grid { grid-template-columns:1fr; }
  .filters { grid-template-columns:1fr; }
}

/* Readability and resilient responsive overrides. */
.brand-lockup img { object-fit: contain; }
.nav-item { font-size: .8rem; }
.source-item, .settings-button { font-size: .78rem; }
.subtitle, .last-updated { font-size: .76rem; }
.metric-label { font-size: .8rem; }
.metric-card small { font-size: .75rem; line-height: 1.35; }
.button, .tab-button, .filter-button, .filters > select { font-size: .76rem; }
.view-state, .bulk-bar { font-size: .76rem; }
th { font-size: .75rem; }
td { font-size: .78rem; }
.due-date span, .item-number, .item-title button, .status-trigger, .status-menu button, .money-cell { font-size: .75rem; }
.due-date strong, .item-title, .item-title .title-open { font-size: .78rem; }
.table-footer, .pagination button, .pagination select, .legend { font-size: .72rem; }
.row-menu { display: grid; place-items: center; }
.row-menu svg { width: 1.15rem; height: 1.15rem; }

dialog { overflow: hidden; }
#opportunityForm { width: 100%; min-width: 0; overflow-x: hidden; }
#opportunityForm > *, .dialog-header > div, .form-grid > *, .resource-workspace > * { min-width: 0; }
.dialog-header h2 { max-width: 100%; }
.form-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.form-grid label, .settings-body label { font-size: .78rem; }
.form-grid input, .form-grid select, .form-grid textarea, .settings-body select, .resource-composer input, .resource-composer textarea { min-width: 0; font-size: .8rem; }
.resource-workspace > header span, .resource-workspace > header strong, .resource-composer-tabs button, .resource-empty, .resource-item strong, .resource-item span { font-size: .72rem; }
.file-picker input { min-width: 0; max-width: 100%; }
.field-help { color:#8190a2; font-size:.68rem; font-weight:500; line-height:1.35; }
.owner-picker { position:relative; min-width:0; margin:0; padding:.9rem; border:.0625rem solid #d8e0e9; border-radius:.55rem; background:#f9fbfd; }
.owner-picker legend { padding:0 .35rem; color:#4d596c; font-size:.78rem; font-weight:720; }
.owner-picker-actions { position:absolute; top:-.1rem; right:.65rem; display:flex; gap:.25rem; }
.owner-picker-actions button { padding:.25rem .4rem; border:0; background:transparent; color:var(--blue-dark); font-size:.68rem; font-weight:700; }
.owner-options { display:flex; flex-wrap:wrap; gap:.4rem; }
.owner-option { min-height:2rem; display:inline-flex; align-items:center; gap:.3rem; padding:.35rem .6rem; border:.0625rem solid #d4dde7; border-radius:2rem; background:#fff; color:#465368; font-size:.74rem; font-weight:650; }
.owner-option:hover { border-color:#8bbcf4; background:#f5faff; }
.owner-option.selected { border-color:#72afeF; background:#eaf4ff; color:#0568d7; box-shadow:inset 0 0 0 .0625rem #c7e1ff; }
.owner-option svg { width:.75rem; height:.75rem; }
.other-owner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.45rem; margin-top:.65rem; }
.other-owner input { min-width:0; min-height:2.35rem; padding:.5rem .65rem; border:.0625rem solid #d3dce7; border-radius:.42rem; background:#fff; }
.other-owner button { padding:0 .7rem; border:.0625rem solid #bbd7f5; border-radius:.42rem; background:#fff; color:var(--blue-dark); font-size:.72rem; font-weight:700; }
.owner-picker>.field-help { display:block; margin-top:.45rem; }
.form-field { position:relative; min-width:0; display:flex; flex-direction:column; gap:.4rem; }
.form-field>label { display:block; min-height:.95rem; }
.optional-label { margin-left:.25rem; color:#8a96a6; font-size:.68rem; font-weight:550; }
.combo-field.open { z-index:20; }
.combo-input { position:relative; min-width:0; }
.form-grid .combo-input input { padding-right:2.65rem; }
.combo-toggle { position:absolute; top:.25rem; right:.25rem; width:2rem; height:calc(100% - .5rem); display:grid; place-items:center; border:0; border-left:.0625rem solid #e5eaf0; border-radius:0 .32rem .32rem 0; background:#f9fbfd; color:#526176; }
.combo-toggle:hover,.combo-field.open .combo-toggle { background:#edf5ff; color:var(--blue-dark); }
.combo-toggle svg { width:.9rem; height:.9rem; transition:transform .15s ease; }
.combo-field.open .combo-toggle svg { transform:rotate(180deg); }
.combo-list { position:absolute; top:3.55rem; left:0; right:0; z-index:30; max-height:13.25rem; overflow-y:auto; overscroll-behavior:contain; padding:.3rem; border:.0625rem solid #bfcbd9; border-radius:.48rem; background:#fff; box-shadow:0 .8rem 2rem rgba(16,35,58,.2); }
.combo-list[hidden] { display:none; }
.combo-list [role=option] { width:100%; min-height:2.35rem; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:.12rem; padding:.42rem .55rem; border:0; border-radius:.32rem; background:#fff; color:#344158; text-align:left; }
.combo-list [role=option]:hover,.combo-list [role=option]:focus-visible { outline:0; background:#edf5ff; color:var(--blue-dark); }
.combo-list [role=option][aria-selected=true] { background:#e4f1ff; color:#0568d7; }
.combo-list strong { font-size:.76rem; line-height:1.2; }
.combo-list span { color:#7d8998; font-size:.68rem; line-height:1.25; }
.combo-empty { padding:.7rem .6rem; color:#748196; font-size:.72rem; line-height:1.35; }

.workspace-layout { min-width:0; display:grid; grid-template-columns:minmax(0,1fr); gap:.8rem; align-items:start; }
.workspace-layout>.opportunity-board { min-width:0; }

@media (max-width: 100rem) and (min-width: 42.01rem) {
  table { min-width: 61rem; }
  th:nth-child(8), th:nth-child(9), td:nth-child(8), td:nth-child(9) { display: none; }
  th:nth-child(4) { width: 8rem; }
  th:nth-child(5) { width: 7rem; }
  th:nth-child(6) { width: 14.5rem; }
}

@media (max-width: 80rem) and (min-width: 42.01rem) {
  table { min-width: 49rem; }
  th:nth-child(5), td:nth-child(5) { display: none; }
  th:nth-child(2) { width: 4.75rem; }
  th:nth-child(3) { width: 6.25rem; }
  th:nth-child(4) { width: 6.5rem; }
  th:nth-child(6) { width: 12rem; }
  th:nth-child(7) { width: 7rem; }
  th:nth-child(10) { width: 3.75rem; }
  th:nth-child(11) { width: 4.25rem; }
  th:nth-child(12) { width: 2rem; }
}

@media (max-width: 70rem) and (min-width: 42.01rem) {
  table { min-width: 42.5rem; }
  th:nth-child(4), td:nth-child(4) { display: none; }
  th:nth-child(2) { width: 4.5rem; }
  th:nth-child(3) { width: 6.25rem; }
  th:nth-child(6) { width: 12rem; }
  th:nth-child(7) { width: 7.25rem; }
  th:nth-child(10) { width: 3.75rem; }
  th:nth-child(11) { width: 4.25rem; }
  th:nth-child(12) { width: 2rem; }
}

@media (max-width: 64rem) {
  .brand-lockup { flex-basis: 7.4rem; }
}

@media (max-width: 42rem) {
  .metric-label, .metric-card small { font-size: .75rem; }
  .form-grid { grid-template-columns: minmax(0,1fr); max-height: none; }
  .resource-workspace, .dialog-actions { width: 100%; min-width: 0; }
  tbody tr { padding-right: 3.2rem; padding-bottom: 3.35rem; }
  td { font-size: .78rem; }
  td:nth-child(1), td:nth-child(10), td:nth-child(11), td:nth-child(12) { width: auto; }
  td:nth-child(10), td:nth-child(11), td:nth-child(12) { left: auto; }
  td:nth-child(11) { right:3rem; top:auto; bottom:.55rem; }
  .document-count { min-width:4.15rem; min-height:2.2rem; padding:.35rem .55rem; border-radius:.5rem; background:#eef6ff; }
  .document-count-label { display:inline; font-size:.68rem; font-weight:720; }
  .filters .menu-anchor:first-child .popover { left: 0; right: auto; max-width: calc(100vw - 2rem); }
  .owner-picker { padding:.75rem; }
  .owner-picker-actions { position:static; justify-content:flex-end; margin:-.25rem 0 .4rem; }
  .owner-option { min-height:2.15rem; }
  .other-owner { grid-template-columns:1fr; }
  .other-owner button { min-height:2.25rem; }
  .combo-list { top:3.65rem; max-height:11.8rem; }
}

@media (max-width: 25rem) {
  .metric-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .metric-icon { display: none; }
  .filters { grid-template-columns: 1fr; }
  #pageTitle { font-size: 0; }
  #pageTitle::before { content: "Opportunities"; font-size: .88rem; }
  .combo-field.open { z-index:auto; }
  .combo-list { position:static; margin-top:.3rem; max-height:10rem; box-shadow:0 .35rem 1rem rgba(16,35,58,.12); }
}

@media (max-width: 47rem) {
  .table-scroller { overflow: visible; }
  table, thead, tbody, tr, td { min-width: 0; width: 100%; }
}
