:root {
    color-scheme: light;
    --navy-950: #071f3d;
    --navy-900: #0a315d;
    --navy-800: #124a7c;
    --blue: #0f66d0;
    --blue-soft: #eaf3ff;
    --green: #12833f;
    --green-soft: #eaf7ef;
    --red: #c8151d;
    --red-soft: #fff0f0;
    --orange: #e27a00;
    --orange-soft: #fff6e8;
    --ink: #102a46;
    --text: #2a4058;
    --muted: #68798d;
    --line: #c9d5e2;
    --line-soft: #e4eaf1;
    --page: #eef3f8;
    --surface: #ffffff;
    --sidebar-width: 220px;
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; min-height: 100vh; background: var(--page); color: var(--text); font-family: "Segoe UI", Arial, Helvetica, sans-serif; font-size: 12px; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
a, button, input, select, textarea { transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #74aef2; outline-offset: 2px; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3 { color: var(--ink); letter-spacing: 0; }

.app-frame { min-height: 100vh; }
.sidebar {
    position: fixed; inset: 0 auto 0 0; z-index: 30; width: var(--sidebar-width); overflow-y: auto;
    background: #082f59; color: #fff; box-shadow: 3px 0 16px rgba(5, 30, 60, .14);
}
.sidebar-brand { display: flex; align-items: center; gap: 11px; height: 68px; padding: 12px 15px; border-bottom: 1px solid rgba(255,255,255,.14); background: #072744; color: #fff; text-decoration: none; }
.brand-symbol { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid rgba(255,255,255,.72); border-radius: 5px; background: rgba(255,255,255,.06); font-size: 23px; }
.sidebar-brand strong { display: block; font-size: 14px; color: #fff; }
.sidebar-brand small { display: block; margin-top: 3px; color: #d4e5f7; font-size: 11px; }
.side-nav { padding: 8px; }
.side-nav button, .side-nav a { position: relative; display: flex; align-items: center; gap: 10px; width: 100%; min-height: 37px; padding: 7px 9px; border: 0; border-radius: 4px; background: transparent; color: #f4f8fd; text-align: left; text-decoration: none; font-size: 11px; }
.side-nav button:hover, .side-nav a:hover { background: rgba(255,255,255,.09); }
.side-nav button.active, .side-nav a.active { background: #0f66d0; box-shadow: inset 3px 0 #9bc8ff; font-weight: 700; }
.side-nav button > span, .side-nav a > span { width: 17px; color: #d9eaff; text-align: center; font-size: 16px; }
.side-nav button b, .side-nav a b { margin-left: auto; min-width: 20px; padding: 2px 5px; border-radius: 8px; background: #ef7d00; color: #fff; text-align: center; font-size: 9px; }
.side-nav a:nth-child(2) b { background: #df2028; }
.sidebar-session { margin: 8px; padding: 10px; border: 1px solid rgba(255,255,255,.2); border-radius: 5px; color: #d7e8f9; }
.sidebar-session span, .sidebar-session small { display: block; font-size: 9px; }
.sidebar-session strong { display: block; margin: 5px 0; color: #fff; font-size: 14px; }
.nav-separator { display: block; height: 1px; margin: 6px 5px; background: rgba(255,255,255,.13); }
.quick-filters { margin: 5px 9px 12px; padding: 10px; border: 1px solid rgba(255,255,255,.23); border-radius: 6px; background: rgba(0, 18, 42, .16); }
.quick-filters h2 { margin-bottom: 9px; color: #fff; font-size: 11px; text-transform: uppercase; }
.quick-filters label { display: block; margin-top: 7px; color: #dceafa; font-size: 10px; }
.quick-filters input, .quick-filters select { width: 100%; height: 29px; margin-top: 4px; padding: 0 7px; border: 1px solid rgba(255,255,255,.25); border-radius: 3px; background: #082f5d; color: #fff; font-size: 10px; }
.quick-filters button { width: 100%; margin-top: 9px; padding: 7px; border: 0; background: transparent; color: #cfe2f8; font-size: 10px; }

.workspace { min-width: 0; margin-left: var(--sidebar-width); overflow-x: hidden; }
.page-header { position: sticky; top: 0; z-index: 20; display: grid; grid-template-columns: minmax(260px, 1fr) minmax(520px, 1.8fr) 175px; min-height: 74px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.97); box-shadow: 0 2px 8px rgba(16,42,70,.05); }
.page-heading { display: flex; align-items: center; gap: 10px; padding: 12px 18px; }
.page-heading h1 { font-size: 19px; }
.page-heading p { margin-top: 4px; color: var(--muted); font-size: 10px; }
.page-source-strip { display: grid; grid-template-columns: repeat(4, minmax(105px, 1fr)); border-inline: 1px solid var(--line); }
.source-chip { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 8px 10px; border-right: 1px solid var(--line-soft); color: var(--text); text-decoration: none; }
.source-chip:last-child { border-right: 0; }
.source-chip:hover { background: #f6f9fd; }
.source-chip b { color: var(--green); font-size: 10px; }
.source-chip.missing b { color: var(--orange); }
.source-chip.stale { background: var(--red-soft); }
.source-chip.stale b { color: var(--red); }
.source-chip span { overflow: hidden; margin-top: 4px; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.header-meta { display: flex; flex-direction: column; justify-content: center; padding: 10px 14px; }
.header-meta span { color: var(--muted); font-size: 8px; font-weight: 700; }
.header-meta strong { margin: 4px 0; color: var(--ink); font-size: 12px; }
.header-meta a { color: #075db9; font-size: 9px; text-decoration: none; }
.header-session-actions { display: flex; align-items: center; gap: 9px; }
.logout-form { margin: 0; }
.logout-form button { padding: 0; border: 0; background: transparent; color: #a82b24; font-size: 9px; }
.logout-form button:hover { color: var(--red); text-decoration: underline; }
.dashboard-header { display: grid; grid-template-columns: 290px minmax(620px, 1fr) 165px; align-items: stretch; min-height: 76px; background: #fff; border-bottom: 1px solid var(--line); }
.dashboard-title { display: flex; align-items: center; gap: 10px; padding: 14px 18px; }
.dashboard-title h1 { font-size: 20px; }
.dashboard-title p { margin-top: 5px; color: var(--muted); font-size: 11px; }
.sidebar-toggle { display: none; width: 34px; height: 34px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: var(--navy-900); }
.import-strip { display: grid; grid-template-columns: 125px repeat(4, minmax(135px, 1fr)) 92px; align-items: stretch; border-left: 1px solid var(--line); border-right: 1px solid var(--line); }
.phase-controls { display: flex; flex-direction: column; gap: 4px; justify-content: center; padding: 7px; border-right: 1px solid var(--line); background: #f5f8fc; }
.phase-controls select, .phase-controls input { width: 100%; height: 25px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--ink); font-size: 9px; }
.import-state { display: flex; align-items: flex-start; gap: 7px; min-width: 0; padding: 12px 10px; border-right: 1px solid var(--line); cursor: pointer; }
.import-state:hover { background: #f7faff; }
.import-state > span { color: var(--green); font-size: 12px; }
.import-state.missing > span { color: var(--orange); font-weight: 700; }
.import-state.inactive { opacity: .42; cursor: not-allowed; }
.import-state div { min-width: 0; }
.import-state strong { display: block; overflow: hidden; color: var(--ink); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.import-state small { display: block; margin-top: 5px; overflow: hidden; color: var(--muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.import-state input { display: none; }
.refresh-button { border: 0; background: var(--blue); color: #fff; font-size: 11px; font-weight: 700; }
.refresh-button:hover { background: #0956ad; }
.last-update { display: flex; flex-direction: column; justify-content: center; padding: 10px 14px; color: var(--muted); font-size: 9px; }
.last-update strong { margin: 4px 0; color: var(--ink); font-size: 10px; }

.auth-page { display: grid; min-height: 100vh; place-items: center; padding: 20px; background: #e8eef5; }
.auth-shell { width: min(420px, 100%); }
.auth-panel { overflow: hidden; border: 1px solid #b9c8d8; border-radius: 6px; background: #fff; box-shadow: 0 18px 44px rgba(16,42,70,.14); }
.auth-brand { display: flex; align-items: center; gap: 11px; min-height: 70px; padding: 14px 20px; background: #082f59; color: #fff; }
.auth-brand strong, .auth-brand small { display: block; color: #fff; }
.auth-brand strong { font-size: 14px; }
.auth-brand small { margin-top: 3px; color: #d4e5f7; font-size: 10px; }
.auth-content { padding: 27px 28px 30px; }
.auth-kicker { display: block; color: var(--blue); font-size: 9px; font-weight: 800; }
.auth-content h1 { margin-top: 6px; font-size: 22px; }
.auth-error { margin-top: 16px; padding: 10px 12px; border-left: 3px solid var(--red); background: var(--red-soft); color: #8f2020; font-size: 10px; line-height: 1.45; }
.auth-form { display: grid; gap: 15px; margin-top: 22px; }
.auth-form label { color: var(--ink); font-size: 10px; font-weight: 700; }
.auth-form input { width: 100%; height: 40px; margin-top: 6px; padding: 0 11px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--ink); }
.auth-form input:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(15,102,208,.1); }
.auth-form .primary-button { min-height: 40px; margin-top: 2px; }
.auth-panel footer { padding: 11px 20px; border-top: 1px solid var(--line-soft); background: #f6f8fb; color: var(--muted); font-size: 9px; text-align: center; }

@keyframes page-enter {
    from { opacity: 0; transform: translateY(5px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes surface-enter {
    from { opacity: 0; transform: translateY(3px); }
    to { opacity: 1; transform: translateY(0); }
}
main { padding: 15px 16px 28px; animation: page-enter .24s ease-out both; }
main > * { animation: surface-enter .3s ease-out both; }
main > *:nth-child(2) { animation-delay: .025s; }
main > *:nth-child(3) { animation-delay: .05s; }
main > *:nth-child(n+4) { animation-delay: .075s; }
.notice { margin-bottom: 8px; padding: 9px 12px; border: 1px solid; border-radius: 4px; }
.notice.success { border-color: #93d4a9; background: var(--green-soft); color: #176934; }
.notice.warning { border-color: #efbd7e; background: var(--orange-soft); color: #8b4b00; }
.view { display: none; }
.view.active { display: block; }

.metric-groups { display: grid; grid-template-columns: 1.25fr 1.08fr .95fr .95fr; gap: 8px; margin-bottom: 9px; }
.metric-group { overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: #fff; }
.metric-group > h2 { padding: 7px 11px; background: var(--navy-900); color: #fff; font-size: 11px; text-transform: uppercase; }
.activity-group > h2 { background: #074eae; }
.execution-group > h2 { background: #08783b; }
.risk-group > h2 { background: #c4141c; }
.stock-group > h2 { background: #df7b00; }
.metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(70px, 1fr)); min-height: 97px; }
.metric { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; padding: 9px 6px; border: 0; border-right: 1px solid var(--line-soft); background: #fff; color: var(--text); text-align: center; }
.metric { text-decoration: none; }
button.metric:hover { background: #f4f8fd; }
.metric:last-child { border-right: 0; }
.metric span { min-height: 25px; color: #455c75; font-size: 9px; line-height: 1.25; }
.metric strong { margin-top: 5px; color: #073a74; font-size: 21px; line-height: 1; white-space: nowrap; }
.execution-group .metric strong { color: #08783b; }
.risk-group .metric strong { color: #bc121a; }
.stock-group .metric strong { color: #b85f00; }
.control-command, .exception-kpis { display: grid; grid-template-columns: repeat(5, 1fr) auto; margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.control-command > div, .exception-kpis > div { padding: 9px 11px; border-right: 1px solid var(--line-soft); }
.control-command span, .exception-kpis span { display: block; color: var(--muted); font-size: 9px; }
.control-command strong, .exception-kpis strong { display: block; margin-top: 4px; color: var(--navy-900); font-size: 17px; }
.control-command .danger strong, .exception-kpis > div:nth-child(3) strong { color: var(--red); }
.control-command .warning strong, .exception-kpis > div:nth-child(4) strong { color: var(--orange); }
.control-command > a { display: grid; place-items: center; padding: 0 13px; background: var(--navy-900); color: #fff; font-size: 9px; font-weight: 700; text-decoration: none; }
.exception-kpis { grid-template-columns: repeat(4, 1fr); }
.last-update a { margin-top: 3px; color: #075db9; font-size: 9px; }
.baseline-panel { margin-bottom: 9px; border: 1px solid #9ebbd8; border-left: 4px solid var(--blue); background: #fff; }
.baseline-panel.missing { border-left-color: var(--orange); }
.baseline-head { display: flex; align-items: center; justify-content: space-between; padding: 8px 11px; border-bottom: 1px solid var(--line-soft); }
.baseline-head span { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.baseline-head h2 { margin-top: 2px; font-size: 12px; }
.baseline-head small { color: var(--muted); }
.baseline-metrics { display: grid; grid-template-columns: repeat(6, 1fr); }
.baseline-metrics div { padding: 8px 10px; border-right: 1px solid var(--line-soft); }
.baseline-metrics span { display: block; min-height: 22px; color: var(--muted); font-size: 9px; }
.baseline-metrics strong { display: block; margin-top: 3px; color: var(--navy-900); font-size: 18px; }
.baseline-panel details { border-top: 1px solid var(--line-soft); }
.baseline-panel summary { padding: 7px 11px; color: #075db9; cursor: pointer; font-size: 9px; }

.panel { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 6px; background: var(--surface); box-shadow: 0 2px 8px rgba(16,42,70,.035); }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 34px; padding: 7px 10px; border-bottom: 1px solid var(--line); }
.panel-head h2 { font-size: 10px; text-transform: uppercase; }
.panel-head > span { color: var(--muted); font-size: 9px; }
.text-button { border: 0; background: transparent; color: #075ab5; font-size: 9px; }
.priority-grid { display: grid; grid-template-columns: 4fr 3.7fr 2.4fr 3fr; gap: 8px; margin-bottom: 9px; }
.priority-grid .panel { min-height: 229px; }
.alerts-panel { border-color: #efb6b8; }
.alerts-panel .panel-head h2 { color: var(--red); }
.actions-preview-panel { border-color: #efcea7; }
.actions-preview-panel .panel-head h2 { color: var(--orange); }
.expiry-summary { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid var(--line-soft); }
.expiry-summary span { padding: 9px 5px; color: var(--muted); text-align: center; font-size: 9px; }
.expiry-summary b { display: block; margin-bottom: 3px; color: var(--red); font-size: 18px; }
.analytics-grid { display: grid; grid-template-columns: 1.2fr .9fr .95fr 1.15fr; gap: 8px; margin-bottom: 9px; }
.analytics-grid .panel { min-height: 252px; }
canvas { display: block; width: 100%; max-width: 100%; }
.dashboard-bottom { display: grid; grid-template-columns: minmax(0, 2.3fr) minmax(340px, 1fr); gap: 8px; }
.latest-actions-panel, .trace-panel { min-height: 235px; }

.table-wrap { width: 100%; overflow: auto; animation: surface-enter .28s ease-out both; }
table { width: 100%; border-collapse: collapse; }
th { padding: 8px; border-bottom: 1px solid var(--line); background: #f4f7fb; color: #294461; font-size: 9px; font-weight: 700; text-align: left; white-space: nowrap; }
td { max-width: 260px; padding: 8px; border-bottom: 1px solid var(--line-soft); color: #263b52; font-size: 9px; line-height: 1.35; }
tbody tr:hover { background: #f7faff; }
.compact-table td, .compact-table th { padding: 6px 7px; font-size: 8.5px; }
.compact-table tbody tr:last-child td { border-bottom: 0; }
.number { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.strong-gap { color: var(--red); font-weight: 700; }
.order-link { border: 0; background: transparent; color: #075db9; font-size: inherit; font-weight: 700; text-decoration: underline; }
.panel-head a { color: #075db9; font-size: 9px; text-decoration: none; }
.dashboard-split { display: grid; grid-template-columns: 1.15fr 1fr; gap: 8px; margin-bottom: 9px; }
.lower-dashboard { grid-template-columns: 1fr 1fr; }
.empty-state { padding: 24px; color: var(--muted); text-align: center; }
.rank-list { padding: 8px 10px; }
.rank-list > div { position: relative; display: grid; grid-template-columns: 20px minmax(120px, 1fr) minmax(90px, 2fr) 80px; align-items: center; gap: 8px; min-height: 31px; border-bottom: 1px solid var(--line-soft); }
.rank-list b { color: var(--blue); }
.rank-list i { display: block; height: 8px; background: #1666c5; }
.rank-list strong { text-align: right; }
.control-bar.filters-4 { grid-template-columns: 2fr 1fr 1.4fr 100px; }
.control-bar.filters-5 { grid-template-columns: 1fr 1fr minmax(220px, 2fr) 1.2fr 100px; }
.control-bar.filters-actions { grid-template-columns: 1fr 1fr minmax(210px, 1.7fr) 1fr 1.2fr 1.2fr 100px; }
.primary-button { min-height: 34px; padding: 8px 13px; border: 0; border-radius: 3px; background: var(--blue); color: #fff; font-weight: 700; }
.primary-button:hover { background: #0b58ad; }
.pagination { display: flex; align-items: center; justify-content: flex-end; gap: 4px; padding: 9px; border-top: 1px solid var(--line); }
.pagination span { margin-right: 8px; color: var(--muted); font-size: 9px; }
.pagination a { display: grid; place-items: center; min-width: 27px; height: 27px; border: 1px solid var(--line); border-radius: 3px; color: var(--blue); text-decoration: none; }
.pagination a.active { border-color: var(--blue); background: var(--blue); color: #fff; }
.segmented-nav { display: flex; overflow-x: auto; margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.segmented-nav { scrollbar-width: none; }
.segmented-nav::-webkit-scrollbar { display: none; }
.segmented-nav a { flex: 0 0 auto; padding: 9px 13px; border-right: 1px solid var(--line); color: #38536f; text-decoration: none; font-size: 9px; font-weight: 700; }
.segmented-nav a.active { background: var(--navy-900); color: #fff; }
.status-link { display: inline-block; padding: 4px 7px; border: 1px solid #9fb6cf; border-radius: 3px; color: #075db9; text-decoration: none; white-space: nowrap; }
.report-toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.report-toolbar > div { display: flex; gap: 7px; }
.primary-link { display: inline-block; padding: 8px 11px; border-radius: 3px; background: var(--blue); color: #fff; font-size: 10px; font-weight: 700; text-decoration: none; }
.origin-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.origin-metrics { display: grid; grid-template-columns: repeat(3,1fr); }
.origin-metrics div { padding: 15px; border-right: 1px solid var(--line-soft); }
.origin-metrics span { display: block; min-height: 24px; color: var(--muted); font-size: 9px; }
.origin-metrics strong { color: var(--navy-900); font-size: 19px; }
.order-summary-bar { display: grid; grid-template-columns: .6fr 1.4fr 1.2fr .7fr .8fr; margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.order-summary-bar > div { min-width: 0; padding: 10px 12px; border-right: 1px solid var(--line-soft); }
.order-summary-bar span { display: block; color: var(--muted); font-size: 8px; text-transform: uppercase; }
.order-summary-bar strong { display: block; overflow-wrap: anywhere; margin-top: 5px; color: var(--ink); font-size: 11px; }
.order-summary-bar i { font-style: normal; }
.order-page-grid { display: grid; grid-template-columns: minmax(0, 1fr) 290px; align-items: start; gap: 9px; }
.workflow-card { position: sticky; top: 9px; border: 1px solid var(--line); border-top: 3px solid var(--blue); background: #fff; }
.workflow-card form { display: grid; gap: 9px; padding: 12px; }
.workflow-card label { color: var(--muted); font-size: 9px; }
.workflow-card input, .workflow-card select, .workflow-card textarea { width: 100%; margin-top: 4px; padding: 8px; border: 1px solid var(--line); border-radius: 3px; color: var(--text); }
.workflow-card textarea { min-height: 95px; resize: vertical; }
.quotation-folder-control { display: grid; min-width: 155px; gap: 4px; }
.folder-status { display: inline-block; width: fit-content; padding: 2px 5px; border-radius: 3px; font-size: 8px; font-style: normal; font-weight: 700; white-space: nowrap; }
.folder-status.ok { background: var(--green-soft); color: var(--green); }
.folder-status.warn { background: var(--orange-soft); color: #9b5500; }
.folder-status.stop { background: var(--red-soft); color: var(--red); }
.workflow-card .folder-status { margin-top: 5px; }
.folder-central-link { color: var(--blue); font-size: 9px; font-weight: 700; text-decoration: none; }

.market-overview { display: grid; grid-template-columns: 260px minmax(0, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.market-overview-head { display: flex; flex-direction: column; justify-content: center; padding: 14px 16px; background: var(--navy-900); }
.market-overview-head span { color: #9dccff; font-size: 8px; font-weight: 700; }
.market-overview-head h2 { margin-top: 4px; color: #fff; font-size: 16px; }
.market-overview-head p { margin-top: 6px; color: #d9e9f8; font-size: 9px; line-height: 1.4; }
.market-command { display: grid; grid-template-columns: repeat(5, 1fr); background: #fff; }
.market-command > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 11px 12px; border-right: 1px solid var(--line-soft); }
.market-command > div:last-child { border-right: 0; }
.market-command span, .market-command small { display: block; color: var(--muted); font-size: 8px; }
.market-command strong { display: block; margin: 4px 0; color: var(--navy-900); font-size: 17px; }
.market-date-nav { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.market-date-nav > span { padding-left: 11px; color: var(--muted); font-size: 8px; font-weight: 700; }
.market-date-nav > div { display: flex; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.market-date-nav > div::-webkit-scrollbar { display: none; }
.market-date-nav a { flex: 0 0 auto; padding: 9px 11px; border-left: 1px solid var(--line-soft); color: #405a74; font-size: 9px; font-weight: 700; text-decoration: none; }
.market-date-nav a:hover { background: #f7faff; }
.market-date-nav a.active { background: var(--navy-900); color: #fff; }
.market-date-nav small { padding-right: 11px; color: var(--muted); font-size: 8px; white-space: nowrap; }
.execution-planner { margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.planner-head { display: flex; align-items: center; justify-content: space-between; min-height: 46px; padding: 9px 12px; border-left: 4px solid var(--blue); border-bottom: 1px solid var(--line); }
.planner-head span { color: var(--muted); font-size: 8px; font-weight: 700; }
.planner-head h2 { margin-top: 2px; font-size: 14px; }
.planner-head-actions { display: flex; align-items: center; gap: 7px; }
.planner-head-actions > a { padding: 5px 8px; border: 1px solid var(--blue); border-radius: 3px; color: var(--blue); font-size: 8px; font-weight: 700; text-decoration: none; }
.planner-head-actions > a:hover { background: var(--blue-soft); }
.confidence-chip { padding: 4px 7px; border-radius: 3px; font-size: 9px !important; }
.confidence-chip.ok { background: var(--green-soft); color: var(--green); }
.confidence-chip.warn { background: var(--orange-soft); color: #965100; }
.confidence-chip.stop { background: var(--red-soft); color: var(--red); }
.planner-controls { display: grid; grid-template-columns: minmax(220px,1.6fr) minmax(210px,1.4fr) 125px minmax(145px,1fr) 115px 105px 110px; gap: 7px; padding: 11px 12px; border-bottom: 1px solid var(--line); background: #f5f8fc; }
.planner-controls label { min-width: 0; color: var(--muted); font-size: 8px; font-weight: 700; }
.planner-controls input, .planner-controls select { width: 100%; height: 32px; margin-top: 4px; padding: 0 7px; border: 1px solid #b8c9da; border-radius: 3px; background: #fff; color: var(--text); font-size: 9px; }
.planner-controls .primary-button { align-self: end; }
.participation-input { display: grid; grid-template-columns: 1fr 38px; align-items: center; gap: 5px; margin-top: 4px; }
.participation-input input { height: 28px; margin: 0; padding: 0; }
.participation-input output { color: var(--navy-900); font-size: 10px; font-weight: 700; text-align: right; white-space: nowrap; }
.planner-result { display: grid; grid-template-columns: 1.55fr repeat(5, minmax(105px,1fr)); border-bottom: 1px solid var(--line); }
.planner-result > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 13px 11px; border-left: 1px solid var(--line-soft); }
.planner-result > div span, .planner-result > div small { display: block; color: var(--muted); font-size: 8px; }
.planner-result > div strong { display: block; margin: 7px 0 4px; color: var(--navy-900); font-size: 18px; }
.planner-result > div:nth-child(4), .planner-result > div:nth-child(5) { background: #f0f6fd; }
.planner-result > div:nth-child(4) strong, .planner-result > div:nth-child(5) strong { color: var(--blue); font-size: 21px; }
.instrument-identity { padding: 12px 14px; background: #fff; }
.instrument-identity > span { color: var(--blue); font-size: 8px; font-weight: 700; }
.instrument-identity h3 { min-height: 28px; margin: 4px 0 7px; font-size: 11px; }
.instrument-identity > div { display: flex; align-items: center; gap: 8px; }
.liquidity-grade { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 3px; background: var(--navy-900); color: #fff; font-size: 15px; }
.instrument-identity p { color: var(--ink); font-size: 9px; font-weight: 700; }
.instrument-identity p small { display: block; margin-top: 3px; color: var(--muted); font-size: 8px; font-weight: 400; }
.execution-verdict { display: grid; grid-template-columns: 1.4fr 1fr; border-left: 4px solid var(--blue); }
.execution-verdict > div { display: flex; flex-direction: column; justify-content: center; padding: 12px; }
.execution-verdict > div > span { color: var(--muted); font-size: 8px; }
.execution-verdict > div > strong { display: block; margin-top: 4px; color: var(--ink); font-size: 12px; line-height: 1.35; }
.execution-verdict dl { display: grid; grid-template-columns: repeat(3,1fr); margin: 0; border-left: 1px solid var(--line-soft); }
.execution-verdict dl div { padding: 9px; border-right: 1px solid var(--line-soft); }
.execution-verdict dt { color: var(--muted); font-size: 8px; }
.execution-verdict dd { margin: 5px 0 0; color: var(--navy-900); font-size: 10px; font-weight: 700; }
.execution-verdict.ok { border-left-color: var(--green); background: #fbfefc; }
.execution-verdict.warn { border-left-color: var(--orange); background: #fffdf8; }
.execution-verdict.stop { border-left-color: var(--red); background: #fffafa; }
.market-analysis-grid { display: grid; grid-template-columns: 1.55fr 1fr .9fr; gap: 8px; margin-bottom: 9px; }
.market-analysis-grid .panel { min-height: 272px; }
.market-chart-panel canvas { width: 100%; height: 230px; }
.scenario-table { padding: 6px 9px; }
.scenario-table > div { display: grid; grid-template-columns: 45px 1fr 60px 85px; align-items: center; min-height: 39px; padding: 5px 7px; border-bottom: 1px solid var(--line-soft); font-size: 9px; }
.scenario-table .scenario-header { min-height: 27px; background: #f6f8fb; color: var(--muted); font-size: 8px; font-weight: 700; }
.scenario-table > div.selected { box-shadow: inset 3px 0 var(--blue); background: #f0f6fd; }
.scenario-table strong { color: var(--navy-900); font-size: 14px; }
.liquidity-facts dl { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
.liquidity-facts dl div { min-width: 0; padding: 10px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.liquidity-facts dt { color: var(--muted); font-size: 8px; }
.liquidity-facts dd { margin: 5px 0 0; color: var(--navy-900); font-size: 12px; font-weight: 700; }
.market-table-filters { display: grid; grid-template-columns: minmax(240px,1fr) 180px 90px; gap: 7px; padding: 8px 10px; border-bottom: 1px solid var(--line); background: #f7f9fc; }
.market-table-filters input, .market-table-filters select { height: 31px; padding: 0 8px; border: 1px solid var(--line); border-radius: 3px; background: #fff; }
.market-radar thead { position: sticky; top: 0; z-index: 2; }
.market-radar td small { display: block; max-width: 230px; margin-top: 3px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.liquidity-score { display: flex; align-items: center; gap: 6px; color: var(--text); text-decoration: none; }
.liquidity-score b { display: grid; place-items: center; width: 29px; height: 26px; border-radius: 3px; background: var(--navy-900); color: #fff; }
.liquidity-score span { max-width: 52px; color: var(--muted); font-size: 8px; }
.selected-market-row { background: #eef6ff; box-shadow: inset 3px 0 var(--blue); }
.reason-list { padding: 11px; border-top: 1px solid var(--line); }
.reason-list h3 { margin-bottom: 7px; font-size: 10px; }
.reason-list p { margin-top: 5px; color: var(--muted); font-size: 9px; }
.evidence-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.evidence-grid div { padding: 8px; border-right: 1px solid var(--line-soft); }
.evidence-grid span { display: block; color: var(--muted); font-size: 8px; }
.evidence-grid strong { display: block; margin-top: 4px; font-size: 10px; overflow-wrap: anywhere; }
.audit-block > p { margin-top: 8px; color: var(--muted); font-size: 9px; }
.import-workflow { display: grid; grid-template-columns: 1fr 42px 1fr; align-items: center; margin-bottom: 9px; }
.session-rule { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 9px; border: 1px solid #9fb8d2; border-left: 4px solid var(--blue); background: #fff; }
.session-rule div { padding: 9px 12px; border-right: 1px solid var(--line-soft); }
.session-rule span, .session-rule strong { display: block; }
.session-rule span { color: var(--muted); font-size: 8px; }
.session-rule strong { margin-top: 4px; color: var(--navy-900); font-size: 11px; }
.workflow-step { display: flex; align-items: center; gap: 12px; padding: 11px 14px; border: 1px solid var(--line); background: #fff; opacity: .65; }
.workflow-step.active { border-color: var(--blue); box-shadow: inset 3px 0 var(--blue); opacity: 1; }
.workflow-step > b { display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid var(--blue); border-radius: 50%; color: var(--blue); }
.workflow-step strong, .workflow-step span { display: block; }
.workflow-step span { margin-top: 3px; color: var(--muted); font-size: 9px; }
.workflow-arrow { color: var(--blue); text-align: center; font-size: 20px; }
.import-setup { margin-bottom: 9px; }
.setup-grid { display: grid; grid-template-columns: 210px 210px 1fr; gap: 12px; padding: 12px; }
.setup-grid label, .setup-grid > div { color: var(--muted); font-size: 9px; }
.setup-grid input, .setup-grid select { width: 100%; height: 34px; margin-top: 4px; padding: 0 8px; border: 1px solid var(--line); border-radius: 3px; background: #fff; }
.setup-grid strong, .setup-grid small { display: block; }
.setup-grid strong { margin-top: 5px; color: var(--ink); font-size: 12px; }
.setup-grid small { margin-top: 4px; }
.import-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; margin-bottom: 9px; }
.file-import-card { position: relative; display: block; min-width: 0; padding: 13px; border: 1px solid var(--line); border-top: 3px solid var(--green); border-radius: 5px; background: #fff; cursor: pointer; }
.file-import-card.missing { border-top-color: var(--orange); }
.file-import-card.stale { border-top-color: var(--red); }
.file-import-card.stale .file-role span { color: var(--red); }
.file-import-card.disabled { opacity: .45; cursor: not-allowed; }
.file-role { display: flex; justify-content: space-between; align-items: center; }
.file-role b { color: var(--blue); font-size: 16px; }
.file-role span { color: var(--green); font-size: 8px; font-weight: 700; }
.file-import-card.missing .file-role span { color: var(--orange); }
.file-import-card h2 { margin-top: 10px; font-size: 12px; }
.file-import-card > p { min-height: 28px; margin-top: 5px; color: var(--muted); font-size: 9px; }
.file-import-card dl { display: grid; grid-template-columns: 80px minmax(0, 1fr); margin: 10px 0; border-top: 1px solid var(--line-soft); }
.file-import-card dt, .file-import-card dd { overflow: hidden; margin: 0; padding: 5px 0; border-bottom: 1px solid var(--line-soft); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.file-import-card dt { color: var(--muted); }
.file-import-card input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.choose-file { display: block; padding: 8px; border: 1px solid var(--blue); border-radius: 3px; color: var(--blue); text-align: center; font-size: 9px; font-weight: 700; }
.empty-source { min-height: 100px; padding-top: 42px; color: var(--muted); text-align: center; }
.import-submit { display: flex; justify-content: space-between; align-items: center; margin-bottom: 9px; padding: 11px 13px; border: 1px solid #9fb9d3; background: #eef5fc; }
.import-submit strong, .import-submit span { display: block; }
.import-submit span { margin-top: 3px; color: var(--muted); font-size: 9px; }
.quality-list { display: grid; grid-template-columns: repeat(5,1fr); }
.quality-list div { padding: 17px; border-right: 1px solid var(--line-soft); }
.quality-list span { display: block; min-height: 25px; color: var(--muted); font-size: 9px; }
.quality-list strong { font-size: 19px; color: var(--navy-900); }
.period-summary { display: grid; grid-template-columns: repeat(6, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.period-summary div { padding: 11px 13px; border-right: 1px solid var(--line-soft); }
.period-summary span { display: block; min-height: 22px; color: var(--muted); font-size: 8px; }
.period-summary strong { display: block; color: var(--navy-900); font-size: 18px; }
.period-summary div:last-child strong { color: var(--red); }
.period-management { display: grid; grid-template-columns: repeat(5, 1fr); margin-bottom: 9px; border: 1px solid var(--line); border-left: 4px solid var(--navy-900); background: #fff; }
.period-management > div { padding: 10px 12px; border-right: 1px solid var(--line-soft); }
.period-management > div:last-child { border-right: 0; }
.period-management span, .period-management strong, .period-management small { display: block; }
.period-management span { color: var(--muted); font-size: 8px; }
.period-management strong { margin-top: 3px; color: var(--navy-900); font-size: 16px; }
.period-management small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.positive-value { color: var(--green); }
.history-chart-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 9px; }
.history-chart { border-top: 3px solid var(--blue); }
.history-chart.green { border-top-color: var(--green); }
.history-chart.orange { border-top-color: var(--orange); }
.history-chart.red { border-top-color: var(--red); }
.history-bars { padding: 7px 9px; }
.history-bars > div { display: grid; grid-template-columns: 38px minmax(50px, 1fr) 65px; align-items: center; gap: 7px; min-height: 23px; border-bottom: 1px solid var(--line-soft); }
.history-bars time { color: var(--muted); font-size: 8px; }
.history-bars i { display: block; height: 7px; background: #e8eef5; }
.history-bars i b { display: block; height: 100%; background: var(--blue); }
.history-chart.green .history-bars i b { background: var(--green); }
.history-chart.orange .history-bars i b { background: var(--orange); }
.history-chart.red .history-bars i b { background: var(--red); }
.history-bars strong { text-align: right; font-size: 8px; white-space: nowrap; }
.period-filter { display: grid; grid-template-columns: 190px 170px 170px 100px; gap: 8px; align-items: end; margin-bottom: 9px; padding: 9px; border: 1px solid var(--line); background: #fff; }
.anomaly-filter { grid-template-columns: 150px 150px 170px minmax(220px, 1fr) 100px; }
.period-filter label { color: var(--muted); font-size: 8px; }
.period-filter input, .period-filter select { width: 100%; height: 32px; margin-top: 4px; padding: 0 8px; border: 1px solid var(--line); border-radius: 3px; background: #fff; }
.internal-kpis { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.internal-kpis div { padding: 12px 14px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.internal-kpis span, .internal-kpis small { display: block; color: var(--muted); font-size: 8px; }
.internal-kpis strong { display: block; margin: 5px 0; color: var(--navy-900); font-size: 20px; }
.internal-kpis div:nth-child(7) strong { color: var(--red); }
.internal-weight-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-bottom: 9px; }
.weight-comparison { padding: 8px 12px; }
.weight-comparison > div { padding: 7px 0; border-bottom: 1px solid var(--line-soft); }
.weight-comparison > div > div { display: flex; justify-content: space-between; }
.weight-comparison i { display: block; height: 8px; margin: 5px 0; background: #e7edf4; }
.weight-comparison i b { display: block; height: 100%; background: var(--green); }
.weight-comparison small { color: var(--muted); font-size: 8px; }
.internal-tables .panel { min-height: 285px; }
.badge, .import-badge { display: inline-block; padding: 3px 5px; border-radius: 3px; font-size: 8px; font-weight: 700; white-space: nowrap; }
.badge.stop { background: #d6171f; color: #fff; }
.badge.high { background: #ff7b00; color: #fff; }
.badge.warn { background: #f2ab14; color: #5e3a00; }
.badge.info { background: #e8eef5; color: #39526d; }
.transaction-unallocated td { background: #fff4f4; }
.transaction-partial td { background: #fff8e8; }
.transaction-allocation-note { margin: 0; padding: 8px 11px; border-bottom: 1px solid var(--line-soft); color: var(--muted); font-size: 9px; }
.transaction-filters { display: flex; margin: -2px 0 7px; }
.transaction-filters button { min-width: 105px; padding: 6px 9px; border: 1px solid var(--line); border-right: 0; background: #fff; color: #38536f; font-size: 9px; font-weight: 700; cursor: pointer; }
.transaction-filters button:last-child { border-right: 1px solid var(--line); }
.transaction-filters button.active { background: var(--navy-900); color: #fff; }
.transaction-filters b { margin-left: 5px; color: inherit; }
.avop-panel { border-left: 4px solid var(--green); }
.avop-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.avop-head span { color: var(--muted); font-size: 8px; }
.avop-head h3 { margin: 2px 0 0; }
.avop-metrics { display: grid; grid-template-columns: repeat(6, 1fr); margin: 8px 0; border: 1px solid var(--line-soft); }
.avop-metrics div { padding: 7px 9px; border-right: 1px solid var(--line-soft); }
.avop-metrics div:last-child { border-right: 0; }
.avop-metrics span, .avop-metrics strong { display: block; }
.avop-metrics span { color: var(--muted); font-size: 8px; }
.avop-metrics strong { margin-top: 3px; color: var(--navy-900); font-size: 12px; }
.avop-upload { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; margin-top: 9px; }
.avop-upload input[type="file"] { min-width: 0; padding: 6px; border: 1px solid var(--line); background: #fff; font-size: 9px; }
.avop-warning { margin: 7px 0; padding: 7px 9px; border-left: 3px solid var(--orange); background: var(--orange-soft); color: #7a4300; font-size: 9px; }
.import-badge.ok { background: var(--green-soft); color: var(--green); }
.import-badge.missing { background: var(--orange-soft); color: #a95a00; }
.action-status { min-width: 72px; height: 25px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: #37506b; font-size: 8px; }
.action-status.saved { border-color: var(--green); background: var(--green-soft); }
.action-status.failed { border-color: var(--red); background: var(--red-soft); }

.view-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 3px 0 10px; padding: 10px 12px; border-bottom: 2px solid var(--navy-900); background: #fff; }
.view-heading h2 { font-size: 17px; }
.section-kicker, .eyebrow { margin-bottom: 3px; color: #08796f; font-size: 9px; font-weight: 700; text-transform: uppercase; }
.export-button { padding: 8px 11px; border: 1px solid #0d66bd; border-radius: 4px; color: #0d5aa4; font-size: 10px; font-weight: 700; text-decoration: none; }
.control-bar { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 7px; margin-bottom: 9px; padding: 8px; border: 1px solid var(--line); background: #fff; }
.order-controls { grid-template-columns: 1.6fr repeat(4, 1fr); }
.control-bar input, .control-bar select { width: 100%; height: 34px; padding: 0 9px; border: 1px solid #b9c8d8; border-radius: 3px; background: #fff; color: var(--text); font-size: 10px; }
.table-panel { min-height: 360px; }
.table-panel td, .table-panel th { padding: 8px; font-size: 9px; }
.import-layout { display: grid; grid-template-columns: 1.5fr 1fr; gap: 24px; padding: 16px; }
.import-layout h3 { margin-bottom: 10px; font-size: 13px; }
.source-list { margin: 0; padding: 0; list-style: none; }
.source-list li { display: grid; grid-template-columns: 42px 1fr auto; gap: 10px; align-items: center; padding: 9px 0; border-bottom: 1px solid var(--line-soft); }
.source-list li > strong { color: var(--blue); }
.source-list small { color: var(--muted); }
.source-list em { color: var(--muted); font-size: 9px; font-style: normal; text-align: right; }
.small-table td, .small-table th { font-size: 9px; }
.diagnostic-cell { min-width: 230px; }
.diagnostic-cell strong, .diagnostic-cell small, .diagnostic-cell a { display: block; }
.diagnostic-cell strong { color: var(--navy-900); font-size: 9px; }
.diagnostic-cell small { margin-top: 4px; color: var(--muted); white-space: nowrap; }
.diagnostic-cell a { margin-top: 4px; color: var(--blue); font-size: 8px; font-weight: 700; }
.action-kpis a { display: block; margin-top: 4px; color: var(--navy-900); font-size: 17px; font-weight: 700; text-decoration: none; }
.action-kpis > div:nth-child(3) a { color: var(--red); }
.action-kpis > div:nth-child(4) a { color: var(--orange); }
.action-row.action-overdue td { background: #fff8ed; }
.action-row.action-overdue td:first-child { box-shadow: inset 3px 0 0 var(--orange); }
.action-row.action-closed { opacity: .68; }
.action-control { width: 100%; min-width: 105px; height: 29px; padding: 0 6px; border: 1px solid #b9c8d8; border-radius: 3px; background: #fff; color: var(--text); font-size: 9px; }
.action-assignee { min-width: 125px; }
.action-due { min-width: 155px; }
.action-status-editor { display: grid; grid-template-columns: minmax(92px, 1fr) 30px; gap: 4px; min-width: 130px; }
.action-save { display: grid; place-items: center; width: 30px; height: 29px; border: 0; border-radius: 3px; background: var(--blue); color: #fff; font-weight: 700; cursor: pointer; }
.action-save:hover { background: #0b58ad; }
.action-save:disabled { cursor: wait; opacity: .65; }
.action-save.saved { background: var(--green); }
.action-save.failed { background: var(--red); }
.action-save-feedback { display: block; min-height: 12px; margin-top: 3px; color: var(--muted); font-size: 8px; }
.panel-actions { display: flex; align-items: center; gap: 10px; }
.transmission-link { padding: 6px 9px; border: 1px solid var(--blue); border-radius: 3px; color: var(--blue); font-size: 9px; font-weight: 700; text-decoration: none; }
.transmission-commandbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.transmission-command-actions { display: flex; gap: 7px; }
.secondary-link { padding: 8px 11px; border: 1px solid var(--blue); border-radius: 4px; background: #fff; color: var(--blue); font-size: 10px; font-weight: 700; text-decoration: none; }
.outlook-link { background: #075fc2; }
.transmission-hero { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 18px; align-items: center; margin-bottom: 9px; padding: 16px 18px; border-left: 4px solid var(--blue); background: var(--navy-900); color: #fff; }
.transmission-eyebrow { color: #9dccff; font-size: 8px; font-weight: 700; }
.transmission-hero h2 { margin: 4px 0; color: #fff; font-size: 20px; }
.transmission-hero p { max-width: 760px; margin: 0; color: #d9e9f8; font-size: 10px; line-height: 1.5; }
.transmission-readiness { display: grid; gap: 6px; }
.transmission-readiness span { display: flex; align-items: center; gap: 7px; padding: 6px 8px; border: 1px solid rgba(255,255,255,.17); background: rgba(255,255,255,.06); font-size: 9px; }
.transmission-readiness b { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: #fff; color: var(--navy-900); }
.transmission-readiness .ready b { background: #dcf6e7; color: var(--green); }
.transmission-readiness .pending b { background: #fff0cf; color: #9a5600; }
.transmission-toolbar { display: flex; justify-content: flex-end; gap: 7px; margin-bottom: 9px; }
.transmission-summary { display: grid; grid-template-columns: repeat(6, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.transmission-summary div { padding: 10px 12px; border-right: 1px solid var(--line-soft); }
.transmission-summary div:last-child { border-right: 0; }
.transmission-summary span, .transmission-summary strong { display: block; }
.transmission-summary span { min-height: 22px; color: var(--muted); font-size: 8px; }
.transmission-summary strong { color: var(--navy-900); font-size: 17px; }
.transmission-summary small { color: var(--muted); font-size: 7px; }
.transmission-grid { display: grid; grid-template-columns: 330px minmax(0, 1fr); gap: 9px; }
.transmission-recipient, .mail-composer { min-width: 0; }
.transmission-recipient form { display: grid; gap: 8px; padding: 11px; }
.transmission-recipient label, .mail-composer label { color: var(--muted); font-size: 9px; }
.transmission-recipient input, .mail-composer input, .mail-composer textarea { width: 100%; margin-top: 4px; padding: 8px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--text); font-family: inherit; font-size: 10px; letter-spacing: 0; }
.transmission-recipient dl { margin: 0; padding: 0 11px 11px; }
.transmission-recipient dl div { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--line-soft); font-size: 9px; }
.transmission-recipient dt { color: var(--muted); }
.transmission-recipient dd { margin: 0; font-weight: 700; text-align: right; }
.mail-composer { padding-bottom: 11px; }
.mail-composer > label { display: block; margin: 11px 11px 0; }
.copy-field { display: grid; grid-template-columns: minmax(0, 1fr) 72px; gap: 6px; align-items: start; }
.copy-field > * { min-width: 0; }
.copy-field button { height: 33px; margin-top: 4px; border: 1px solid var(--blue); border-radius: 3px; background: #fff; color: var(--blue); font-size: 9px; font-weight: 700; }
.copy-field button.copied { border-color: var(--green); color: var(--green); }
.copy-body textarea { min-height: 470px; resize: vertical; background: #fbfdff; font-family: Consolas, "Courier New", monospace; font-size: 9px; line-height: 1.55; }
.mail-actions { display: flex; align-items: center; gap: 10px; margin: 10px 11px 0; }
.mail-actions small { color: var(--muted); }
.rich-mail-frame { max-height: 690px; margin: 11px; overflow: auto; padding: 16px; border: 1px solid var(--line); background: #e9eff5; }
.rich-mail-preview { width: min(100%, 760px); margin: 0 auto; background: #fff; box-shadow: 0 5px 18px rgba(16, 43, 70, .12); }
.mail-plain-source { position: absolute; width: 1px !important; height: 1px; min-height: 0 !important; margin: -1px !important; padding: 0 !important; overflow: hidden; border: 0 !important; clip: rect(0 0 0 0); white-space: nowrap; }
.rich-mail-actions { display: grid; grid-template-columns: auto auto minmax(180px, 1fr); gap: 8px; align-items: center; margin: 0 11px; }
.rich-mail-actions button { min-height: 34px; }
.rich-mail-actions button.copied { background: var(--green); }
.rich-mail-actions span { color: var(--muted); font-size: 8px; line-height: 1.4; }
.transmission-preview { margin-top: 9px; }
.workbook-contents { margin-top: 9px; }
.workbook-sheet-list { display: grid; grid-template-columns: repeat(3, 1fr); }
.workbook-sheet-list > div { display: grid; grid-template-columns: 34px 1fr; gap: 2px 9px; padding: 12px; border-right: 1px solid var(--line-soft); }
.workbook-sheet-list > div:last-child { border-right: 0; }
.workbook-sheet-list b { grid-row: span 2; display: grid; place-items: center; width: 30px; height: 30px; background: #e3effb; color: var(--blue); font-size: 10px; }
.workbook-sheet-list strong { color: var(--navy-900); font-size: 10px; }
.workbook-sheet-list span { color: var(--muted); font-size: 8px; line-height: 1.4; }

.order-dialog { width: min(1180px, calc(100vw - 28px)); max-height: 90vh; padding: 0; border: 1px solid var(--line); border-radius: 6px; box-shadow: 0 18px 60px rgba(3, 30, 61, .25); }
.order-dialog::backdrop { background: rgba(3, 24, 48, .55); }
.dialog-head { position: sticky; top: 0; z-index: 2; display: flex; justify-content: space-between; padding: 14px 16px; border-bottom: 1px solid var(--line); background: #fff; }
.icon-button { width: 32px; height: 32px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--ink); font-size: 20px; }
#orderDetail { padding: 14px; }
.detail-summary { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; padding: 10px; background: #f2f6fa; }
.detail-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; }
.detail-grid section, .audit-block, .transaction-block, .workflow-block, .timeline-block { padding: 11px; border: 1px solid var(--line); }
.detail-grid section { min-width: 0; }
.detail-grid h3, .audit-block h3, .transaction-block h3, .workflow-block h3, .timeline-block h3 { margin-bottom: 8px; font-size: 11px; }
.detail-grid section > div { display: flex; justify-content: space-between; gap: 10px; padding: 5px 0; border-bottom: 1px solid var(--line-soft); font-size: 9px; }
.detail-grid span { color: var(--muted); }
.detail-grid section > div > * { min-width: 0; }
.detail-grid section b { overflow-wrap: anywhere; text-align: right; }
.audit-block, .transaction-block, .workflow-block, .timeline-block { margin-top: 9px; }
.workflow-grid { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 8px; }
.workflow-grid label { color: var(--muted); font-size: 9px; }
.workflow-grid input, .workflow-grid select, .workflow-grid textarea { width: 100%; margin-top: 4px; padding: 7px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--text); font-size: 10px; }
.workflow-note { grid-column: span 3; }
.workflow-grid textarea { min-height: 58px; resize: vertical; }
.save-workflow { align-self: end; min-height: 58px; border: 0; border-radius: 3px; background: var(--blue); color: #fff; font-weight: 700; }
.save-workflow.saved { background: var(--green); }
.save-workflow.failed { background: var(--red); }
.timeline-block ol { margin: 0; padding: 0 0 0 18px; border-left: 2px solid #b9cde3; list-style: none; }
.timeline-block li { position: relative; display: grid; grid-template-columns: 145px 210px 1fr; gap: 10px; padding: 6px 0 6px 12px; font-size: 9px; }
.timeline-block li::before { position: absolute; top: 9px; left: -23px; width: 8px; height: 8px; border-radius: 50%; background: var(--blue); content: ''; }
.timeline-block time { color: var(--muted); }
.timeline-block span { color: #536a82; }

@media (max-width: 1450px) {
    .page-header { grid-template-columns: minmax(230px, 1fr) minmax(480px, 1.7fr) 150px; }
    .dashboard-header { grid-template-columns: 240px minmax(600px, 1fr) 145px; }
    .metric-groups { grid-template-columns: 1fr 1fr; }
    .priority-grid { grid-template-columns: 1.2fr 1fr; }
    .analytics-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 980px) {
    :root { --sidebar-width: 230px; }
    .sidebar { transform: translateX(-100%); transition: transform .2s ease; }
    .sidebar.open { transform: translateX(0); }
    .workspace { margin-left: 0; }
    .sidebar-toggle { display: block; }
    .dashboard-header { grid-template-columns: 1fr; }
    .page-header { grid-template-columns: 1fr; }
    .page-source-strip { order: 3; border: 0; border-top: 1px solid var(--line); }
    .header-meta { display: none; }
    .dashboard-title { border-bottom: 1px solid var(--line); }
    .import-strip { grid-template-columns: 125px repeat(4, minmax(165px, 1fr)) 95px; overflow-x: auto; border-left: 0; }
    .last-update { display: none; }
    .dashboard-bottom { grid-template-columns: 1fr; }
    .detail-grid { grid-template-columns: 1fr 1fr; }
    .control-command { grid-template-columns: repeat(3, 1fr); }
    .workflow-grid { grid-template-columns: 1fr 1fr; }
    .workflow-note { grid-column: span 2; }
    .baseline-metrics { grid-template-columns: repeat(3, 1fr); }
    .order-page-grid { grid-template-columns: 1fr; }
    .workflow-card { position: static; }
    .import-card-grid { grid-template-columns: 1fr 1fr; }
    .session-rule { grid-template-columns: 1fr 1fr; }
    .origin-cards { grid-template-columns: 1fr 1fr; }
    .history-chart-grid { grid-template-columns: 1fr 1fr; }
    .period-summary { grid-template-columns: repeat(3, 1fr); }
    .period-management { grid-template-columns: 1fr 1fr; }
    .internal-kpis { grid-template-columns: repeat(2, 1fr); }
    .avop-metrics { grid-template-columns: repeat(3, 1fr); }
    .transmission-summary { grid-template-columns: repeat(3, 1fr); }
    .transmission-grid { grid-template-columns: 1fr; }
    .transmission-hero { grid-template-columns: 1fr; }
    .market-overview { grid-template-columns: 1fr; }
    .market-overview-head { align-items: center; flex-direction: row; justify-content: space-between; gap: 18px; }
    .market-overview-head p { max-width: 430px; margin-top: 0; text-align: right; }
    .market-command { grid-template-columns: repeat(3, 1fr); }
    .planner-controls { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .planner-result { grid-template-columns: repeat(3, 1fr); }
    .planner-result .instrument-identity { grid-column: span 3; }
    .market-analysis-grid { grid-template-columns: 1fr 1fr; }
    .market-chart-panel { grid-column: span 2; }
}

@media (max-width: 660px) {
    main { padding: 8px; }
    .dashboard-title h1 { font-size: 17px; }
    .import-strip { display: flex; }
    .import-state { flex: 0 0 175px; }
    .phase-controls { flex: 0 0 125px; }
    .refresh-button { flex: 0 0 90px; }
    .metric-groups, .priority-grid, .analytics-grid { grid-template-columns: 1fr; }
    .dashboard-split, .lower-dashboard { grid-template-columns: 1fr; }
    .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); width: 100%; }
    .metric { min-height: 72px; border-bottom: 1px solid var(--line-soft); }
    .metric span, .metric strong { max-width: 100%; overflow-wrap: anywhere; }
    .metric strong { font-size: 16px; white-space: normal; }
    .control-command > a { min-height: 54px; padding: 7px; text-align: center; white-space: normal; }
    .priority-grid .panel, .analytics-grid .panel { min-height: 230px; }
    .control-bar, .order-controls, .import-layout { grid-template-columns: 1fr; }
    .control-bar.filters-5 { grid-template-columns: 1fr 1fr; }
    .control-bar.filters-actions { grid-template-columns: 1fr 1fr; }
    .view-heading { align-items: flex-start; }
    .detail-grid { grid-template-columns: 1fr; }
    .avop-metrics, .avop-upload { grid-template-columns: 1fr; }
    .control-command, .exception-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .control-command > *, .exception-kpis > * { min-width: 0; overflow-wrap: anywhere; }
    .workflow-grid { grid-template-columns: 1fr; }
    .workflow-note { grid-column: auto; }
    .timeline-block li { grid-template-columns: 1fr; }
    .baseline-metrics { grid-template-columns: 1fr 1fr; }
    .page-source-strip { grid-template-columns: 1fr 1fr; }
    .control-bar.filters-4, .control-bar.filters-5, .control-bar.filters-actions, .setup-grid, .import-card-grid, .origin-cards { grid-template-columns: 1fr; }
    .order-summary-bar { grid-template-columns: 1fr 1fr; }
    .evidence-grid { grid-template-columns: 1fr 1fr; }
    .import-workflow { grid-template-columns: 1fr; gap: 5px; }
    .workflow-arrow { transform: rotate(90deg); }
    .import-submit, .report-toolbar { align-items: stretch; flex-direction: column; }
    .quality-list { grid-template-columns: 1fr 1fr; }
    .history-chart-grid { grid-template-columns: 1fr; }
    .period-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .period-management { grid-template-columns: 1fr; }
    .period-filter, .internal-weight-grid { grid-template-columns: 1fr; }
    .transmission-summary { grid-template-columns: 1fr 1fr; }
    .transmission-toolbar, .mail-actions { align-items: stretch; flex-direction: column; }
    .transmission-commandbar, .transmission-command-actions { align-items: stretch; flex-direction: column; }
    .transmission-command-actions a { text-align: center; }
    .rich-mail-frame { margin: 8px; padding: 6px; }
    .rich-mail-actions { grid-template-columns: 1fr; margin: 8px; }
    .rich-mail-actions .secondary-link { text-align: center; }
    .workbook-sheet-list { grid-template-columns: 1fr; }
    .workbook-sheet-list > div { border-right: 0; border-bottom: 1px solid var(--line-soft); }
    .panel-actions { align-items: flex-end; flex-direction: column; gap: 4px; }
    .copy-field { grid-template-columns: 1fr; }
    .copy-field button { width: 100%; margin-top: 0; }
    .transmission-recipient dd { max-width: 58%; overflow-wrap: anywhere; }
    .detail-summary { align-items: flex-start; flex-direction: column; }
    .detail-grid section > div { display: block; }
    .detail-grid section b { display: block; margin-top: 2px; color: var(--ink); text-align: left; }
    .avop-head { align-items: flex-start; flex-direction: column; gap: 5px; }
    .avop-head .import-badge { max-width: 100%; white-space: normal; }
    .market-overview-head { align-items: flex-start; flex-direction: column; gap: 0; }
    .market-overview-head p { margin-top: 6px; text-align: left; }
    .market-command { grid-template-columns: 1fr 1fr; }
    .market-command > div { border-bottom: 1px solid var(--line-soft); }
    .market-command > div:nth-child(even) { border-right: 0; }
    .market-command > div:last-child { grid-column: span 2; border-bottom: 0; }
    .market-date-nav { grid-template-columns: 1fr; gap: 0; }
    .market-date-nav > span, .market-date-nav small { padding: 8px 10px; }
    .market-date-nav > div { border-block: 1px solid var(--line-soft); }
    .planner-head { align-items: flex-start; flex-direction: column; gap: 7px; }
    .planner-head-actions { width: 100%; justify-content: space-between; }
    .planner-controls { grid-template-columns: 1fr; }
    .planner-result { grid-template-columns: 1fr 1fr; }
    .planner-result .instrument-identity { grid-column: span 2; }
    .execution-verdict { grid-template-columns: 1fr; }
    .execution-verdict dl { grid-template-columns: 1fr; border-top: 1px solid var(--line-soft); border-left: 0; }
    .market-analysis-grid { grid-template-columns: 1fr; }
    .market-chart-panel { grid-column: auto; }
    .market-table-filters { grid-template-columns: 1fr; }
    td { max-width: 190px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    main, main > *, .table-wrap { animation: none !important; }
    *, *::before, *::after { transition-duration: .01ms !important; }
}

.briefing-hero { display: grid; grid-template-columns: minmax(0, 1fr) 255px; align-items: stretch; margin-bottom: 9px; overflow: hidden; border-left: 4px solid var(--blue); background: var(--navy-900); color: #fff; }
.briefing-hero > div:first-child { padding: 16px 18px; }
.briefing-hero span { color: #9dccff; font-size: 8px; font-weight: 700; }
.briefing-hero h2 { max-width: 850px; margin-top: 4px; color: #fff; font-size: 20px; line-height: 1.2; }
.briefing-hero p { max-width: 760px; margin-top: 6px; color: #d9e9f8; font-size: 10px; line-height: 1.5; }
.briefing-quick-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 11px; }
.briefing-quick-actions a { padding: 6px 9px; border: 1px solid rgba(255,255,255,.35); border-radius: 3px; background: transparent; color: #fff; font-size: 9px; font-weight: 700; text-decoration: none; }
.briefing-quick-actions a:hover { background: rgba(255,255,255,.1); }
.briefing-score { display: flex; flex-direction: column; justify-content: center; padding: 14px 18px; border-left: 1px solid rgba(255,255,255,.18); background: rgba(0,0,0,.1); }
.briefing-score strong { display: block; margin: 5px 0; color: #fff; font-size: 30px; line-height: 1; }
.briefing-score small { color: #d9e9f8; font-size: 8px; line-height: 1.4; }
.briefing-score.ok strong { color: #c8f4d7; }
.briefing-score.warn strong { color: #ffe2ad; }
.briefing-score.stop strong { color: #ffd0d0; }
.briefing-kpis { display: grid; grid-template-columns: repeat(6, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.briefing-kpis a { min-width: 0; padding: 10px 12px; border-right: 1px solid var(--line-soft); color: var(--text); text-decoration: none; }
.briefing-kpis a:hover { background: #f7faff; }
.briefing-kpis a:last-child { border-right: 0; }
.briefing-kpis span { display: block; min-height: 22px; color: var(--muted); font-size: 8px; }
.briefing-kpis strong { display: block; color: var(--navy-900); font-size: 21px; }
.briefing-kpis a.ok strong { color: var(--green); }
.briefing-kpis a.warn strong { color: var(--orange); }
.briefing-kpis a.stop strong { color: var(--red); }
.briefing-lanes { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.briefing-lanes a { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; min-height: 72px; padding: 10px 12px; border-right: 1px solid var(--line-soft); color: var(--text); text-decoration: none; }
.briefing-lanes a:last-child { border-right: 0; }
.briefing-lanes a:hover { background: #f7faff; }
.briefing-lanes b { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 3px; background: var(--navy-900); color: #fff; font-size: 9px; }
.briefing-lanes strong { display: block; color: var(--ink); font-size: 11px; }
.briefing-lanes span { display: block; margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.briefing-grid { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 9px; margin-bottom: 9px; }
.briefing-grid.lower { grid-template-columns: 1fr 1fr; }
.briefing-main-list td strong, .briefing-main-list td small { display: block; }
.briefing-main-list td small { margin-top: 4px; color: var(--muted); }
.briefing-action-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.briefing-action-card { display: grid; gap: 7px; min-width: 0; padding: 11px 12px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); background: #fff; color: var(--text); text-decoration: none; }
.briefing-action-card:nth-child(even) { border-right: 0; }
.briefing-action-card:hover { background: #f7faff; }
.briefing-action-card.stop { box-shadow: inset 3px 0 var(--red); }
.briefing-action-card.high { box-shadow: inset 3px 0 var(--orange); }
.briefing-action-card.warn { box-shadow: inset 3px 0 #c99a00; }
.action-card-top { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 8px; }
.action-card-top strong { overflow: hidden; color: var(--ink); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.action-card-top small { color: var(--muted); font-size: 8px; }
.briefing-action-card h3 { color: var(--ink); font-size: 11px; line-height: 1.3; }
.action-card-meta { display: grid; grid-template-columns: 1fr 1fr 105px; gap: 6px; }
.action-card-meta span { min-width: 0; overflow: hidden; color: #405a74; font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.briefing-action-card p { color: var(--muted); font-size: 9px; line-height: 1.35; }
.briefing-side { display: grid; gap: 9px; align-content: start; }
.briefing-transmission { display: grid; gap: 9px; padding: 12px; }
.briefing-transmission p { color: var(--muted); font-size: 10px; line-height: 1.5; }
.briefing-facts { margin: 0; }
.briefing-facts div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; border-bottom: 1px solid var(--line-soft); }
.briefing-facts dt { color: var(--muted); font-size: 9px; }
.briefing-facts dd { margin: 0; color: var(--navy-900); font-weight: 700; }
.liquidity-alert { display: inline-block; margin-bottom: 4px; padding: 2px 6px; border-radius: 3px; font-size: 8px; font-weight: 700; }
.liquidity-alert.warn { background: var(--orange-soft); color: #965100; }
.liquidity-alert.stop { background: var(--red-soft); color: var(--red); }
.liquidity-alert + small { display: block; min-width: 180px; color: var(--muted); line-height: 1.35; }

@media (max-width: 980px) {
    .briefing-hero, .briefing-grid { grid-template-columns: 1fr; }
    .briefing-kpis { grid-template-columns: repeat(3, 1fr); }
    .briefing-grid.lower { grid-template-columns: 1fr; }
    .briefing-action-cards { grid-template-columns: 1fr; }
    .briefing-action-card { border-right: 0; }
}

@media (max-width: 660px) {
    .briefing-hero, .briefing-score { display: block; }
    .briefing-score { border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }
    .briefing-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .briefing-kpis a { border-bottom: 1px solid var(--line-soft); }
    .briefing-kpis a:nth-child(even) { border-right: 0; }
    .briefing-lanes { grid-template-columns: 1fr; }
    .briefing-lanes a { border-right: 0; border-bottom: 1px solid var(--line-soft); }
    .briefing-lanes a:last-child { border-bottom: 0; }
    .briefing-hero > div:first-child { padding: 16px; }
    .briefing-hero h2 { font-size: 19px; }
    .action-card-top, .action-card-meta { grid-template-columns: 1fr; }
    .action-card-meta span { white-space: normal; }
}

.folder-command { display: grid; grid-template-columns: minmax(260px, 1.7fr) repeat(5, minmax(105px, .7fr)); margin-bottom: 9px; border: 1px solid var(--line); background: #fff; }
.folder-command > div { display: flex; min-width: 0; flex-direction: column; justify-content: center; padding: 12px; border-right: 1px solid var(--line-soft); }
.folder-command > div:last-child { border-right: 0; }
.folder-command span { color: var(--muted); font-size: 8px; }
.folder-command strong { margin-top: 5px; color: var(--navy-900); font-size: 18px; }
.folder-command .danger strong { color: var(--red); }
.folder-command .success strong { color: var(--green); }
.folder-command .folder-identity { padding: 14px 16px; background: var(--navy-900); }
.folder-identity span { color: #9dccff; font-weight: 700; }
.folder-identity h2 { margin-top: 4px; color: #fff; font-size: 18px; }
.folder-identity p { margin-top: 5px; color: #d9e9f8; font-size: 9px; line-height: 1.4; }
.folder-workspace { display: grid; gap: 9px; }
.folder-toolbar { display: grid; grid-template-columns: 150px 180px 150px minmax(220px, 1fr) auto; gap: 8px; align-items: end; padding: 11px 12px; border: 1px solid var(--line); background: #f5f8fc; }
.folder-toolbar label { color: var(--muted); font-size: 8px; font-weight: 700; }
.folder-toolbar input { width: 100%; height: 33px; margin-top: 4px; padding: 0 8px; border: 1px solid var(--line); border-radius: 3px; background: #fff; color: var(--text); }
.folder-toolbar-actions { display: flex; gap: 6px; }
.secondary-button, .close-folder-button { min-height: 34px; padding: 8px 11px; border-radius: 3px; font-size: 9px; font-weight: 700; }
.secondary-button { border: 1px solid var(--blue); background: #fff; color: var(--blue); }
.close-folder-button { border: 0; background: var(--green); color: #fff; }
.close-folder-button:disabled { cursor: not-allowed; opacity: .45; }
.folder-select-all { display: flex; align-items: center; gap: 6px; color: var(--blue); font-size: 9px; font-weight: 700; }
.folder-priority { margin-left: auto; color: var(--muted); font-size: 9px; font-weight: 700; }
.folder-select-all input, .folder-order-row input { width: 15px; height: 15px; accent-color: var(--blue); }
.folder-order-row td { transition: background-color .15s ease; }
.folder-order-row.included td { background: #f5fbf7; }
.folder-order-row.included td:first-child { box-shadow: inset 3px 0 var(--green); }
.folder-order-row.missing td:first-child { box-shadow: inset 3px 0 var(--orange); }
.folder-order-row.proximity-alert td { background: #fff9e3; }
.folder-order-row.proximity-alert td:nth-child(2) { box-shadow: inset 3px 0 #c78b00; }
.folder-orders td small { display: block; margin-top: 3px; color: var(--muted); }
.folder-side { display: inline-flex; min-width: 48px; justify-content: center; padding: 3px 6px; border: 1px solid transparent; border-radius: 3px; font-weight: 800; }
.folder-side.buy { border-color: #9fc5ee; background: #eaf4ff; color: #135b96; }
.folder-side.sell { border-color: #e8aca7; background: #fff0ef; color: #a82b24; }
.folder-side.neutral { border-color: var(--line); background: #f4f6f8; color: var(--muted); }
.order-side { display: inline-flex; min-width: 48px; justify-content: center; padding: 3px 6px; border: 1px solid transparent; border-radius: 3px; font-weight: 800; white-space: nowrap; }
.order-side.buy { border-color: #9fc5ee; background: #eaf4ff; color: #135b96; }
.order-side.sell { border-color: #e8aca7; background: #fff0ef; color: #a82b24; }
.order-side.neutral { border-color: var(--line); background: #f4f6f8; color: var(--muted); }
.order-side.compact { min-width: 0; margin-left: 5px; padding: 1px 4px; font-size: 8px; vertical-align: middle; }
.order-proximity-alert td { background: #fff9e3; }
.order-proximity-alert td:first-child { box-shadow: inset 3px 0 #c78b00; }
.folder-date, .folder-validity { white-space: nowrap; font-variant-numeric: tabular-nums; }
.folder-validity { display: inline-block; font-weight: 700; }
.folder-validity.warn, .folder-validity.stop { padding: 2px 5px; border-radius: 3px; }
.folder-validity.warn { background: var(--orange-soft); color: #965100; }
.folder-validity.stop { background: var(--red-soft); color: var(--red); }
.folder-print-footer { display: none; }

@media (max-width: 1180px) {
    .folder-command { grid-template-columns: repeat(5, 1fr); }
    .folder-command .folder-identity { grid-column: 1 / -1; }
    .folder-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .folder-note { grid-column: 1 / -1; }
    .folder-toolbar-actions { grid-column: 1 / -1; justify-content: flex-end; }
}

@media (max-width: 660px) {
    .folder-command { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .folder-command > div { border-bottom: 1px solid var(--line-soft); }
    .folder-command > div:nth-child(odd) { border-right: 0; }
    .folder-command .folder-identity { grid-column: 1 / -1; }
    .folder-toolbar { grid-template-columns: 1fr; }
    .folder-note, .folder-toolbar-actions { grid-column: auto; }
    .folder-toolbar-actions { align-items: stretch; flex-direction: column; }
}

@media print {
    body { background: #fff; }
    .sidebar, .page-header, .notice, .folder-toolbar, .folder-select-all, .folder-orders th:first-child, .folder-orders td:first-child { display: none !important; }
    .workspace { margin-left: 0; }
    main { padding: 0; }
    .folder-command { grid-template-columns: repeat(5, 1fr); border-color: #555; }
    .folder-command .folder-identity { grid-column: 1 / -1; }
    .folder-order-row:not(.included) { display: none; }
    .folder-orders { border-color: #555; box-shadow: none; }
    .folder-orders .panel-head { display: flex; }
    .folder-print-footer { display: block; margin-top: 12px; color: #333; font-size: 9px; text-align: right; }
}
