:root{color-scheme:light;--dsv-blue: #002664;--dsv-blue-soft: #173c7d;--ink: #171717;--muted: #737373;--line: #e5e5e5;--surface: #fafafa;--panel: #ffffff;--sidebar: #fcfcfc;--sidebar-accent: #f5f5f5;--accent: #009fe3;--accent-strong: #0079b7;--amber: #d97706;--red: #b84336;--shipment-match: #d32f2f;--green: #2f7d46;--blue: #3467ad;--radius: 10px;--shell-header-height: 54.4px;--sidebar-collapsed-width: 78px;--shadow: 0 1px 2px rgba(0, 0, 0, .08), 0 3px 12px rgba(0, 0, 0, .04);--font-family-base: "Avenir Next", "Helvetica Neue", "Segoe UI", ui-sans-serif, system-ui, sans-serif;--font-size-2xs: 9px;--font-size-xs: 10px;--font-size-sm: 11px;--font-size-body-sm: 12px;--font-size-body: 13px;--font-size-body-lg: 14px;--font-size-label-lg: 15px;--font-size-subtitle: 16px;--font-size-section-title: 17px;--font-size-metric-sm: 18px;--font-size-card-title: 20px;--font-size-page-title: 22px;--font-size-hero-title: 24px;--font-size-dashboard-metric: 28px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-compact: 1.2;--line-height-display: 1.22;--line-height-heading: 1.25;--line-height-metric-tight: 1.15;--line-height-card: 1.3;--line-height-label: 1.35;--line-height-body: 1.4;--line-height-copy: 1.45;--line-height-metric: 1}*{box-sizing:border-box}#root{min-height:100vh}body{margin:0;min-width:320px;color:var(--ink);background:var(--surface);font-family:var(--font-family-base);font-weight:var(--font-weight-regular)}button,input{font:inherit}button{cursor:pointer}b,strong{font-weight:var(--font-weight-bold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{display:grid;grid-template-columns:256px minmax(0,1fr);height:100vh;min-height:100vh;overflow:hidden}.app-shell.sidebar-collapsed{grid-template-columns:var(--sidebar-collapsed-width) minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100%;display:flex;flex-direction:column;gap:0;color:var(--ink);border-right:1px solid var(--line);background:var(--sidebar)}.sidebar-collapsed .sidebar{z-index:30;overflow:visible}.sidebar-scrim{display:none}.brand{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center;height:var(--shell-header-height);padding:0 14px 0 16px;color:#fff;border-bottom:1px solid var(--dsv-blue);background:var(--dsv-blue)}.sidebar-collapsed .brand{grid-template-columns:1fr;place-items:center;justify-items:center;padding:0;position:relative}.brand-logo{display:block;width:auto;height:30px;max-width:62px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}.sidebar-collapsed .brand-logo{position:absolute;top:50%;left:50%;width:56px;height:auto;max-width:none;object-position:center center;transform:translate(-50%,-50%)}.brand h1,.topbar h2,.section-heading h3{margin:0}.brand h1{font-size:var(--font-size-body-lg);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold);white-space:nowrap}.sidebar-collapsed .brand h1{display:none}.eyebrow{margin:0 0 5px;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}.nav-stack{display:grid;gap:12px;align-content:start;padding:16px 12px;overflow:auto}.sidebar-collapsed .nav-stack{gap:6px;justify-items:center;padding:16px 10px;overflow:visible}.workflow-nav-group{display:grid;gap:4px}.workflow-nav-group h2{margin:10px 10px 3px;color:#737373;font-size:var(--font-size-sm);line-height:var(--line-height-label);font-weight:var(--font-weight-bold);letter-spacing:.04em;text-transform:uppercase}.sidebar-collapsed .workflow-nav-group h2{margin:12px 0 4px;color:#737373;font-size:var(--font-size-2xs);line-height:var(--line-height-label);text-align:center;white-space:nowrap}.nav-link{display:flex;align-items:center;gap:12px;min-height:36px;padding:8px 12px;border-radius:8px;color:#525252;font-size:var(--font-size-body-lg);font-weight:var(--font-weight-medium);text-decoration:none;transition:background .14s ease,color .14s ease}.sidebar-collapsed .nav-link{position:relative;justify-content:center;width:44px;min-height:44px;padding:0}.sidebar-collapsed .nav-link:after{position:absolute;top:50%;left:calc(100% + 10px);z-index:60;min-width:max-content;max-width:220px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;box-shadow:var(--shadow);font-size:var(--font-size-body);font-weight:var(--font-weight-semibold);line-height:var(--line-height-label);opacity:0;pointer-events:none;transform:translateY(-50%) translate(-4px);transition:opacity .12s ease,transform .12s ease;content:attr(data-label)}.sidebar-collapsed .nav-link:before{position:absolute;top:50%;left:calc(100% + 5px);z-index:61;width:9px;height:9px;border-bottom:1px solid var(--line);border-left:1px solid var(--line);background:#fff;opacity:0;pointer-events:none;transform:translateY(-50%) rotate(45deg);transition:opacity .12s ease;content:""}.sidebar-collapsed .nav-link:hover:after,.sidebar-collapsed .nav-link:focus-visible:after,.sidebar-collapsed .nav-link:hover:before,.sidebar-collapsed .nav-link:focus-visible:before{opacity:1}.sidebar-collapsed .nav-link:hover:after,.sidebar-collapsed .nav-link:focus-visible:after{transform:translateY(-50%)}.nav-link:hover,.nav-link.active{color:#111;background:var(--sidebar-accent)}.nav-icon{display:grid;place-items:center;width:17px;height:17px;color:#595959;font-size:var(--font-size-2xs);font-weight:var(--font-weight-medium)}.sidebar-collapsed .nav-icon{width:24px;height:24px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.sidebar-collapsed .nav-label,.sidebar-collapsed .source-health{display:none}.nav-group{margin:14px 0 0;padding:0 12px;color:#737373;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);letter-spacing:.025em;text-transform:uppercase}.source-health{display:none}.source-list{display:grid;gap:10px}.source-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.12);border-top-color:var(--line);color:#525252;font-size:var(--font-size-body)}.source-row strong{color:var(--ink);font-size:var(--font-size-body-sm)}.workspace{min-width:0;background:var(--surface);overflow:auto}.shell-header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;height:var(--shell-header-height);padding:0 24px;color:#fff;border-bottom:1px solid var(--dsv-blue);background:var(--dsv-blue)}.shell-title,.shell-actions{display:flex;align-items:center;gap:16px}.shell-title{min-width:0}.shell-actions{flex-shrink:0}.shell-title span{overflow:hidden;font-size:var(--font-size-metric-sm);line-height:var(--line-height-heading);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.menu-button{flex:0 0 44px;width:44px;height:44px;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:#fff;background:#ffffff1f;font-weight:var(--font-weight-regular);font-size:0;box-shadow:0 1px 2px #0000000d}.menu-button[aria-expanded=false]{background:#ffffff2e}.menu-button:before{display:block;width:11px;height:2px;margin:0 auto;border-radius:999px;background:currentColor;box-shadow:0 -4px 0 currentColor,0 4px 0 currentColor;content:""}.user-pill{min-height:28px;padding:4px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#ffffff1a;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-medium)}.shell-icon{font-weight:var(--font-weight-regular)}.shipment-menu{position:relative;display:flex;align-items:center;gap:10px}.shipment-menu-button{min-height:44px;padding:0 12px;border:1px solid rgba(255,255,255,.22);border-radius:8px;color:#fff;background:#ffffff1f;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.shipment-menu-button:hover,.shipment-menu-button[aria-expanded=true]{background:#fff3}.shipment-menu-button:disabled{cursor:progress;opacity:.72}.shipment-menu-popover{position:absolute;top:calc(100% + 9px);right:0;z-index:40;display:grid;width:min(280px,calc(100vw - 32px));overflow:hidden;border:1px solid rgba(0,38,100,.14);border-radius:8px;background:#fff;box-shadow:0 18px 40px #00000038}.shipment-menu-popover button{display:grid;gap:3px;min-height:56px;padding:10px 12px;border:0;border-bottom:1px solid var(--line);color:var(--ink);background:#fff;text-align:left}.shipment-menu-popover button:last-child{border-bottom:0}.shipment-menu-popover button:hover{background:#f5f7fa}.shipment-menu-popover span{font-size:var(--font-size-body);font-weight:var(--font-weight-bold)}.shipment-menu-popover small,.shipment-menu-status{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.shipment-menu-status{max-width:280px;overflow:hidden;color:#ffffffc7;text-overflow:ellipsis;white-space:nowrap}.shipment-file-input{display:none}.workspace-inner{padding:24px}.workflow-ribbon{display:grid;grid-template-columns:repeat(6,minmax(118px,1fr));gap:0;align-items:stretch;margin-bottom:16px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.workflow-ribbon>.workflow-step{position:relative;display:grid;min-width:0;padding-right:44px}.workflow-ribbon>.workflow-step:last-child{padding-right:0}.workflow-ribbon>.workflow-step div{display:grid;align-content:start;gap:5px;width:100%;min-height:74px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fafafa;position:relative;z-index:1}.workflow-ribbon>.workflow-step.done div{border-color:#cbd9ec;background:#eef4ff}.workflow-ribbon>.workflow-step.current div{color:#fff;border-color:var(--dsv-blue);background:var(--dsv-blue)}.workflow-ribbon>.workflow-step strong{font-size:var(--font-size-body-lg);line-height:var(--line-height-heading)}.workflow-ribbon>.workflow-step span:not(.workflow-step-arrow){color:var(--muted);font-size:var(--font-size-sm);line-height:var(--line-height-label)}.workflow-ribbon>.workflow-step.current span:not(.workflow-step-arrow){color:#dceaff}.workflow-step-arrow{position:absolute;top:50%;right:12px;left:calc(100% - 32px);z-index:2;height:2px;background:var(--dsv-blue);transform:translateY(-50%)}.workflow-step-arrow:after{content:"";position:absolute;top:50%;right:-1px;width:8px;height:8px;border-top:2px solid var(--dsv-blue);border-right:2px solid var(--dsv-blue);transform:translateY(-50%) rotate(45deg)}#dashboard,#personas,#disrupted-shipments,#events,#map,#resolver,#shipments,#persona-playbooks,#alerts{scroll-margin-top:calc(var(--shell-header-height) + 18px)}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px;padding:0 4px}.topbar h2{max-width:850px;font-size:var(--font-size-hero-title);line-height:var(--line-height-display);letter-spacing:0;font-weight:var(--font-weight-bold)}.topbar-subtitle{max-width:760px;margin:4px 0 0;color:var(--muted);font-size:var(--font-size-body-lg);line-height:var(--line-height-copy)}.last-updated-label{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);text-align:right}.topbar-actions{display:flex;gap:10px;align-items:center;flex-shrink:0}.refresh-action-stack{display:grid;gap:6px;justify-items:end}.secondary-button,.primary-button{min-height:44px;border:0;border-radius:8px;font-size:var(--font-size-body-lg);font-weight:var(--font-weight-medium);white-space:nowrap}.secondary-button{padding:0 14px;color:var(--ink);border:1px solid var(--line);background:#fff;box-shadow:var(--shadow)}.secondary-button:hover{background:#d5e0e7}.secondary-button.scanning{color:#fff;background:var(--blue)}.primary-button{padding:0 16px;color:#fff;background:#171717;box-shadow:var(--shadow)}.primary-button:hover{background:#2b2b2b}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metrics-grid article{min-height:92px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.metric-label,.metrics-grid span:last-child{display:block;color:var(--muted);font-size:var(--font-size-body)}.metrics-grid strong{display:block;margin:8px 0 3px;font-size:var(--font-size-dashboard-metric);line-height:var(--line-height-metric)}.source-strategy-board{margin-top:14px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow)}.personas-page{display:grid;gap:16px}.personas-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.personas-hero h3,.persona-group-section h4,.persona-research-panel h4{margin:0;font-size:var(--font-size-card-title);line-height:var(--line-height-heading)}.personas-hero p,.persona-group-section>header p,.persona-card p,.persona-card li,.persona-card dd,.persona-research-panel p,.persona-operating-model p{margin:6px 0 0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.personas-hero p{max-width:840px}.persona-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(88px,auto));gap:8px;flex-shrink:0}.persona-summary-strip span{min-height:58px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-align:right}.persona-summary-strip strong{display:block;color:var(--ink);font-size:var(--font-size-page-title);line-height:var(--line-height-metric)}.persona-operating-model{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.persona-operating-model article,.persona-group-section>header,.persona-card,.persona-research-panel,.persona-source-list article{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.persona-operating-model article{min-height:112px;padding:14px}.persona-operating-model strong{font-size:var(--font-size-body-lg)}.persona-groups{display:grid;gap:18px}.persona-group-section{display:grid;gap:12px}.persona-group-section>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:16px;border-left:4px solid var(--accent)}.persona-group-section>header .eyebrow{max-width:980px;margin-bottom:7px;line-height:var(--line-height-label);text-transform:none}.persona-group-section>header>span{flex-shrink:0;padding:7px 10px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.persona-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.persona-card{display:grid;align-content:start;gap:12px;min-height:388px;padding:14px}.persona-card-title{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.persona-card-title>div{min-width:0}.persona-card-title span:first-child,.shipment-persona-card div>span{color:var(--accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.persona-card-title strong{display:block;margin-top:4px;font-size:var(--font-size-label-lg);line-height:var(--line-height-heading)}.persona-group-chip{flex-shrink:0;padding:5px 8px;border-radius:999px;color:#555;background:#f3f3f3;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.persona-card-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.persona-card-columns strong,.persona-card dt{color:var(--ink);font-size:var(--font-size-body-sm)}.persona-card ul{display:grid;gap:6px;padding:0;margin:7px 0 0;list-style:none}.persona-card li{position:relative;padding-left:13px}.persona-card li:before{position:absolute;top:8px;left:0;width:6px;height:6px;border-radius:50%;background:var(--accent);content:""}.persona-card dl{display:grid;gap:8px;margin:0}.persona-card dd{margin-left:0}.persona-research-panel{display:grid;gap:12px;padding:16px}.persona-source-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.persona-source-list article{display:grid;align-content:start;gap:6px;min-height:126px;padding:12px;box-shadow:none}.persona-source-list strong{color:var(--dsv-blue);font-size:var(--font-size-body);line-height:var(--line-height-heading)}.all-disruptions-board,.shipments-board{margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow)}.all-disruptions-header,.shipments-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--line)}.all-disruptions-header h3,.shipments-header h3{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-heading);font-weight:var(--font-weight-bold)}.all-disruptions-header p,.shipments-header p{margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body)}.shipments-board{display:block}.shipments-header-aside{display:grid;grid-template-columns:auto auto;gap:12px;align-items:flex-start;justify-items:end;min-width:0}.watch-summary,.shipments-summary{display:grid;grid-template-columns:repeat(3,auto);gap:8px}.watch-summary span,.shipments-summary span{min-width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.watch-summary strong,.shipments-summary strong{display:block;color:var(--ink);font-size:var(--font-size-card-title);line-height:var(--line-height-metric);white-space:nowrap}.shipments-export-button{justify-self:end}.shipments-grid-panel{min-width:0;border:0;border-radius:0;background:var(--panel);box-shadow:none}.shipments-grid-scroll{overflow:auto}.shipments-data-grid{width:100%;min-width:1240px;border-collapse:separate;border-spacing:0;font-size:var(--font-size-body)}.shipments-data-grid th,.shipments-data-grid td{min-width:0;padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.shipments-data-grid thead th{position:sticky;top:0;z-index:2;color:#525252;background:#f7f7f7;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase}.shipments-data-grid tbody tr:hover{background:#fafafa}.shipments-data-grid tbody th{width:160px}.shipments-data-grid strong,.shipments-data-grid span,.shipments-data-grid small{display:block}.shipments-data-grid strong{color:var(--ink);font-weight:var(--font-weight-medium)}.shipments-data-grid span,.shipments-data-grid small{margin-top:3px;color:var(--muted);line-height:var(--line-height-label)}.shipments-data-grid small{max-width:260px}.mode-pill{display:inline-flex;width:fit-content;margin-top:0;padding:3px 8px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.shipments-data-grid .badge{display:inline-flex;align-items:center;justify-content:flex-start;min-height:24px;margin-top:0;font-weight:var(--font-weight-medium);line-height:var(--line-height-metric)}.interim-stop+.interim-stop{margin-top:6px}.disrupted-shipments-board{display:grid;gap:14px}.disrupted-shipments-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.disrupted-shipments-header h3{margin:0;font-size:var(--font-size-page-title);line-height:var(--line-height-compact)}.disrupted-shipments-header p{margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body)}.disrupted-shipments-summary{display:grid;grid-template-columns:repeat(3,minmax(92px,1fr));gap:8px;min-width:min(420px,100%)}.disrupted-shipments-summary span{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fafafa;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.disrupted-shipments-summary strong{display:block;color:var(--ink);font-size:var(--font-size-hero-title);line-height:var(--line-height-metric)}.disrupted-shipments-grid{display:grid;grid-template-columns:minmax(430px,1fr) minmax(480px,.9fr);grid-template-areas:"shipments shipment-map" "shipments shipment-detail" "shipments shipment-playbook";gap:14px;align-items:start}.shipment-list-panel,.shipment-map-panel,.shipment-detail-panel,.shipment-mitigation-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.shipment-list-panel{grid-area:shipments;position:sticky;top:20px;max-height:calc(100vh - 220px);overflow:hidden}.shipment-map-panel{grid-area:shipment-map}.shipment-detail-panel{grid-area:shipment-detail}.shipment-mitigation-panel{grid-area:shipment-playbook}.shipment-impact-list{display:grid;max-height:calc(100vh - 268px);overflow:auto}.shipment-impact-row{display:grid;gap:9px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fff;cursor:pointer}.shipment-impact-row:hover,.shipment-impact-row:focus-visible,.shipment-impact-row.selected{background:#f5f5f5}.shipment-impact-row.selected{box-shadow:inset 4px 0 0 var(--accent)}.shipment-impact-row:focus-visible{outline:2px solid rgba(0,102,179,.32);outline-offset:-2px}.shipment-impact-row header,.shipment-disruption-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.shipment-impact-row header div,.shipment-disruption-card header div{min-width:0}.shipment-impact-row header span:first-child,.shipment-disruption-card header span:first-child{color:var(--accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.shipment-impact-row strong,.shipment-disruption-card strong{display:block;margin-top:3px;font-size:var(--font-size-label-lg);line-height:var(--line-height-heading)}.shipment-impact-row p,.shipment-disruption-card p{margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.shipment-impact-meta{display:flex;flex-wrap:wrap;gap:6px}.shipment-impact-meta span{display:inline-flex;min-height:24px;align-items:center;padding:0 8px;border-radius:999px;color:var(--muted);background:#f1f1f1;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.shipment-detail-body{display:grid;gap:12px;padding:14px 16px}.shipment-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.shipment-detail-summary article{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fafafa}.shipment-detail-summary span{display:block;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.shipment-detail-summary strong{display:block;overflow:hidden;margin-top:4px;font-size:var(--font-size-body-lg);text-overflow:ellipsis;white-space:nowrap}.shipment-disruption-card{display:grid;gap:10px;padding:13px 14px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius);background:#fff}.all-disruptions-actions{display:grid;grid-template-columns:auto auto;gap:12px;align-items:flex-start;justify-items:end}.all-disruptions-actions .last-updated-label{grid-column:2;justify-self:end;margin:-4px 2px 0;text-align:right;white-space:nowrap}.watch-summary{display:grid;grid-template-columns:repeat(3,auto);gap:8px}.watch-summary span{min-width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.watch-summary strong{display:block;color:var(--ink);font-size:var(--font-size-card-title);line-height:var(--line-height-metric)}.watch-filter-strip{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(170px,.9fr) minmax(170px,.9fr) minmax(140px,.7fr) minmax(150px,.8fr) minmax(240px,1.4fr);gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:#fafafa}.watch-filter-strip label{display:grid;gap:5px;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.watch-filter-strip select,.watch-filter-strip input{width:100%;min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;outline:0;color:var(--ink);background:#fff;font-size:var(--font-size-body)}.risk-domain-filter-strip{grid-template-columns:minmax(180px,320px);border:1px solid var(--line);border-radius:var(--radius)}.watch-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.watch-card{display:grid;gap:10px;min-width:0;min-height:182px;overflow:hidden;padding:14px;border:1px solid var(--line);border-left:4px solid #a8b5c1;border-radius:var(--radius);background:#fff}.watch-card.matched{border-left-color:var(--shipment-match)}.watch-card.unmatched{border-left-color:var(--amber)}.watch-card header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;min-width:0}.watch-card header>div{min-width:0}.watch-card header>.badge{flex:0 0 auto}.watch-card header>div>span{color:var(--accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.watch-card.matched header>div>span{color:var(--shipment-match)}.watch-card header strong{display:block;overflow:hidden;margin-top:4px;font-size:var(--font-size-label-lg);line-height:var(--line-height-heading);text-overflow:ellipsis}.watch-card p{margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.watch-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0}.risk-domain-board{display:grid;gap:14px}.risk-domain-header,.risk-domain-card,.risk-domain-queue-section{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.risk-domain-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px}.risk-domain-header h3{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-heading)}.risk-domain-header p{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.risk-domain-summary{display:grid;grid-template-columns:repeat(4,auto);gap:8px}.risk-domain-summary span{min-width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.risk-domain-summary strong{display:block;color:var(--ink);font-size:var(--font-size-card-title);line-height:var(--line-height-metric)}.risk-domain-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.risk-domain-card{display:grid;gap:12px;padding:14px}.risk-domain-card header,.risk-domain-queue-section>header,.risk-domain-event header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.risk-domain-event header>div{min-width:0}.risk-domain-card header>div>span,.risk-domain-event header>div>span{color:var(--accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.risk-domain-card header strong,.risk-domain-event header strong{display:block;margin-top:4px;font-size:var(--font-size-label-lg);line-height:var(--line-height-heading)}.risk-domain-event header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.risk-domain-event header .badge{flex-shrink:0}.risk-domain-card p,.risk-domain-queue-section p,.risk-domain-event p{margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.risk-domain-card dl,.risk-domain-event dl{display:grid;gap:8px;margin:0}.risk-domain-card dt,.risk-domain-event dt{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.risk-domain-card dd,.risk-domain-event dd{margin:3px 0 0;font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.risk-domain-signal-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.risk-domain-signal-list-label{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.risk-domain-signal-chip{max-width:180px;overflow:hidden;padding:5px 7px;border:1px solid #d7e2f2;border-radius:999px;color:var(--dsv-blue);background:#fff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.risk-domain-rule-list,.risk-domain-trigger-list{display:flex;flex-wrap:wrap;gap:6px}.risk-domain-rule-list span,.risk-domain-trigger-list span{padding:6px 8px;border:1px solid #d7e2f2;border-radius:999px;color:var(--dsv-blue);background:#f4f8ff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.risk-domain-queue{display:grid;gap:12px}.risk-domain-queue-section{display:grid;gap:12px;padding:14px}.risk-domain-queue-section h4{margin:0;font-size:var(--font-size-subtitle);line-height:var(--line-height-heading)}.risk-domain-queue-section>header>span{flex-shrink:0;padding:6px 10px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.risk-domain-event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.risk-domain-event{display:grid;gap:10px;min-width:0;overflow:hidden;padding:12px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;background:#fafafa}.risk-domain-event dl{grid-template-columns:repeat(3,minmax(0,1fr))}.risk-domain-event header,.risk-domain-event header>div,.risk-domain-event p,.risk-domain-event dl,.risk-domain-event dl>div{min-width:0}.risk-domain-event header strong{display:-webkit-box;overflow:hidden;text-overflow:initial;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.risk-domain-event p{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.risk-domain-event dd{overflow-wrap:anywhere}.risk-domain-empty{padding:10px 12px;border:1px dashed var(--line);border-radius:8px;background:#fafafa}.watch-meta-grid div{min-width:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.watch-meta-grid span{display:block;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.watch-meta-grid strong{display:block;overflow:hidden;margin-top:4px;font-size:var(--font-size-body-sm);line-height:var(--line-height-heading);text-overflow:ellipsis;white-space:nowrap}.watch-card .badge-row{min-width:0}.watch-card .badge-row .badge{max-width:100%;overflow:hidden;text-overflow:ellipsis}.refresh-changes-panel{margin-bottom:14px;overflow:hidden}.refresh-changes-panel>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 16px;border-bottom:1px solid var(--line)}.refresh-changes-panel h3{margin:0;font-size:var(--font-size-subtitle);line-height:var(--line-height-heading)}.refresh-changes-panel>header>span{flex-shrink:0;padding:6px 10px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.refresh-changes-body{display:grid;gap:10px;padding:12px 16px}.refresh-change-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.refresh-change-metrics span{min-height:54px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.refresh-change-metrics strong{display:block;color:var(--ink);font-size:var(--font-size-card-title);line-height:var(--line-height-metric)}.refresh-scan-summary{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding:9px 11px;border:1px solid #cddcf7;border-radius:8px;color:var(--muted);background:#f6f9ff;font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.refresh-scan-summary strong{color:var(--dsv-blue);font-size:var(--font-size-body-sm)}.refresh-change-item{padding:10px 12px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:8px;background:#fff}.refresh-change-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.refresh-change-item.added{border-left-color:var(--green)}.refresh-change-item.removed{border-left-color:var(--red)}.refresh-change-item.stable,.refresh-change-item.baseline{border-left-color:var(--accent)}.refresh-change-item strong{display:block;font-size:var(--font-size-body)}.refresh-change-item p,.refresh-empty{margin:4px 0 0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.refresh-details-button{min-width:126px;padding:0 14px;border:1px solid rgba(0,38,100,.18);border-radius:8px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body);font-weight:var(--font-weight-bold)}.refresh-details-button:hover{background:#dceaff}.refresh-change-details{display:grid;max-height:220px;overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.refresh-change-group{display:grid;gap:8px;padding:11px 12px;border-bottom:1px solid var(--line)}.refresh-change-group:last-child{border-bottom:0}.refresh-change-group header{display:block}.refresh-change-group header strong{font-size:var(--font-size-body)}.refresh-change-group ul{display:grid;gap:4px;padding:0;margin:0;list-style:none}.refresh-change-group li{overflow:hidden;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-label);text-overflow:ellipsis;white-space:nowrap}.refresh-empty{padding:14px 16px;margin:0}.refresh-log-board{margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:var(--shadow)}.refresh-log-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--line)}.refresh-log-header h3{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-heading)}.refresh-log-header p{margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body)}.refresh-log-actions{display:grid;gap:7px;justify-items:end}.refresh-log-actions span{color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);white-space:nowrap}.refresh-log-actions .scheduler-status,.refresh-log-actions .scheduler-next-run{color:var(--dsv-blue)}.refresh-log-body{display:grid;gap:16px;padding:14px 16px 18px}.refresh-log-intelligence{display:grid;gap:12px;padding:14px 16px 0}.refresh-log-intelligence .refresh-changes-panel{margin-bottom:0;border:1px solid var(--line);border-radius:8px}.reference-import-panel,.audit-trail-panel,.refresh-jobs-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.reference-import-panel>header,.audit-trail-panel>header,.refresh-jobs-panel>header,.reference-import-card>header,.audit-trail-entry>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.reference-import-panel h3,.audit-trail-panel h3,.refresh-jobs-panel h3{margin:0;font-size:var(--font-size-label-lg);line-height:var(--line-height-heading)}.refresh-jobs-panel>header p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body-sm)}.audit-trail-panel>header>span,.refresh-jobs-panel>header>span,.reference-import-actions>span{flex-shrink:0;padding:5px 8px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body);font-weight:var(--font-weight-bold)}.refresh-jobs-panel{margin:14px 16px 0}.refresh-job-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.source-refresh-progress{display:grid;gap:8px;margin:14px 16px 0;padding:10px 12px;border:1px solid #c8d8f4;border-radius:8px;background:#f5f8ff}.source-refresh-progress-label{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--dsv-blue);font-size:var(--font-size-body-sm)}.source-refresh-progress-label strong,.source-refresh-progress-label span{overflow-wrap:anywhere}.source-refresh-progress-track{height:10px;overflow:hidden;border-radius:999px;background:#dfe8f8}.source-refresh-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--dsv-blue),#2f6fc1);transition:width .32s ease}.refresh-job-card{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.refresh-job-card.active{border-left:4px solid var(--amber);background:#fffaf1}.refresh-job-card.completed{border-left:4px solid var(--green)}.refresh-job-card>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.refresh-job-card>header>div{display:grid;min-width:0;gap:2px}.refresh-job-card>header>div span{color:var(--muted);font-size:var(--font-size-body-sm);overflow-wrap:anywhere}.refresh-job-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.refresh-job-card dt{color:var(--muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase}.refresh-job-card dd{margin:2px 0 0;font-size:var(--font-size-body-sm)}.refresh-job-note{margin:10px 0 0;color:var(--muted);font-size:var(--font-size-body-sm)}.reference-import-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.reference-import-summary{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.reference-import-summary span{padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.reference-import-summary strong{margin-right:5px;color:var(--ink)}.reference-import-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reference-import-card,.audit-trail-entry{display:grid;gap:8px;min-width:0;padding:11px;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:8px;background:#fff}.reference-import-card.blocked{border-left-color:var(--amber)}.reference-import-card.failed{border-left-color:var(--red)}.reference-import-card.seeded{border-left-color:var(--dsv-blue)}.reference-import-card strong,.audit-trail-entry strong{display:block;font-size:var(--font-size-body);line-height:var(--line-height-card)}.reference-import-card header span,.audit-trail-entry header span{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.reference-import-card header .refresh-outcome-chip,.audit-trail-entry header .refresh-outcome-chip{color:#fff}.reference-import-card p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.reference-import-card dl,.audit-trail-entry dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}.reference-import-card dt,.audit-trail-entry dt{margin:0 0 2px;color:var(--muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase}.reference-import-card dd,.audit-trail-entry dd{overflow:hidden;margin:0;color:var(--ink);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.audit-trail-list{display:grid;gap:8px}.audit-trail-entry{border-left-color:var(--dsv-blue)}.refresh-log-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.refresh-log-metrics span{min-height:58px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.refresh-log-metrics strong{display:block;color:var(--ink);font-size:var(--font-size-page-title);line-height:var(--line-height-metric)}.refresh-log-section{display:grid;gap:10px}.refresh-log-section>header{display:flex;justify-content:space-between;gap:12px;align-items:center}.refresh-log-section h4{margin:0;font-size:var(--font-size-body-lg)}.refresh-log-section>header>span{min-width:28px;padding:4px 8px;border-radius:999px;color:var(--muted);background:#f0f0f0;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);text-align:center}.refresh-log-list{display:grid;gap:8px}.refresh-log-list.succeeded{grid-template-columns:repeat(2,minmax(0,1fr))}.refresh-log-entry{display:grid;gap:8px;min-width:0;padding:12px;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:8px;background:#fff}.refresh-log-entry.blocked{border-left-color:var(--amber)}.refresh-log-entry.failed{border-left-color:var(--red)}.refresh-log-entry>header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.refresh-log-entry h4{margin:0;font-size:var(--font-size-body-lg);line-height:var(--line-height-heading)}.refresh-outcome-chip{flex-shrink:0;padding:5px 8px;border-radius:999px;color:#fff;background:var(--green);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.refresh-outcome-chip.blocked{background:var(--amber)}.refresh-outcome-chip.failed{background:var(--red)}.refresh-outcome-chip.queued{color:var(--dsv-blue);background:#dbe8ff}.refresh-outcome-chip.running{color:#5b3700;background:#ffdc8a}.refresh-outcome-chip.seeded{background:var(--dsv-blue)}.refresh-log-entry-meta{display:flex;flex-wrap:wrap;gap:6px}.refresh-log-entry-meta span{padding:4px 7px;border-radius:999px;color:#525252;background:#f0f0f0;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.refresh-log-entry-title{overflow:hidden;font-size:var(--font-size-body);line-height:var(--line-height-label);text-overflow:ellipsis;white-space:nowrap}.refresh-log-entry p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-body);-webkit-box-orient:vertical;-webkit-line-clamp:2}.refresh-log-entry-error{color:var(--red)!important}.refresh-log-entry a{overflow:hidden;color:var(--dsv-blue);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.refresh-log-empty{padding:14px;margin:0;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-body)}.source-strategy-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid var(--line)}.source-strategy-header h3{margin:0;font-size:var(--font-size-section-title);line-height:var(--line-height-heading);font-weight:var(--font-weight-bold)}.source-role-legend{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-top:9px;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.source-strategy-header>span{flex-shrink:0;padding:7px 10px;border-radius:999px;color:#002664;background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.source-strategy-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:14px;padding:16px}.source-filter-strip{margin:16px 16px 0;grid-template-columns:repeat(2,minmax(180px,320px))}.source-feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.source-feed-grid.sparse-source-results{align-content:start;align-items:start}.source-feed-grid.sparse-source-results .source-feed-card{align-content:start;align-self:start}.source-feed-card,.dedup-rule-panel,.dedup-rule-panel article{border:1px solid var(--line);border-radius:var(--radius);background:#fff}.source-feed-card{display:grid;gap:10px;min-height:216px;padding:14px}.source-feed-card.primary-source{border-left:4px solid var(--accent)}.source-feed-card.supporting-source{border-left:4px solid #707070;background:#fcfcfc}.source-feed-card-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.source-feed-card-header>div{min-width:0}.source-feed-category,.dedup-rule-panel article span{color:var(--accent);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase}.source-role-badge{display:inline-flex;flex-shrink:0;align-items:center;min-height:22px;padding:0 9px;border-radius:999px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-metric)}.source-role-badge.primary{color:var(--dsv-blue);background:#eef4ff;border:1px solid #cddcf7}.source-role-badge.secondary{color:#555;background:#f3f3f3;border:1px solid #dddddd}.source-feed-card strong,.dedup-rule-panel article strong{display:block;margin-top:5px;font-size:var(--font-size-body-lg);line-height:var(--line-height-heading)}.source-feed-card p,.source-feed-card dd,.dedup-rule-panel p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.source-feed-card dl{display:grid;gap:7px;margin:0}.source-feed-card dt{color:var(--ink);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.source-feed-card dd{margin:2px 0 0}.source-reference-link{align-self:end;color:var(--dsv-blue);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);text-decoration:none}.source-reference-link:hover{text-decoration:underline}.dedup-rule-panel{display:grid;align-content:start;gap:10px;padding:14px;background:#fafafa}.dedup-rule-panel h4{margin:0;font-size:var(--font-size-label-lg)}.dedup-rule-panel article{padding:11px}.control-strip{display:grid;grid-template-columns:auto minmax(240px,1fr) auto;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.segmented-control{display:inline-grid;grid-auto-flow:column;gap:3px;padding:4px;border:1px solid var(--line);border-radius:var(--radius);background:#f5f5f5}.segmented-control button{min-height:44px;padding:0 12px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-weight:var(--font-weight-semibold);white-space:nowrap}.segmented-control button.selected{color:var(--ink);background:#fff;box-shadow:0 2px 8px #17212b1a}.search-field{display:grid;grid-template-columns:minmax(180px,1fr);align-items:center;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--muted)}.search-field input{width:100%;min-height:44px;border:0;outline:0;color:var(--ink)}.recent-ended-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--muted);font-family:inherit;font-size:inherit;font-style:normal;font-weight:var(--font-weight-regular);line-height:inherit;white-space:nowrap}.recent-ended-toggle span{color:var(--ink);font-family:inherit;font-size:var(--font-size-body-lg);font-style:normal;font-weight:var(--font-weight-bold);line-height:inherit}.recent-ended-toggle input{width:16px;height:16px;margin:0;accent-color:var(--dsv-blue)}.recent-ended-toggle strong{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.severity-tooltip{position:fixed;z-index:100;width:min(292px,72vw);padding:9px 11px;transform:translate(-50%,-100%);border:1px solid rgba(0,38,100,.18);border-radius:8px;color:#fff;background:#17212bf5;box-shadow:0 10px 24px #17212b2e;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);pointer-events:none}.severity-tooltip:after{content:"";position:absolute;bottom:-5px;left:50%;width:10px;height:10px;transform:translate(-50%) rotate(45deg);background:#17212bf5}.dashboard-grid{display:grid;min-width:0;grid-template-columns:minmax(600px,1fr) minmax(420px,720px);grid-template-areas:"events map" "events resolver" "events timeline" "events impact" "events persona-playbook" "events playbook";gap:14px;align-items:start}.event-column,.map-panel,.resolver-panel,.impact-panel,.shipment-playbook-panel,.timeline-panel,.playbook-panel,.refresh-changes-panel,.alert-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.event-column{grid-area:events;position:sticky;top:20px;overflow:hidden}.map-panel{grid-area:map}.map-heading-actions{display:flex;align-items:center;gap:10px}.map-expand-button{display:grid;width:36px;height:36px;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--dsv-blue);background:#fff;box-shadow:0 1px 2px #0000000a;font-size:var(--font-size-subtitle);font-weight:var(--font-weight-bold)}.map-expand-button:hover{background:#eef4ff}.resolver-panel{grid-area:resolver}.impact-panel{grid-area:impact}.shipment-playbook-panel{grid-area:persona-playbook}.timeline-panel{grid-area:timeline}.playbook-panel{grid-area:playbook}.alert-panel{grid-area:alert}.alert-panel.embedded{grid-area:auto;border:0;border-radius:0;box-shadow:none}.section-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}.section-heading h3,.section-heading span,.section-heading strong{font-size:var(--font-size-body-lg)}.section-heading span{color:var(--muted);font-weight:var(--font-weight-bold)}.agent-badge{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 9px;border:1px solid #cbd9ec;border-radius:999px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap}.agent-badge:before{width:7px;height:7px;border-radius:999px;background:var(--blue);content:""}.section-heading .agent-badge{margin-left:auto}.panel-badges,.reference-import-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.event-list{display:grid;overflow:visible}.event-list.scrollable{max-height:calc(100vh - 260px);overflow:auto}.event-card{display:grid;gap:8px;padding:14px 16px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}.event-select-button{display:grid;gap:10px;width:100%;min-width:0;padding:0;border:0;color:inherit;background:transparent;text-align:left}.event-select-button:hover{background:transparent}.event-card:hover,.event-card:focus-visible,.event-card.selected{background:#f5f5f5}.event-card.selected{box-shadow:inset 4px 0 0 var(--accent)}.event-card:focus-visible{outline:2px solid rgba(0,102,179,.32);outline-offset:-2px}.send-alert-button{min-height:44px;padding:0 12px;border:1px solid rgba(0,38,100,.18);border-radius:8px;color:var(--dsv-blue);background:#eef4ff;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.send-alert-button:hover{background:#dceaff}.event-title{display:flex;min-width:0;justify-content:space-between;gap:10px;align-items:flex-start}.event-title strong{font-size:var(--font-size-label-lg);line-height:var(--line-height-heading)}.event-title-actions{display:flex;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;gap:8px;align-items:center}.timing-chip{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;color:#1f2937;background:#eef2f7;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);white-space:nowrap}.timing-chip.active{color:#0f5f2b;background:#e7f6ec}.timing-chip.scheduled{color:var(--dsv-blue);background:#e8f1ff}.timing-chip.open{color:#7a4a00;background:#fff4db}.timing-chip.ended{color:#4b5563;background:#e5e7eb}.event-card p,.resolver-details p,.impact-card p,.alert-draft p{margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.event-window-line{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;color:var(--muted);font-size:var(--font-size-body-sm)}.event-window-line span{font-weight:var(--font-weight-bold);text-transform:uppercase}.event-window-line strong{color:var(--ink);font-size:var(--font-size-body-sm)}.event-window-line.ended strong{color:#4b5563}.badge-row{display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#f1f1f1;color:#575757;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.badge.critical{color:#fff;background:var(--red)}.badge.high{color:#fff;background:var(--amber)}.badge.medium{color:#fff;background:var(--blue)}.badge.green{color:#fff;background:var(--green)}.source-link{color:inherit;text-decoration:none}.source-link:hover{text-decoration:underline}.map-canvas{position:relative;aspect-ratio:25 / 9;height:auto;max-height:min(36vh,390px);overflow:hidden;border-radius:0 0 var(--radius) var(--radius);background:#b8d6ee}.map-canvas-expanded{aspect-ratio:25 / 9;width:100%;height:auto;max-height:none;min-height:0}.map-tile,.map-scrim{position:absolute}.map-tile{z-index:0;display:block;object-fit:cover;filter:saturate(1.04) contrast(1.02)}.map-scrim{z-index:1;inset:0;background:linear-gradient(180deg,#ffffff05,#ffffff14),radial-gradient(circle at 50% 50%,#009fe305,#0026640f);pointer-events:none}.map-layer-chips,.map-tools,.map-popup{position:absolute;z-index:7}.map-layer-chips{top:10px;left:10px;display:flex;gap:8px;max-width:calc(100% - 92px)}.map-layer-chips span{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border:1px solid rgba(5,105,129,.22);border-radius:7px;color:#056981;background:#ffffffeb;box-shadow:0 4px 12px #0026641f;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.map-layer-chips span:before{content:"";width:13px;height:9px;margin-right:6px;clip-path:polygon(0 100%,25% 15%,70% 15%,100% 100%);background:currentColor;opacity:.82}.map-tools{top:10px;right:10px;display:grid;overflow:hidden;border:1px solid rgba(0,38,100,.14);border-radius:5px;background:#fffffff2;box-shadow:0 6px 16px #00266429}.map-tools button{display:grid;width:36px;height:36px;place-items:center;border:0;color:var(--ink);border-bottom:1px solid rgba(0,38,100,.12);background:transparent;font-size:var(--font-size-subtitle);font-weight:var(--font-weight-bold)}.map-tools button:hover{background:#0026640f}.map-tools button:last-child{border-bottom:0}.route-overlay{position:absolute;inset:0;z-index:3;width:100%;height:100%;overflow:visible;pointer-events:none}.route-line{fill:none;stroke:#2563a8b8;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px rgba(255,255,255,.95)) drop-shadow(0 4px 8px rgba(0,38,100,.18))}.route-line.air{stroke:#705cb0c7;stroke-dasharray:9 6}.route-line.road{stroke:#48804fcc;stroke-dasharray:5 5}.route-line.ocean{stroke:#2563a8b8}.route-mode-marker{color:#fff;filter:drop-shadow(0 2px 5px rgba(0,38,100,.22))}.route-mode-marker circle{fill:#2563a8;stroke:#fff;stroke-width:3;vector-effect:non-scaling-stroke}.route-mode-marker.air circle{fill:#705cb0}.route-mode-marker.road circle{fill:#48804f}.route-mode-marker-icon{overflow:visible;fill:currentColor}.route-mode-marker-icon .transport-mode-icon-cutout{fill:#ffffff61}.map-node{fill:var(--dsv-blue);stroke:#fff;stroke-width:4;vector-effect:non-scaling-stroke;filter:drop-shadow(0 5px 8px rgba(23,33,43,.2))}.map-node.risk{fill:#009fe3;stroke:#fff;stroke-width:4;animation:pulse 1.8s infinite}.map-label-wrap{overflow:visible}.map-label{display:inline-block;min-width:0;padding:5px 8px;border:1px solid rgba(0,38,100,.08);border-radius:6px;color:var(--dsv-blue);background:#fffffff0;box-shadow:0 5px 14px #17212b1f;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-metric);white-space:nowrap}.map-popup{width:min(230px,34%);padding:9px 10px;border:1px solid rgba(5,105,129,.35);border-radius:7px;background:#fffffff5;box-shadow:0 10px 26px #0026642e}.map-popup:before{content:none}.map-popup strong,.map-popup span{display:block}.map-popup strong{color:var(--ink);font-size:var(--font-size-body-sm)}.map-popup span{margin-top:2px;color:var(--muted);font-size:var(--font-size-xs);font-style:italic;line-height:var(--line-height-heading)}.map-popup dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin:7px 0 0}.map-popup div{min-width:0}.map-popup dt,.map-popup dd{margin:0;color:var(--ink);font-size:var(--font-size-2xs)}.map-popup dt{color:var(--muted)}.map-popup dd{max-width:100%;overflow:hidden;font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.osm-attribution{position:absolute;left:8px;bottom:6px;z-index:6;padding:3px 6px;border-radius:4px;color:#002664b8;background:#ffffffdb;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.empty-map{display:grid;min-height:inherit;place-items:center;color:var(--muted)}@keyframes pulse{0%{box-shadow:0 0 #c2413570}to{box-shadow:0 0 0 22px #c2413500}}.resolver-details,.impact-list,.alert-draft{padding:14px 16px}.alert-modal .alert-draft{padding:16px 18px}.resolver-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;margin-bottom:12px}.resolver-metric{min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fafafa}.resolver-metric span{display:block;overflow:hidden;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.resolver-metric strong{display:block;overflow:hidden;margin-top:4px;font-size:var(--font-size-metric-sm);line-height:var(--line-height-metric-tight);text-overflow:ellipsis;white-space:nowrap}.confidence-breakdown{display:grid;gap:12px;margin-bottom:16px;padding:13px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.confidence-breakdown header,.confidence-list article>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.confidence-breakdown header strong{font-size:var(--font-size-body-lg)}.confidence-breakdown header span,.confidence-list article span{color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.confidence-list{display:grid;gap:10px}.confidence-list article{display:grid;gap:6px}.confidence-list article strong{font-size:var(--font-size-body)}.confidence-list meter{width:100%;height:8px}.confidence-list p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.risk-breakdown{border-color:#0081c83d;background:#f7fbff}.risk-domain-panel{display:grid;gap:8px;margin-bottom:12px;padding:12px 13px;border:1px solid #d7e2f2;border-radius:var(--radius);background:#f4f8ff}.risk-domain-panel header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.risk-domain-panel strong{font-size:var(--font-size-body-lg)}.risk-domain-panel span{color:var(--dsv-blue);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.risk-domain-panel p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.local-source-panel{display:grid;gap:10px;margin:12px 0 0;padding:13px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.local-source-panel>header,.local-source-list article>div{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.local-source-panel>header strong,.local-source-list article strong{font-size:var(--font-size-body-lg)}.local-source-panel>header span,.local-source-list article>div span{color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.local-source-list{display:grid;gap:10px}.local-source-list article{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafafa}.local-source-list dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.local-source-list dl div{min-width:0}.local-source-list dt{color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.local-source-list dd{overflow:hidden;margin:3px 0 0;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);text-overflow:ellipsis;white-space:nowrap}.local-source-panel p,.local-source-list p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.evidence-list,.action-list{display:grid;gap:8px;padding:0;margin:12px 0 0;list-style:none}.evidence-list li,.action-list li{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:start;color:var(--ink);font-size:var(--font-size-body)}.evidence-list li:before,.action-list li:before{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--accent);content:""}.impact-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.impact-card{display:grid;gap:8px;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.impact-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.impact-card strong{font-size:var(--font-size-body-lg)}.route{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.route-node{display:inline-flex;align-items:center;min-height:24px}.route-mode{display:inline-flex;align-items:center;gap:4px;min-height:22px;padding:0 7px;border:1px solid var(--line);border-radius:5px;color:#fff;font-size:var(--font-size-xs);letter-spacing:0}.route-mode-between{justify-content:center;width:20px;height:20px;min-height:20px;padding:0;border-radius:999px;box-shadow:0 1px 4px #00266429}.route-mode-between:focus-visible{outline:2px solid rgba(0,159,227,.45);outline-offset:2px}.transport-mode-icon{width:13px;height:13px;flex:0 0 auto;fill:currentColor}.transport-mode-icon-cutout{fill:#ffffff59}.route-mode.air{background:#705cb0;border-color:#705cb0}.route-mode.road{background:#48804f;border-color:#48804f}.route-mode.ocean{background:#2563a8;border-color:#2563a8}.timeline-list{display:grid;gap:0;padding:14px 16px;margin:0;list-style:none}.timeline-list li{position:relative;display:grid;min-width:0;gap:5px;padding:0 0 16px 24px}.timeline-list li:last-child{padding-bottom:0}.timeline-list li:before{position:absolute;top:4px;left:2px;width:9px;height:9px;border:3px solid #ffffff;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px #0026642e;content:""}.timeline-list li:after{position:absolute;top:18px;bottom:0;left:7px;width:1px;background:var(--line);content:""}.timeline-list li:last-child:after{content:none}.timeline-list div{display:flex;min-width:0;justify-content:space-between;gap:12px}.timeline-list strong{min-width:0;font-size:var(--font-size-body)}.timeline-list span{max-width:48%;overflow:hidden;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);text-align:right;text-overflow:ellipsis;white-space:nowrap}.timeline-list p,.playbook-body p{overflow-wrap:anywhere;margin:0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-body)}.shipment-persona-body{display:grid;gap:12px;padding:14px 16px}.shipment-persona-detail{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.shipment-persona-detail summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;color:var(--ink);background:#fafafa;cursor:pointer;list-style:none}.shipment-persona-detail summary::-webkit-details-marker{display:none}.shipment-persona-detail summary>span:first-child{min-width:0;color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-label)}.shipment-persona-detail summary strong{display:block;color:var(--ink);font-size:var(--font-size-body-lg)}.shipment-persona-context{display:grid;gap:8px;padding:13px 14px;border-top:1px solid var(--line)}.shipment-persona-context p,.shipment-persona-card p{margin:0;color:var(--muted);font-size:var(--font-size-body-sm);line-height:var(--line-height-body)}.shipment-persona-groups{display:grid;gap:14px;padding:0 14px 14px}.shipment-persona-group{display:grid;gap:9px}.shipment-persona-group>header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:12px;border-top:1px solid var(--line)}.shipment-persona-group>header strong{font-size:var(--font-size-body)}.shipment-persona-group>header span{color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.shipment-persona-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shipment-persona-card{display:grid;align-content:start;gap:8px;min-width:0;padding:11px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;background:#fff}.shipment-persona-card div>strong{display:block;margin-top:3px;font-size:var(--font-size-body);line-height:var(--line-height-heading)}.action-list.compact{gap:6px;margin-top:0}.action-list.compact li{grid-template-columns:8px 1fr;gap:8px;font-size:var(--font-size-body-sm);line-height:var(--line-height-label)}.action-list.compact li:before{width:6px;height:6px;margin-top:5px}.playbook-body{display:grid;gap:14px;padding:14px 16px}.playbook-data{display:flex;flex-wrap:wrap;gap:8px}.playbook-data span{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:#fafafa;font-size:var(--font-size-body-sm);font-weight:var(--font-weight-bold)}.playbook-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.playbook-columns article{min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.playbook-columns article>strong{display:block;font-size:var(--font-size-body)}.alert-draft{display:grid;gap:16px}.alert-box{padding:16px;border-left:4px solid var(--accent);border-radius:var(--radius);background:#f7fbff}.alert-box h4{margin:0 0 8px;font-size:var(--font-size-metric-sm)}.impact-window{display:grid;gap:10px;padding:12px 14px;border:1px solid rgba(0,102,179,.14);border-radius:var(--radius);background:#f8fbff}.impact-window>div{display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between;align-items:baseline}.impact-window strong{font-size:var(--font-size-body)}.impact-window span{color:var(--dsv-blue);font-size:var(--font-size-body);font-weight:var(--font-weight-bold)}.impact-window.ended{border-color:#4b556338;background:#f7f7f8}.impact-window.ended span{color:#4b5563}.impact-window.open{border-color:#b4530933;background:#fffbeb}.impact-window.open span{color:#7a4a00}.impact-window dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;margin:0}.impact-window dl div{display:grid;gap:3px;min-width:0}.impact-window dt,.impact-window dd{margin:0;font-size:var(--font-size-sm)}.impact-window dt{color:var(--muted);font-weight:var(--font-weight-bold);text-transform:uppercase}.impact-window dd{color:var(--ink);font-weight:var(--font-weight-bold)}.alert-meta{display:flex;flex-wrap:wrap;gap:8px}.empty-state{padding:24px;color:var(--muted);text-align:center}.loading-panel{display:grid;place-items:center;min-height:260px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;color:var(--muted);box-shadow:var(--shadow);font-weight:var(--font-weight-bold)}.loading-panel-content{display:grid;justify-items:center;gap:12px;max-width:460px;padding:24px;text-align:center}.loading-panel-content span{color:var(--muted);font-size:.92rem;font-weight:var(--font-weight-semibold)}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:#0000005c}.alert-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(860px,100%);max-height:min(860px,calc(100vh - 48px));overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:0 24px 60px #00000042}.map-modal-backdrop{padding:18px}.map-modal{display:grid;grid-template-rows:auto auto;width:min(1280px,calc((100dvh - 132px) * 25 / 9),100%);max-height:calc(100dvh - 36px);overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:0 24px 60px #00000047}.map-modal-body{display:grid;min-height:0;background:#fff}.map-modal-header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}.map-modal-header h3{margin:0;font-size:var(--font-size-metric-sm);line-height:var(--line-height-heading)}.map-modal-actions{display:flex;flex-shrink:0;align-items:center;gap:12px}.map-modal-actions span{color:var(--muted);font-size:var(--font-size-body);font-weight:var(--font-weight-bold)}.map-modal .map-canvas{width:100%;max-height:calc(100dvh - 132px);border-radius:0}.map-modal .icon-button{width:44px;height:44px}.map-modal .map-popup{width:min(320px,32%)}.map-modal .map-popup strong{font-size:var(--font-size-label-lg)}.map-modal .map-popup span{font-size:var(--font-size-body-sm)}.map-modal .map-popup dt,.map-modal .map-popup dd{font-size:var(--font-size-sm)}.alert-modal-header,.alert-modal-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.alert-modal-header h3{margin:0;font-size:var(--font-size-metric-sm);line-height:var(--line-height-heading)}.alert-modal-footer{justify-content:flex-end;border-top:1px solid var(--line);border-bottom:0}.alert-modal .alert-panel{min-height:0;overflow:auto}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;font-size:var(--font-size-page-title);line-height:var(--line-height-metric)}.icon-button:hover{background:#f5f5f5}.page-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px}.page-header-copy{min-width:0;max-width:760px}.page-header .page-eyebrow{margin:0 0 5px;color:var(--muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:0;text-transform:uppercase}.page-header .page-title{margin:0;color:var(--ink);font-size:var(--font-size-section-title);line-height:var(--line-height-heading);font-weight:var(--font-weight-bold)}.page-header .page-description{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:var(--font-size-body);line-height:var(--line-height-copy)}.page-header-actions{display:grid;gap:12px;align-items:flex-start;justify-items:end;flex-shrink:0}.page-header-actions>span{color:var(--muted);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-semibold);text-align:right;white-space:nowrap}.page-summary{display:grid;gap:8px}.page-summary>span{min-width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.page-summary>span>strong{display:block;color:var(--ink);font-size:var(--font-size-card-title);line-height:var(--line-height-metric);font-weight:var(--font-weight-bold);white-space:nowrap}.all-disruptions-board>.page-header,.shipments-board>.page-header,.source-strategy-board>.page-header,.refresh-log-board>.page-header{border-bottom:1px solid var(--line)}.disrupted-shipments-board>.page-header,.personas-page>.page-header,.risk-domain-board>.page-header,.topbar.page-header{margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.topbar.page-header{margin-bottom:16px}.shipments-header-aside,.all-disruptions-actions{grid-template-columns:auto auto}.shipments-summary{grid-template-columns:repeat(2,auto) max-content}.watch-summary,.disrupted-shipments-summary,.persona-summary-strip{grid-template-columns:repeat(3,auto)}.risk-domain-summary{grid-template-columns:repeat(4,auto)}.source-strategy-header .page-header-actions>span{padding:8px 10px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fafafa}@media(max-width:1320px){.dashboard-grid{grid-template-columns:minmax(520px,1fr) minmax(340px,1fr)}.source-strategy-layout,.source-feed-grid,.persona-card-grid,.persona-source-list,.risk-domain-grid,.risk-domain-event-list,.watch-list,.watch-filter-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.risk-domain-filter-strip{grid-template-columns:minmax(180px,320px)}.watch-meta-grid{grid-template-columns:1fr}}@media(max-width:1120px){.workflow-ribbon{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.workflow-ribbon>.workflow-step{padding-right:0}.workflow-step-arrow{display:none}.dashboard-grid{grid-template-columns:1fr;grid-template-areas:"events" "map" "resolver" "timeline" "impact" "persona-playbook" "playbook"}.disrupted-shipments-grid{grid-template-columns:1fr;grid-template-areas:"shipments" "shipment-map" "shipment-detail" "shipment-playbook"}.event-column,.shipment-list-panel{position:static;max-height:none;overflow:visible}.shipment-impact-list{max-height:none;overflow:visible}.source-strategy-layout,.source-feed-grid,.persona-card-grid,.persona-source-list,.risk-domain-grid,.risk-domain-event-list,.watch-list,.watch-filter-strip{grid-template-columns:1fr}.personas-hero,.persona-group-section>header,.shipments-header,.disrupted-shipments-header{display:grid;grid-template-columns:1fr}.persona-summary-strip,.persona-operating-model,.shipments-summary,.disrupted-shipments-summary{grid-template-columns:1fr}.shipment-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.all-disruptions-header,.risk-domain-header,.refresh-log-header{display:grid}.all-disruptions-actions,.shipments-header-aside{display:grid;justify-items:start}.refresh-log-actions{justify-items:start}.watch-summary,.shipments-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.risk-domain-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.refresh-log-list.succeeded,.reference-import-list,.impact-list,.shipment-persona-grid{grid-template-columns:1fr}.refresh-change-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.playbook-columns,.shipment-detail-summary{grid-template-columns:1fr}}@media(max-width:900px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;display:flex;width:min(280px,86vw);height:100dvh;box-shadow:16px 0 36px #0000002e}.sidebar-collapsed .sidebar{display:none}.app-shell:not(.sidebar-collapsed) .sidebar-scrim{position:fixed;inset:0;z-index:35;display:block;padding:0;border:0;background:#00000047;cursor:pointer}.dashboard-grid{grid-template-columns:1fr;grid-template-areas:"events" "map" "resolver" "timeline" "impact" "persona-playbook" "playbook"}}@media(max-width:760px){:root{--shell-header-height: 47.6px}.workflow-ribbon{grid-template-columns:1fr}.workspace-inner{padding:18px}.shell-header{padding:0 18px}.shell-title,.shell-actions{gap:10px}.shipment-menu,.shipment-menu-status,.user-pill{display:none}.brand{grid-template-columns:auto 1fr;padding:0 16px}.brand-logo{height:30px;max-width:62px}.brand h1{font-size:var(--font-size-body)}.nav-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nav-link{min-height:44px;padding:8px 10px;font-size:var(--font-size-body-lg)}.source-health{display:none}.topbar,.control-strip{display:grid}.control-strip{grid-template-columns:1fr;align-items:stretch;justify-content:stretch}.recent-ended-toggle{justify-content:flex-start}.refresh-change-metrics,.refresh-log-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-import-card dl,.audit-trail-entry dl,.refresh-change-summary{grid-template-columns:1fr}.dashboard-grid{min-width:0;grid-template-columns:1fr;grid-template-areas:"events" "map" "resolver" "timeline" "impact" "persona-playbook" "playbook"}.event-column{position:static}.event-title{grid-template-columns:1fr;display:grid}.event-title-actions{justify-content:start;flex-wrap:wrap}.event-select-button{min-height:44px}.event-body-button{min-height:0}.event-list{max-height:none}.resolver-grid,.impact-list,.persona-card-columns{grid-template-columns:1fr}.segmented-control{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.segmented-control button{padding:0 6px;font-size:var(--font-size-body)}.search-field{width:100%;grid-template-columns:1fr}.topbar-actions{justify-content:stretch;width:100%}.all-disruptions-header>div,.all-disruptions-actions,.shipments-header>div,.shipments-header-aside,.risk-domain-header>div{min-width:0;width:100%}.all-disruptions-actions,.shipments-header-aside{grid-template-columns:1fr;justify-items:stretch}.watch-summary,.shipments-summary{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.risk-domain-summary{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.watch-summary span,.shipments-summary span,.risk-domain-summary span{min-width:0;text-align:left}.all-disruptions-actions .last-updated-label{grid-column:auto;justify-self:start;text-align:left;white-space:normal}.secondary-button,.primary-button{flex:1}.map-heading-actions{gap:8px}.map-expand-button,.map-tools button{width:44px;height:44px}.map-panel>.map-canvas{aspect-ratio:1 / 1;height:auto;max-height:none}.map-layer-chips{flex-wrap:wrap;max-width:calc(100% - 112px)}.map-layer-chips span{min-height:25px;padding:0 8px}.map-popup{width:min(220px,56%)}.map-modal-backdrop{padding:10px}.map-modal{max-height:calc(100dvh - 20px)}.map-modal-header{display:grid;gap:10px;padding:12px}.map-modal-actions{justify-content:space-between}.map-modal .map-popup{width:min(260px,62%)}.map-modal .map-canvas{max-height:calc(100dvh - 124px)}.timeline-list div{display:grid;gap:2px}.timeline-list span{max-width:100%;text-align:left;white-space:normal;overflow-wrap:anywhere}}
