/* =====================================================================
   COVSAR Mission Suite — Design System v2
   Loaded last. Screen-only skin: printed forms and PDFs are untouched.
   All selectors are scoped to body.theme-v2 so legacy styles remain as a
   fallback and no markup, form field, or script hook is changed.
   ===================================================================== */

@font-face{font-family:"Inter Suite";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("inter-var-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter Suite";font-style:normal;font-weight:100 900;font-display:swap;
  src:url("inter-var-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@media screen{
:root{
  /* Neutrals — cool slate */
  --c-0:#ffffff; --c-25:#fbfcfd; --c-50:#f6f8fa; --c-75:#f0f3f7; --c-100:#e9edf2; --c-150:#dfe5ec;
  --c-200:#d3dbe4; --c-300:#b8c3cf; --c-400:#8d9aab; --c-500:#66758a; --c-600:#4b5a6e;
  --c-700:#334256; --c-800:#1f2d40; --c-900:#111c2c;
  /* Chrome (header / sidebar) */
  --chrome-900:#0a1524; --chrome-800:#0f1d30; --chrome-700:#16283f; --chrome-600:#1e3450;
  --chrome-line:rgba(255,255,255,.08); --chrome-text:#e6edf6; --chrome-muted:#8fa1b8;
  /* Brand + semantic */
  --brand:#2456d3; --brand-600:#1d47b4; --brand-700:#183b95; --brand-50:#eef3fe; --brand-100:#dce6fd; --brand-ring:rgba(36,86,211,.22);
  --sar:#e8590c; --sar-600:#c94a07; --sar-50:#fff4ec; --sar-100:#ffe4d1;
  --ok:#14804a; --ok-50:#ecf8f1; --ok-100:#cdeedb;
  --warn:#a35b00; --warn-50:#fff8eb; --warn-100:#fde9c3;
  --danger:#c62f3d; --danger-600:#a82431; --danger-50:#fdf1f2; --danger-100:#f8d4d8;
  --info-50:#eef5fd;
  /* Shape + depth */
  --r-xs:5px; --r-sm:7px; --r-md:9px; --r-lg:12px; --r-xl:16px;
  --sh-xs:0 1px 2px rgba(16,28,45,.05);
  --sh-sm:0 1px 2px rgba(16,28,45,.05),0 1px 3px rgba(16,28,45,.06);
  --sh-md:0 4px 12px -2px rgba(16,28,45,.08),0 2px 4px -2px rgba(16,28,45,.05);
  --sh-lg:0 18px 40px -12px rgba(16,28,45,.22);
  --font:"Inter Suite",-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  --control:38px;
  /* Legacy variable remap so older rules inherit the new palette */
  --navy:#0f1d30; --navy2:#16283f; --blue:#2456d3; --blue2:#2f63e0; --blueSoft:#eef3fe;
  --line:#dfe5ec; --text:#111c2c; --muted:#66758a; --bg:#f3f5f8; --card:#fff; --green:#14804a;
}

/* ---------- Base ---------- */
body.theme-v2{font-family:var(--font);font-size:14px;line-height:1.5;color:var(--c-900);background:var(--c-50);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
  font-feature-settings:"cv11","ss01","ss03";}
body.theme-v2 :is(button,input,select,textarea){font-family:inherit}
body.theme-v2 ::selection{background:var(--brand-100)}
body.theme-v2 :is(td,th,.module-summary-value,.task-summary-value,.metric-v,.approved-metric-value,input,.num){font-variant-numeric:tabular-nums}
body.theme-v2 :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-sm)}
body.theme-v2 .muted{color:var(--c-500)}
body.theme-v2 hr{border:0;border-top:1px solid var(--c-150);margin:18px 0}

/* ---------- Beta notice (slim, persistent) ---------- */
body.theme-v2 .api-beta-banner{display:flex;align-items:center;gap:12px;min-height:34px;padding:6px 22px;margin:0;
  background:repeating-linear-gradient(-45deg,#fbbf24 0 14px,#f9b81b 14px 28px);color:#3b2a00;border:0;box-shadow:none;font-size:12.5px;line-height:1.35}
body.theme-v2 .api-beta-badge{background:#1d1503;color:#fcd34d;border-radius:5px;padding:3px 9px;font-size:10.5px;font-weight:800;letter-spacing:.06em;white-space:nowrap;box-shadow:none}
body.theme-v2 .api-beta-copy{font-size:12.5px;font-weight:500;color:#3b2a00}
body.theme-v2 .api-beta-copy b{font-weight:750}

/* ---------- Header ---------- */
body.theme-v2 .topbar{height:64px;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 22px 0 18px;
  background:var(--chrome-900);background-image:linear-gradient(90deg,var(--chrome-900),var(--chrome-800));
  border-bottom:1px solid var(--chrome-line);box-shadow:none;color:var(--chrome-text);position:relative;z-index:5}
body.theme-v2 .topbar .brand{display:flex;align-items:center;gap:14px;min-width:0;color:inherit}
body.theme-v2 .topbar .brand-marks{display:flex;align-items:center}
body.theme-v2 .topbar img{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 2px var(--chrome-900),0 0 0 3px rgba(255,255,255,.14)}
body.theme-v2 .topbar .brand-marks img+img{margin-left:-8px}
body.theme-v2 .topbar .brand-copy{display:flex;flex-direction:column;min-width:0}
body.theme-v2 .app-title{font-size:15px;font-weight:750;letter-spacing:.08em;line-height:1.2;color:#fff;white-space:nowrap;display:flex;align-items:center;gap:8px}
body.theme-v2 .app-version{font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--chrome-muted);background:rgba(255,255,255,.06);border:1px solid var(--chrome-line);padding:1px 7px;border-radius:999px}
body.theme-v2 .api-test-pill{font-size:10px;font-weight:800;letter-spacing:.08em;color:#fcd34d;background:rgba(252,211,77,.1);border:1px solid rgba(252,211,77,.35);padding:1px 7px;border-radius:999px}
body.theme-v2 .app-sub{margin-top:2px;font-size:12px;font-weight:500;color:var(--chrome-muted);letter-spacing:.01em}
body.theme-v2 .topbar-right{display:flex;align-items:center;gap:12px;min-width:0}
body.theme-v2 .mission-context{display:flex;flex-direction:column;justify-content:center;min-width:0;max-width:420px;padding:6px 14px 6px 12px;border-radius:var(--r-md);
  background:rgba(255,255,255,.05);border:1px solid var(--chrome-line);color:var(--chrome-text);transition:background .15s,border-color .15s;border-left:3px solid var(--sar)}
body.theme-v2 .mission-context:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.16);border-left-color:var(--sar)}
body.theme-v2 .mission-context.is-empty{border-left-color:var(--c-500)}
body.theme-v2 .mission-context-label{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--chrome-muted)}
body.theme-v2 .mission-context-value{display:flex;gap:8px;align-items:baseline;min-width:0;font-size:13px;white-space:nowrap}
body.theme-v2 .mission-context-value b{font-weight:700;color:#fff;font-variant-numeric:tabular-nums}
body.theme-v2 .mission-context-name{overflow:hidden;text-overflow:ellipsis;color:#c5d2e2}
body.theme-v2 .topbar .ready{display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid rgba(74,222,128,.25);background:rgba(74,222,128,.08);color:#86efac;font-size:12px;font-weight:650;white-space:nowrap}
body.theme-v2 .topbar .ready-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.18)}

/* ---------- Shell + sidebar ---------- */
body.theme-v2 .shell{grid-template-columns:268px minmax(0,1fr);min-height:calc(100vh - 98px);
  background:linear-gradient(90deg,var(--chrome-800) 0 268px,var(--c-50) 268px)}
body.theme-v2 .sb{display:flex;flex-direction:column;background:var(--chrome-800);border-right:1px solid var(--chrome-line);padding:18px 12px 14px;color:var(--chrome-text);
  position:sticky;top:0;align-self:start;max-height:100vh;min-height:calc(100vh - 98px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--chrome-600) transparent}
body.theme-v2 .sb svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
body.theme-v2 .sb-label{font-size:10.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#6f829b;margin:2px 10px 8px}
body.theme-v2 .sb-sep{height:1px;background:var(--chrome-line);margin:14px 6px 16px}
body.theme-v2 .sb-title{display:block;font-size:13.5px;font-weight:550;line-height:1.3;color:inherit}
body.theme-v2 .sb-sub{display:block;font-size:11.5px;line-height:1.3;color:#7d90a8;margin-top:1px}

body.theme-v2 .sb-primary{display:flex;align-items:center;gap:11px;margin:0 0 6px;padding:10px;border-radius:var(--r-md);
  background:rgba(255,255,255,.035);border:1px solid var(--chrome-line);color:var(--chrome-text);transition:background .15s,border-color .15s}
body.theme-v2 .sb-primary:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.15)}
body.theme-v2 .sb-primary-icon{width:34px;height:34px;flex:0 0 34px;border-radius:8px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(180deg,#f2701f,#d6500a);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 1px 2px rgba(0,0,0,.35)}
body.theme-v2 .sb-primary-copy{flex:1;min-width:0}
body.theme-v2 .sb-primary .sb-title{font-weight:650;color:#fff}
body.theme-v2 .sb-arrow{display:grid;place-items:center;color:#6f829b;transition:transform .15s,color .15s}
body.theme-v2 .sb-arrow svg{width:16px;height:16px}
body.theme-v2 .sb-primary:hover .sb-arrow{color:#fff;transform:translateX(2px)}
body.theme-v2 .sb-primary.active{background:rgba(232,89,12,.13);border-color:rgba(232,89,12,.6)}
body.theme-v2 .sb-primary.active .sb-sub{color:#f5bf9b}
body.theme-v2 .sb-primary.active .sb-arrow{color:#f5bf9b}

body.theme-v2 :is(.sb-item,.sb-group>summary){display:flex;align-items:center;gap:11px;padding:8px 10px;margin:1px 0;border-radius:var(--r-sm);color:#c3cfdd;position:relative;cursor:pointer;list-style:none}
body.theme-v2 .sb-group>summary::-webkit-details-marker{display:none}
body.theme-v2 :is(.sb-item,.sb-group>summary):hover{background:rgba(255,255,255,.055);color:#fff}
body.theme-v2 .sb-icon{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;color:inherit}
body.theme-v2 .sb-group>summary .sb-title{flex:1}
body.theme-v2 .sb-chevron{display:grid;place-items:center;color:#5f7290;transition:transform .18s ease}
body.theme-v2 .sb-chevron svg{width:15px;height:15px}
body.theme-v2 .sb-group[open]>summary{color:#fff}
body.theme-v2 .sb-group[open] .sb-chevron{transform:rotate(90deg);color:#8fa1b8}
body.theme-v2 .sb-group-items{margin:2px 0 8px 19px;padding-left:12px;border-left:1px solid var(--chrome-line)}
body.theme-v2 .sb-subitem{display:block;padding:6px 10px;margin:1px 0;border-radius:var(--r-sm);color:#b3c1d2;position:relative}
body.theme-v2 .sb-subitem .sb-title{font-size:13px;font-weight:500}
body.theme-v2 .sb-subitem .sb-sub{font-size:11px;color:#6f829b}
body.theme-v2 .sb-subitem:hover{background:rgba(255,255,255,.055);color:#fff}
body.theme-v2 :is(.sb-item,.sb-subitem).active{background:rgba(59,110,235,.24);color:#fff}
body.theme-v2 :is(.sb-item,.sb-subitem).active .sb-sub{color:#a9bde0}
body.theme-v2 .sb-item.active::before{content:"";position:absolute;left:-12px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:var(--sar)}
body.theme-v2 .sb-subitem.active::before{content:"";position:absolute;left:-14px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--sar)}
body.theme-v2 .sb-foot{margin-top:auto;padding:14px 10px 2px;border-top:1px solid var(--chrome-line);display:flex;flex-direction:column;gap:2px}
body.theme-v2 .sb-foot b{font-size:11.5px;font-weight:650;color:#c3cfdd;letter-spacing:.02em}
body.theme-v2 .sb-foot span{font-size:11px;color:#6f829b}

/* ---------- Main canvas ---------- */
body.theme-v2 .main{padding:28px 32px 48px;max-width:1360px;width:100%;margin:0 auto;min-width:0}
body.theme-v2.taf-generator-page .main{max-width:1440px}

/* Page header */
body.theme-v2 .page-head{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:700;letter-spacing:-.018em;line-height:1.2;color:var(--c-900);margin:0;text-transform:none}
body.theme-v2 .page-head svg{width:22px;height:22px;color:var(--brand)}
body.theme-v2 .page-rule{display:none}
body.theme-v2 .page-desc{font-size:14px;line-height:1.55;color:var(--c-500);margin:6px 0 20px;max-width:78ch}
body.theme-v2 :is(.module-page-head,.polished-module-head,.task-page-head,.comms-page-head,.option2-title-row,.clue-detail-head){margin-bottom:18px;padding-bottom:0;border:0;background:none;box-shadow:none}
body.theme-v2 :is(.module-page-head,.polished-module-head,.task-page-head,.comms-page-head) .page-desc{margin-bottom:0}

/* ---------- Cards / sections ---------- */
body.theme-v2 :is(.card,.module-card,.polished-section,.drive-card,.panel,.aar-section,.clue-section){background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .card{padding:20px 22px;margin-bottom:16px}
body.theme-v2 .card .card{box-shadow:none;background:var(--c-25)}
body.theme-v2 :is(.card-title,.clue-section-title,.approved-subsection-title,.summary-grid-heading){font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0 0 14px;line-height:1.35}
body.theme-v2 .card-title{display:flex;align-items:center;gap:8px}
body.theme-v2 .section-headline{margin-bottom:14px}
body.theme-v2 .section-headline .card-title{margin-bottom:0}
body.theme-v2 details>summary.card-title{cursor:pointer}
body.theme-v2 .summary-collapse-title{cursor:pointer;user-select:none}
body.theme-v2 .summary-collapse-title::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:1.75px solid currentColor;border-bottom:1.75px solid currentColor;transform:rotate(-45deg);transition:transform .15s;opacity:.65;vertical-align:2px}
body.theme-v2 .summary-collapse-title[aria-expanded="true"]::after{transform:rotate(45deg);vertical-align:4px}

/* ---------- Forms ---------- */
body.theme-v2 .field :where(input:not([type=checkbox],[type=radio],[type=hidden]),select,textarea){width:100%}
body.theme-v2 .field{margin-bottom:14px}
body.theme-v2 :is(.field>label,label.field-label,.resp-card label){font-size:12.5px;font-weight:600;color:var(--c-700);margin-bottom:6px;letter-spacing:0}
body.theme-v2 .field small,body.theme-v2 .help,body.theme-v2 .hint{color:var(--c-500);font-size:12px;line-height:1.45}
body.theme-v2 :where(input:not([type=checkbox],[type=radio],[type=hidden],[type=file],[type=range],[type=color],[type=submit],[type=button]),select,textarea){
  font-size:14px;color:var(--c-900);background-color:var(--c-0);border:1px solid var(--c-200);border-radius:var(--r-sm);
  box-shadow:var(--sh-xs);padding-left:11px;padding-right:11px;transition:border-color .12s,box-shadow .12s,background-color .12s}
body.theme-v2 :where(input:not([type=checkbox],[type=radio],[type=hidden],[type=file],[type=range],[type=color],[type=submit],[type=button]),select){min-height:var(--control);padding-top:7px;padding-bottom:7px}
body.theme-v2 textarea{line-height:1.5;padding:9px 11px}
body.theme-v2 :is(input,select,textarea)::placeholder{color:var(--c-400);opacity:1}
body.theme-v2 :where(input:not([type=checkbox],[type=radio],[type=file]),select,textarea):where(:hover:not(:disabled,[readonly])){border-color:var(--c-300)}
body.theme-v2 :where(input:not([type=checkbox],[type=radio],[type=file]),select,textarea):focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 :where(input,select,textarea):where(:disabled,[readonly]),body.theme-v2 .readonly-field{background-color:var(--c-50);color:var(--c-600);box-shadow:none}
body.theme-v2 select:where(:not([multiple])){appearance:none;-webkit-appearance:none;padding-right:34px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2366758a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;background-size:16px}
body.theme-v2 input[type=file]{font-size:13px;color:var(--c-600);padding:5px;border:1px dashed var(--c-300);border-radius:var(--r-sm);background:var(--c-25);width:100%;min-height:var(--control)}
body.theme-v2 input[type=file]:hover{border-color:var(--brand);background:var(--brand-50)}
body.theme-v2 input[type=file]::file-selector-button{font:inherit;font-size:12.5px;font-weight:600;color:var(--c-800);background:var(--c-0);border:1px solid var(--c-200);border-radius:6px;padding:5px 11px;margin-right:10px;cursor:pointer;box-shadow:var(--sh-xs)}
body.theme-v2 input[type=file]::file-selector-button:hover{background:var(--c-50)}
body.theme-v2 :is(input[type=checkbox],input[type=radio]){accent-color:var(--brand);width:16px;height:16px;vertical-align:-3px}

/* ---------- Buttons ---------- */
body.theme-v2 :is(button,.button,.btn,.button-link,.task-action-button,.comms-action-button,.clue-toolbar-btn,.mission-action-btn,.drive-btn,.cv-button,.weather-export,.weather-edit,.weather-underground,.summary-link-button,.secondary-link,.bulk-action-button,.outline-action,.neutral-action,.open-version-btn,.taf-module-home-link):not(.suite-nav-toggle):not(.ql-btn){
  font-family:inherit;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:0;min-height:var(--control);padding:8px 14px;
  border-radius:var(--r-sm);border:1px solid var(--c-200);background:var(--c-0);color:var(--c-800);box-shadow:var(--sh-xs);
  display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;text-decoration:none;
  transition:background-color .12s,border-color .12s,color .12s,box-shadow .12s,transform .06s}
body.theme-v2 :is(button,.button,.btn,.button-link,.task-action-button,.comms-action-button,.clue-toolbar-btn,.mission-action-btn,.drive-btn,.cv-button,.summary-link-button,.secondary-link,.bulk-action-button,.outline-action,.neutral-action,.open-version-btn,.taf-module-home-link):not(.suite-nav-toggle):not(:disabled):hover{background:var(--c-50);border-color:var(--c-300);color:var(--c-900)}
body.theme-v2 :is(button,.button,.btn):not(:disabled):active{transform:translateY(.5px)}
body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,button[type=submit].primary,.btn-primary){
  background:var(--brand);border-color:var(--brand-600);color:#fff;box-shadow:0 1px 2px rgba(29,71,180,.25),inset 0 1px 0 rgba(255,255,255,.12)}
body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary):not(:disabled):hover{background:var(--brand-600);border-color:var(--brand-700);color:#fff}
body.theme-v2 :is(.danger,.danger-outline,.delete-mission-btn,.small-delete,button.danger,.btn-danger){color:var(--danger);border-color:var(--danger-100);background:var(--c-0)}
body.theme-v2 :is(.danger,.danger-outline,.delete-mission-btn,.small-delete,button.danger,.btn-danger):not(:disabled):hover{background:var(--danger-50);border-color:#eeb0b7;color:var(--danger-600)}
body.theme-v2 :is(button,.button,.btn):disabled,body.theme-v2 :is(button,.button,.btn)[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}
body.theme-v2 :is(.task-icon-button,.table-icon-button,.unit-delete-btn){min-height:28px!important;min-width:28px;padding:4px 6px!important;font-size:12px!important;border-radius:6px!important}

/* ---------- Tables ---------- */
body.theme-v2 :is(.table-wrap,.task-table-wrap,.comms-table-wrap,.summary-tasklog-scroll,.taf-review-table){border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0);box-shadow:none}
body.theme-v2 table{font-size:13px;border-collapse:separate;border-spacing:0}
body.theme-v2 th{background:var(--c-50);color:var(--c-600);font-size:11px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;padding:9px 10px;border-bottom:1px solid var(--c-150);white-space:nowrap;text-align:left}
body.theme-v2 td{padding:9px 10px;border-bottom:1px solid var(--c-100);color:var(--c-800);vertical-align:middle}
body.theme-v2 tbody tr:hover>td{background:#f8faff}
body.theme-v2 tr:last-child>td{border-bottom:0}
body.theme-v2 td :is(input,select,textarea){box-shadow:none}

/* ---------- Alerts ---------- */
body.theme-v2 .alert{display:flex;align-items:flex-start;gap:10px;padding:11px 14px 11px 14px;border-radius:var(--r-md);border:1px solid var(--c-150);background:var(--c-0);
  font-size:13.5px;font-weight:500;line-height:1.45;color:var(--c-800);box-shadow:var(--sh-xs);margin:0 0 14px;border-left-width:4px}
body.theme-v2 .alert::before{content:"i";flex:0 0 18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;background:var(--brand);margin-top:1px}
body.theme-v2 .alert.success{background:var(--ok-50);border-color:var(--ok-100);border-left-color:var(--ok);color:#0d5531}
body.theme-v2 .alert.success::before{content:"✓";background:var(--ok)}
body.theme-v2 .alert:is(.error,.danger){background:var(--danger-50);border-color:var(--danger-100);border-left-color:var(--danger);color:#86202b}
body.theme-v2 .alert:is(.error,.danger)::before{content:"!";background:var(--danger)}
body.theme-v2 .alert:is(.warning,.warn){background:var(--warn-50);border-color:var(--warn-100);border-left-color:#d98a07;color:#6e3e00}
body.theme-v2 .alert:is(.warning,.warn)::before{content:"!";background:#d98a07}
body.theme-v2 .alert.info{background:var(--info-50);border-color:var(--brand-100);border-left-color:var(--brand);color:#173a8a}
body.theme-v2 .ready-box{background:var(--ok-50);border:1px solid var(--ok-100);color:#0d5531;border-radius:var(--r-md);font-weight:600}
body.theme-v2 .warn-box{background:var(--warn-50);border:1px solid var(--warn-100);color:#6e3e00;border-radius:var(--r-md);font-weight:600}

/* ---------- Metrics / stat tiles ---------- */
body.theme-v2 :is(.module-summary-card,.task-summary-card,.metric,.approved-metric-box,.personnel-metric,.sync-stat,.taf-option3-metric){
  background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);position:relative}
body.theme-v2 :is(.module-summary-value,.task-summary-value,.metric-v,.approved-metric-value){font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--c-900)}
body.theme-v2 :is(.module-summary-label,.task-summary-label,.metric-k,.approved-metric-label){font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-600)}
body.theme-v2 :is(.module-summary-sub,.task-summary-sub,.approved-metric-sub){font-size:12px;color:var(--c-500);font-weight:450}
body.theme-v2 :is(.module-summary-icon,.metric-icon){width:40px;height:40px;border-radius:10px;background:var(--brand-50);color:var(--brand);border:0;display:grid;place-items:center;flex:0 0 40px}
body.theme-v2 :is(.module-summary-icon,.metric-icon) svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Badges / pills ---------- */
body.theme-v2 :is(.pill,.badge,.status-pill,.stage-pill){display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:650;letter-spacing:.03em;background:var(--c-75);color:var(--c-700);border:1px solid var(--c-150)}
body.theme-v2 .pill.ready{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}

/* ---------- Feature strip (quiet footer) ---------- */
body.theme-v2 .feature-strip{margin-top:28px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;background:transparent;border:0;border-top:1px solid var(--c-150);border-radius:0;box-shadow:none;padding:18px 0 0}
body.theme-v2 .feature{display:flex;gap:10px;align-items:flex-start;padding:0 14px 0 0;border:0;background:none;min-height:0}
body.theme-v2 .feature+.feature{padding-left:14px;border-left:1px solid var(--c-150)}
body.theme-v2 .feature-icon{width:28px;height:28px;flex:0 0 28px;border-radius:7px;background:var(--c-75);color:var(--c-600);display:grid;place-items:center}
body.theme-v2 .feature-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.theme-v2 .feature b{display:block;font-size:12px;font-weight:650;color:var(--c-700);line-height:1.35}
body.theme-v2 .feature span{display:block;font-size:11.5px;color:var(--c-500);line-height:1.4;margin-top:2px}

/* ---------- TAF stepper (advanced workflow) ---------- */
body.theme-v2 .taf-module-shell{background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:20px;box-shadow:var(--sh-xs)}
body.theme-v2 .taf-module-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
body.theme-v2 .taf-module-eyebrow{font-size:11.5px;font-weight:750;letter-spacing:.1em;color:var(--sar)}
body.theme-v2 .taf-module-small{font-size:12.5px;color:var(--c-500)}
body.theme-v2 .taf-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;counter-reset:none}
body.theme-v2 .taf-step-card{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--c-150);background:var(--c-25);color:var(--c-700);box-shadow:none;min-width:0}
body.theme-v2 .taf-step-card:hover{border-color:var(--c-300);background:var(--c-0)}
body.theme-v2 .taf-step-card b{display:block;font-size:13px;font-weight:650;color:var(--c-900);line-height:1.25}
body.theme-v2 .taf-step-card small{display:block;font-size:11.5px;color:var(--c-500);line-height:1.3;margin-top:1px}
body.theme-v2 .taf-step-num{width:26px;height:26px;flex:0 0 26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--c-0);border:1.5px solid var(--c-300);color:var(--c-600)}
body.theme-v2 .taf-step-card.current{border-color:var(--brand);background:var(--brand-50);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 .taf-step-card.current .taf-step-num{background:var(--brand);border-color:var(--brand);color:#fff}
body.theme-v2 .taf-step-card.done .taf-step-num{background:var(--ok);border-color:var(--ok);color:#fff}


/* ---------- Headings shared by module pages ---------- */
body.theme-v2 .main h1{font-size:24px;font-weight:700;letter-spacing:-.018em;line-height:1.2;color:var(--c-900);margin:0}
body.theme-v2 .main h1+p{font-size:14px;color:var(--c-500);margin:6px 0 0;line-height:1.55}
body.theme-v2 .main :is(.card,.drive-card,.panel,section) h2{font-size:15px;font-weight:650;letter-spacing:-.005em;color:var(--c-900);line-height:1.35}
body.theme-v2 .page-step{display:inline-flex;align-items:center;height:22px;padding:0 9px;margin-right:4px;border-radius:999px;background:var(--brand-50);color:var(--brand);border:1px solid var(--brand-100);
  font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:4px}
body.theme-v2 .page-head.page-head-sub{font-size:17px;margin-top:8px}

/* ---------- Compact actions inside tables ---------- */
body.theme-v2 td :is(button,.button,.btn,a.button,.task-action-button,.open-version-btn,.mission-action-btn,.summary-link-button){min-height:30px;padding:5px 10px;font-size:12.5px;border-radius:6px}
body.theme-v2 td form{margin:0}

/* ---------- details / disclosure blocks ---------- */
body.theme-v2 .main details>summary{cursor:pointer}


/* ---------- Icons ---------- */
body.theme-v2 .ui-i{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px}
body.theme-v2 .ui-i.lg{width:20px;height:20px}

/* ---------- Button emphasis (beats the base rule's specificity) ---------- */
body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary,.task-save-button,.save-primary):not(.suite-nav-toggle):not(.ql-btn){
  background:var(--brand);border-color:var(--brand-600);color:#fff;box-shadow:0 1px 2px rgba(29,71,180,.25),inset 0 1px 0 rgba(255,255,255,.12)}
body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary,.task-save-button,.save-primary):not(.suite-nav-toggle):not(.ql-btn):not(:disabled):hover{background:var(--brand-600);border-color:var(--brand-700);color:#fff}
body.theme-v2 :is(.danger,.danger-outline,.delete-mission-btn,.small-delete,button.danger,.btn-danger,.delete-task):not(.suite-nav-toggle):not(.ql-btn){color:var(--danger);border-color:var(--danger-100);background:var(--c-0)}
body.theme-v2 :is(.danger,.danger-outline,.delete-mission-btn,.small-delete,button.danger,.btn-danger,.delete-task):not(.suite-nav-toggle):not(.ql-btn):not(:disabled):hover{background:var(--danger-50);border-color:#eeb0b7;color:var(--danger-600)}

/* ---------- Sortable table headers: buttons become plain header text ---------- */
body.theme-v2 th :is(button,.sort-header,.clue-header-sort,.comms-sort-header):not(.suite-nav-toggle):not(.ql-btn){
  all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;cursor:pointer;
  font:inherit;font-size:11px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;color:var(--c-600);white-space:nowrap;padding:0 10px 0 0}
body.theme-v2 th :is(button,.sort-header,.clue-header-sort,.comms-sort-header):hover{color:var(--brand)}
body.theme-v2 th :is(button,.sort-header,.clue-header-sort,.comms-sort-header):focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
body.theme-v2 :is(.sort-indicator,.clue-sort-indicator,.comms-sort-indicator){font-size:10px;color:var(--c-400);letter-spacing:0}
body.theme-v2 th[aria-sort=ascending] :is(.sort-indicator,.clue-sort-indicator,.comms-sort-indicator),
body.theme-v2 th[aria-sort=descending] :is(.sort-indicator,.clue-sort-indicator,.comms-sort-indicator){color:var(--brand)}

/* ---------- Date picker control ---------- */
body.theme-v2 .covsar-date-control input.covsar-date-text{border-top-right-radius:0;border-bottom-right-radius:0}
body.theme-v2 .covsar-date-control button.covsar-calendar-button{width:36px!important;min-height:0!important;padding:0!important;border:1px solid var(--c-200)!important;border-left:0!important;
  border-radius:0 var(--r-sm) var(--r-sm) 0!important;background:var(--c-50)!important;color:var(--c-600)!important;box-shadow:var(--sh-xs)!important}
body.theme-v2 .covsar-date-control button.covsar-calendar-button:hover{background:var(--brand-50)!important;color:var(--brand)!important}
body.theme-v2 .covsar-date-control{grid-template-columns:minmax(0,1fr) 36px}

/* ---------- KPI tiles (task log, comms, unit, home, personnel …) ---------- */
body.theme-v2 :is(.task-summary-grid,.module-summary-grid,.final-home-stats){gap:12px}
body.theme-v2 .task-summary-card{display:flex;align-items:center;gap:14px;padding:16px 18px;min-height:0;text-align:left}
body.theme-v2 .task-summary-card>div:last-child{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
body.theme-v2 .task-summary-icon{width:40px;height:40px;flex:0 0 40px;border-radius:10px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-size:18px}
body.theme-v2 .task-summary-icon img{width:24px;height:24px}
body.theme-v2 .task-summary-icon .ui-i{width:20px;height:20px}
body.theme-v2 .task-summary-label{order:1;margin:0}
body.theme-v2 .task-summary-value{order:2;margin-top:4px}
body.theme-v2 .task-summary-sub{order:3;margin-top:3px}
body.theme-v2 .task-summary-card.field-clear{background:var(--c-0);border-color:var(--c-150)}
body.theme-v2 .task-summary-card.field-clear .task-summary-icon{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .task-summary-card.field-clear :is(.task-summary-label,.task-summary-value){color:inherit}
body.theme-v2 .task-summary-card.field-clear .task-summary-label{color:var(--ok)}
body.theme-v2 .task-summary-card.field-alert{background:linear-gradient(0deg,var(--danger-50),var(--danger-50)),var(--c-0);border-color:#efb7bd;box-shadow:inset 3px 0 0 var(--danger)}
body.theme-v2 .task-summary-card.field-alert .task-summary-icon{background:#fde3e6;color:var(--danger)}
body.theme-v2 .task-summary-card.field-alert :is(.task-summary-label,.task-summary-value){color:var(--danger-600)}
body.theme-v2 .task-summary-card.field-alert .task-summary-sub{color:#9c3540}
body.theme-v2 .task-summary-card:is(.responder-total-card,.responder-today-card){background:var(--c-0);border-color:var(--c-150)}
body.theme-v2 .task-summary-card:is(.responder-total-card,.responder-today-card) :is(.task-summary-label,.task-summary-value,.task-summary-sub){color:inherit}
body.theme-v2 .task-summary-card:is(.responder-total-card,.responder-today-card) .task-summary-label{color:var(--c-600)}
body.theme-v2 .task-summary-card:is(.responder-total-card,.responder-today-card) .task-summary-sub{color:var(--c-500)}
body.theme-v2 .task-summary-card.responder-total-card .task-summary-icon{background:var(--sar-50);color:var(--sar)}
body.theme-v2 .summary-grid-heading{display:inline-flex;align-items:center;margin:6px 0 12px}

body.theme-v2 .module-summary-card{display:flex;align-items:center;gap:14px;padding:16px 18px}
body.theme-v2 .module-summary-card>div:last-child{display:flex;flex-direction:column;min-width:0}
body.theme-v2 .module-summary-card .module-summary-label{order:1}
body.theme-v2 .module-summary-card .module-summary-value{order:2;margin-top:4px}
body.theme-v2 .module-summary-card .module-summary-sub{order:3;margin-top:3px}
body.theme-v2 .final-stat-card.active-stat .module-summary-icon{background:var(--sar-50);color:var(--sar)}
body.theme-v2 .final-stat-card.closed-stat .module-summary-icon{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .final-stat-card.archived-stat .module-summary-icon{background:var(--c-75);color:var(--c-600)}


/* ---------- In-table editors (read mode = text, edit mode = field) ---------- */
body.theme-v2 :is(.task-row-editor,.row-editor){font-size:13px;line-height:1.4;padding:5px 7px;min-height:30px;border:1px solid transparent;background:transparent;box-shadow:none;color:var(--c-800);border-radius:6px}
body.theme-v2 textarea:is(.task-row-editor,.row-editor){min-height:30px}
body.theme-v2 :is(.task-entry-row,tr).editing :is(.task-row-editor,.row-editor):not(.computed-field){border-color:var(--c-200);background:var(--c-0);box-shadow:var(--sh-xs)}
body.theme-v2 :is(.task-entry-row,tr).editing>td{background:#f7f9ff}
body.theme-v2 .computed-field{color:var(--c-500)}
body.theme-v2 .task-status-badge{font-size:11px;font-weight:650;padding:3px 9px;letter-spacing:.02em}
body.theme-v2 :is(.task-info-bar,.comms-info-bar,.info-bar){font-size:12px;line-height:1.55;color:var(--c-600);background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-md);padding:12px 14px}
body.theme-v2 :is(.task-table-footer){font-size:12px;color:var(--c-500)}
body.theme-v2 :is(.task-save-indicator,.comms-save-indicator){font-size:12px;font-weight:600}
body.theme-v2 .task-summary-card *{text-align:left}
body.theme-v2 .task-summary-card.kpi-updated .task-summary-value,body.theme-v2 .task-summary-card.kpi-last_updated .task-summary-value{font-size:17px;letter-spacing:-.01em}
body.theme-v2 :is(.task-import-title,.comms-import-title){font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin-bottom:8px}
body.theme-v2 :is(.task-log-filters,.task-organized-filters){background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md)}

/* ---------- Mobile nav toggle ---------- */
body.theme-v2 .suite-nav-toggle-icon{display:inline-flex;flex-direction:column;gap:3px;margin-right:10px}
body.theme-v2 .suite-nav-toggle-icon i{display:block;width:16px;height:2px;border-radius:2px;background:currentColor}

/* ---------- Responsive ---------- */
@media(max-width:1180px){
  body.theme-v2 .feature-strip{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}
  body.theme-v2 .feature:nth-child(4){border-left:0;padding-left:0}
  body.theme-v2 .taf-stepper{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.theme-v2 .mission-context-name{display:none}
}
@media(max-width:1000px){
  body.theme-v2 .shell{grid-template-columns:232px minmax(0,1fr)}
  body.theme-v2 .main{padding:22px 20px 40px}
  body.theme-v2 .sb-sub{display:none}
  body.theme-v2 .shell{background:linear-gradient(90deg,var(--chrome-800) 0 232px,var(--c-50) 232px)}
}
@media(max-width:760px){
  body.theme-v2 .api-beta-banner{padding:6px 14px;flex-wrap:wrap;gap:6px}
  body.theme-v2 .topbar{height:auto;min-height:58px;padding:10px 14px;display:flex;flex-wrap:wrap;gap:10px}
  body.theme-v2 .topbar img{width:32px;height:32px}
  body.theme-v2 .app-title{font-size:13px;letter-spacing:.06em}
  body.theme-v2 .app-sub{font-size:11px}
  body.theme-v2 .topbar .ready{display:none}
  body.theme-v2 .topbar-right{width:100%}
  body.theme-v2 .mission-context{max-width:none;width:100%}
  body.theme-v2 .mission-context-name{display:inline}
  body.theme-v2 .suite-nav-toggle{display:flex;align-items:center;width:100%;min-height:44px;border:0;border-bottom:1px solid var(--chrome-line);border-radius:0;
    background:var(--chrome-800);color:#e6edf6;padding:10px 16px;font-size:13.5px;font-weight:600;box-shadow:none}
  body.theme-v2 .shell{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .shell{background:var(--c-50)}
  body.theme-v2 .sb{position:static;max-height:none;min-height:0;border-right:0;border-bottom:1px solid var(--chrome-line);padding:12px}
  body.theme-v2 .sb-sub{display:block}
  body.theme-v2 .main{padding:18px 14px 32px}
  body.theme-v2 .page-head{font-size:21px}
  body.theme-v2 .card{padding:16px}
  body.theme-v2 .feature-strip{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .feature,body.theme-v2 .feature+.feature{border-left:0;padding-left:0}
  body.theme-v2 .taf-stepper{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 :where(input:not([type=checkbox],[type=radio],[type=hidden]),select,textarea){font-size:16px}
}

/* =====================  PAGE: Mission Home  ===================== */
body.theme-v2 .final-home-section{padding:0;margin-bottom:14px;overflow:hidden}
body.theme-v2 .final-home details.mission-stage-group>summary{padding:16px 20px;margin:0}
body.theme-v2 .final-home details.mission-stage-group[open]>summary{margin:0;border-bottom:1px solid var(--c-100)}
body.theme-v2 .final-home details.mission-stage-group>summary::after{content:"";width:8px;height:8px;border-right:1.8px solid var(--c-500);border-bottom:1.8px solid var(--c-500);transform:rotate(-45deg);font-size:0;margin-right:4px}
body.theme-v2 .final-home details.mission-stage-group[open]>summary::after{transform:rotate(45deg)}
body.theme-v2 .final-home details.mission-stage-group>summary:hover{background:var(--c-25)}
body.theme-v2 .final-count-badge{display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 7px;border-radius:999px;background:var(--c-75);color:var(--c-700);font-size:11px;font-weight:700;letter-spacing:0;border:0;margin-left:2px}
body.theme-v2 .final-home-table-wrap{border:0;border-radius:0;margin:0;overflow-x:auto}
body.theme-v2 .final-home-table{min-width:880px}
body.theme-v2 .final-home-table thead th{font-size:11px;padding:10px 14px;background:var(--c-50)}
body.theme-v2 .final-home-table td{font-size:13px;padding:12px 14px;color:var(--c-800)}
body.theme-v2 .final-home-table td:first-child,body.theme-v2 .final-home-table th:first-child{padding-left:20px}
body.theme-v2 .final-home-table td:last-child,body.theme-v2 .final-home-table th:last-child{padding-right:20px}
body.theme-v2 .final-mission-number{font-size:13px;font-weight:700;color:var(--c-900)!important;font-variant-numeric:tabular-nums;white-space:nowrap}
body.theme-v2 .final-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:650;letter-spacing:.03em;padding:3px 10px;border-radius:999px;white-space:nowrap;border:1px solid transparent}
body.theme-v2 .final-status-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
body.theme-v2 .final-status-pill.active{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
body.theme-v2 .final-status-pill.closed{background:var(--brand-50);color:var(--brand);border-color:var(--brand-100)}
body.theme-v2 .final-status-pill.archived{background:var(--c-75);color:var(--c-600);border-color:var(--c-150)}
body.theme-v2 .final-row-actions{display:flex;flex-wrap:nowrap;justify-content:flex-end;gap:6px}
body.theme-v2 .final-row-actions button:not(.suite-nav-toggle):not(.ql-btn){min-height:30px;padding:5px 11px;font-size:12.5px;border-radius:6px;white-space:nowrap}
body.theme-v2 .final-row-actions .open-btn:not(.suite-nav-toggle):not(.ql-btn){color:var(--brand);border-color:var(--brand-100);background:var(--brand-50)}
body.theme-v2 .final-row-actions .open-btn:not(.suite-nav-toggle):not(.ql-btn):hover{background:var(--brand-100);color:var(--brand-700)}
body.theme-v2 .final-row-actions .close-btn:not(.suite-nav-toggle):not(.ql-btn){color:var(--warn)}
body.theme-v2 .final-row-actions .restore-btn:not(.suite-nav-toggle):not(.ql-btn){color:var(--ok)}
body.theme-v2 .mission-home-empty{margin:16px 20px 18px;padding:18px;border:1px dashed var(--c-200);border-radius:var(--r-md);background:var(--c-25);color:var(--c-500);font-size:13px;text-align:center}
body.theme-v2 .mission-home-empty-title{font-size:13px;font-weight:650;color:var(--c-700)}
body.theme-v2 .mission-home-empty-sub{font-size:12px;color:var(--c-500)}
body.theme-v2 .mission-version-details summary{font-size:11.5px;font-weight:600;color:var(--brand);margin-top:4px}
body.theme-v2 .mission-version-popover{border-radius:var(--r-md);border:1px solid var(--c-150);box-shadow:var(--sh-lg);background:var(--c-0)}
body.theme-v2 .mission-version-path{font-family:var(--mono);font-size:11.5px;color:var(--c-700)}
body.theme-v2 .mission-version-meta{font-size:12px;color:var(--c-500)}
body.theme-v2 .mission-version-flags span{font-size:10.5px;font-weight:650;background:var(--c-75);color:var(--c-600);border-radius:999px;padding:2px 8px}
body.theme-v2 .mission-locations-help{padding:0;overflow:hidden}
body.theme-v2 .mission-locations-help>summary{padding:15px 20px;font-size:13.5px;font-weight:600;color:var(--c-800);list-style:none;display:flex;align-items:center;gap:10px}
body.theme-v2 .mission-locations-help>summary::-webkit-details-marker{display:none}
body.theme-v2 .mission-locations-help>summary::before{content:"";width:7px;height:7px;border-right:1.8px solid var(--c-500);border-bottom:1.8px solid var(--c-500);transform:rotate(-45deg);transition:transform .15s}
body.theme-v2 .mission-locations-help[open]>summary::before{transform:rotate(45deg)}
body.theme-v2 .mission-locations-help>summary:hover{background:var(--c-25)}
body.theme-v2 .mission-locations-help>:not(summary){margin-left:20px;margin-right:20px}
body.theme-v2 .mission-locations-help p{font-size:13px;color:var(--c-600);line-height:1.55}
body.theme-v2 .mission-location-form{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin-bottom:18px}
body.theme-v2 .mission-location-form label{flex:1 0 100%;font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .mission-location-form input[type=text]{flex:1 1 320px;width:auto}
body.theme-v2 .approved-summary-footer{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--c-500);padding:6px 2px}
body.theme-v2 .approved-save-state{color:var(--ok);font-weight:600}

@media(max-width:760px){
  body.theme-v2 .app-title{flex-wrap:wrap;row-gap:2px;white-space:normal}
  body.theme-v2 .api-test-pill{display:none}
  body.theme-v2 .api-beta-copy{font-size:12px}
  body.theme-v2 .final-home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.theme-v2 .final-home-stats .module-summary-card{padding:14px;gap:10px;align-items:flex-start;flex-direction:column}
  body.theme-v2 .final-home-stats .module-summary-icon{width:32px;height:32px;flex-basis:32px;border-radius:8px}
  body.theme-v2 .final-home-stats .module-summary-value{font-size:22px}
  body.theme-v2 .final-home-stats .module-summary-label{font-size:10.5px}
  body.theme-v2 .final-home-actions{width:100%;display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
  body.theme-v2 .final-home-actions>*{width:100%}
  body.theme-v2 .final-home-actions form button{width:100%}
}
}

/* ======================================================
   Page group: planning
   ====================================================== */
@media screen{
/* theme_planning.css — page styles (merged into theme.css at release) */
@media screen{

/* =====================  PAGE: Mission Summary  ===================== */
body.theme-v2 .option2-title-row .module-top-actions{gap:8px}
body.theme-v2 .task-action-button.command-view-action{background:var(--chrome-700);border-color:var(--chrome-800);color:#fff}
body.theme-v2 .task-action-button.command-view-action:hover{background:var(--chrome-800)!important;color:#fff!important}

/* Snapshot */
body.theme-v2 .mission-snapshot-compact{padding:18px 22px}
body.theme-v2 .mission-snapshot-title{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0 0 14px}
body.theme-v2 .mission-snapshot-row{display:grid;gap:0;border:0;padding:0;margin:0}
body.theme-v2 .mission-snapshot-row-primary{grid-template-columns:1fr 1.6fr 1fr 1fr 1.1fr;padding-bottom:14px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .mission-snapshot-row-secondary{grid-template-columns:1fr 1.6fr 1fr 1.1fr;padding-top:14px;align-items:center}
body.theme-v2 .mission-snapshot-item{padding:0 16px;border:0;border-left:1px solid var(--c-100);min-width:0}
body.theme-v2 .mission-snapshot-item:first-child{padding-left:0;border-left:0}
body.theme-v2 .mission-snapshot-item span{display:block;font-size:11.5px;font-weight:600;color:var(--c-500);letter-spacing:.01em;margin-bottom:3px}
body.theme-v2 .mission-snapshot-item strong{display:block;font-size:14.5px;font-weight:650;color:var(--c-900);line-height:1.35;overflow-wrap:anywhere}
body.theme-v2 .mission-snapshot-row-primary .mission-snapshot-item:first-child strong{color:var(--brand);font-variant-numeric:tabular-nums}
body.theme-v2 .mission-snapshot-save,body.theme-v2 .approved-save-state{display:inline-flex;align-items:center;gap:7px;justify-self:end;font-size:12px;font-weight:600;color:var(--ok)}
body.theme-v2 .mission-snapshot-save::before,body.theme-v2 .approved-save-state::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-50)}

/* Daily personnel */
body.theme-v2 .daily-personnel-entry-card{padding:18px 22px}
body.theme-v2 .daily-personnel-compact-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}
body.theme-v2 .daily-personnel-compact-head .card-title{margin:0}
body.theme-v2 .daily-personnel-compact-head .muted{font-size:12.5px;color:var(--c-500)}
body.theme-v2 .daily-personnel-compact-form{display:grid;grid-template-columns:1.3fr 1fr 1fr auto;gap:14px;align-items:end}
body.theme-v2 .daily-personnel-compact-form .field{margin:0}
body.theme-v2 .daily-personnel-actions{display:flex;flex-direction:column;gap:6px}
body.theme-v2 .daily-personnel-action-label{font-size:12.5px;font-weight:600;color:var(--c-700);visibility:hidden;height:0;margin:0}
body.theme-v2 .daily-personnel-action-buttons{display:flex;gap:8px}
body.theme-v2 .daily-personnel-list{margin-top:14px}
body.theme-v2 .daily-personnel-list>summary{font-size:12.5px;font-weight:600;color:var(--brand)}

/* Field status banner */
body.theme-v2 .mission-alert-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border-radius:var(--r-lg);border:1px solid var(--c-150);background:var(--c-0);box-shadow:var(--sh-xs);overflow:hidden;margin-bottom:16px;padding:0}
body.theme-v2 .mission-alert-left{display:flex;align-items:center;gap:14px;padding:16px 20px}
body.theme-v2 .mission-alert-icon{width:44px;height:44px;flex:0 0 44px;border-radius:12px;display:grid;place-items:center;font-size:0}
body.theme-v2 .mission-alert-icon .ui-i{width:22px;height:22px}
body.theme-v2 .mission-alert-title{font-size:12px;font-weight:750;letter-spacing:.075em;text-transform:uppercase}
body.theme-v2 .mission-alert-sub{font-size:14px;font-weight:600;color:var(--c-900);margin-top:2px}
body.theme-v2 .mission-alert-note{font-size:12.5px;color:var(--c-500);margin-top:1px}
body.theme-v2 .mission-op-block{display:flex;flex-direction:column;justify-content:center;padding:14px 24px;border-left:1px solid var(--c-150);background:var(--c-25);min-width:240px}
body.theme-v2 .mission-op-label{font-size:11.5px;font-weight:600;color:var(--c-500)}
body.theme-v2 .mission-op-value{font-size:20px;font-weight:700;letter-spacing:-.015em;color:var(--c-900);margin-top:2px}
body.theme-v2 .mission-alert-banner.mission-alert-clear{box-shadow:inset 4px 0 0 var(--ok),var(--sh-xs)}
body.theme-v2 .mission-alert-clear .mission-alert-icon{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .mission-alert-clear .mission-alert-title{color:var(--ok)}
body.theme-v2 .mission-alert-banner.mission-alert-live{background:var(--danger-50);border-color:#efb7bd;box-shadow:inset 4px 0 0 var(--danger),var(--sh-xs)}
body.theme-v2 .mission-alert-live .mission-alert-icon{background:#fde3e6;color:var(--danger)}
body.theme-v2 .mission-alert-live .mission-alert-title{color:var(--danger-600)}
body.theme-v2 .mission-alert-live .mission-op-block{background:rgba(255,255,255,.55);border-left-color:#f3c9ce}

/* Section headers inside cards */
body.theme-v2 .summary-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
body.theme-v2 .summary-section-head .card-title{margin-bottom:4px}
body.theme-v2 .summary-section-head .muted{font-size:12.5px;color:var(--c-500)}
body.theme-v2 .summary-link-button{min-height:32px!important;padding:6px 12px!important;font-size:12.5px!important}
body.theme-v2 .summary-empty{padding:16px;border:1px dashed var(--c-200);border-radius:var(--r-md);background:var(--c-25);color:var(--c-500);font-size:13px;text-align:center}

/* Personnel availability */
body.theme-v2 .personnel-summary-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}
body.theme-v2 .personnel-metric{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;text-align:left;border-radius:var(--r-md);box-shadow:none;border-top:3px solid var(--c-200)}
body.theme-v2 .personnel-metric span{font-size:11.5px;font-weight:650;letter-spacing:.06em;color:var(--c-600)}
body.theme-v2 .personnel-metric strong{font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .personnel-metric small{font-size:12px;color:var(--c-500)}
body.theme-v2 .personnel-metric.available{border-top-color:var(--ok)}
body.theme-v2 .personnel-metric.available strong{color:var(--ok)}
body.theme-v2 .personnel-metric.assigned{border-top-color:#d98a07}
body.theme-v2 .personnel-metric.assigned strong{color:var(--warn)}
body.theme-v2 .personnel-metric.resting{border-top-color:var(--brand)}
body.theme-v2 .personnel-metric.resting strong{color:var(--brand)}
body.theme-v2 .personnel-metric.checkedout{border-top-color:var(--c-300)}
body.theme-v2 .personnel-summary-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
body.theme-v2 .approved-subsection-title{margin-bottom:10px}
body.theme-v2 .personnel-summary-table-wrap{border:1px solid var(--c-150);border-radius:var(--r-md);overflow:auto}
body.theme-v2 .personnel-summary-table td{font-size:13px}
body.theme-v2 .personnel-summary-table td:first-child{font-weight:600;color:var(--c-900)}
body.theme-v2 .personnel-more-note{font-size:12px;color:var(--c-500);margin-top:8px}
body.theme-v2 .personnel-summary-side{border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);padding:14px;box-shadow:none}
body.theme-v2 .recent-checkin-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--c-100);font-size:12px;color:var(--c-500)}
body.theme-v2 .recent-checkin-row:last-child{border-bottom:0}
body.theme-v2 .recent-checkin-row b{display:block;font-size:13px;font-weight:600;color:var(--c-900)}
body.theme-v2 .recent-checkin-row span{display:block;font-size:12px;color:var(--c-500)}
body.theme-v2 .recent-checkin-row>div:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
body.theme-v2 .personnel-side-divider{height:1px;background:var(--c-150);margin:10px 0 12px}
body.theme-v2 .personnel-checkin-primary{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-md);background:var(--brand);color:#fff;box-shadow:0 1px 2px rgba(29,71,180,.25);transition:background .12s}
body.theme-v2 .personnel-checkin-primary:hover{background:var(--brand-600)}
body.theme-v2 .personnel-checkin-icon{width:34px;height:34px;flex:0 0 34px;border-radius:8px;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:0}
body.theme-v2 .personnel-checkin-icon .ui-i{width:18px;height:18px}
body.theme-v2 .personnel-checkin-primary b{display:block;font-size:13.5px;font-weight:650}
body.theme-v2 .personnel-checkin-primary small{display:block;font-size:12px;opacity:.85;line-height:1.35}
body.theme-v2 .personnel-checkin-arrow{margin-left:auto;display:grid;place-items:center;font-size:0}

/* Task overview */
body.theme-v2 .approved-task-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}
body.theme-v2 .approved-metric-box{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;text-align:left;box-shadow:none;border-radius:var(--r-md)}
body.theme-v2 .approved-metric-box *{text-align:left}
body.theme-v2 .approved-metric-label{font-size:11.5px;line-height:1.35}
body.theme-v2 .approved-metric-value{margin:2px 0 1px}
body.theme-v2 .approved-metric-sub{font-size:12px;line-height:1.4}
body.theme-v2 .approved-metric-box :is(.approved-metric-label,.approved-metric-value){color:inherit}
body.theme-v2 .approved-metric-box .approved-metric-label{color:var(--c-600)}
body.theme-v2 .approved-metric-box .approved-metric-value{color:var(--c-900)}
body.theme-v2 .approved-metric-box.field-alert{background:var(--danger-50);border-color:#efb7bd;box-shadow:inset 3px 0 0 var(--danger)}
body.theme-v2 .approved-metric-box.field-alert :is(.approved-metric-label,.approved-metric-value){color:var(--danger-600)}
body.theme-v2 .approved-metric-box.field-clear{box-shadow:inset 3px 0 0 var(--ok)}
body.theme-v2 .approved-metric-box.field-clear :is(.approved-metric-label,.approved-metric-value){color:var(--ok)}
body.theme-v2 .approved-metric-box.completed-box .approved-metric-value{color:var(--ok)}
body.theme-v2 .approved-task-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
body.theme-v2 .approved-status-row{display:grid;grid-template-columns:90px minmax(0,1fr) 36px;align-items:center;gap:12px;padding:7px 0}
body.theme-v2 .approved-status-name{font-size:13px;font-weight:500;color:var(--c-700)}
body.theme-v2 .approved-status-track{height:8px;border-radius:999px;background:var(--c-75);overflow:hidden}
body.theme-v2 .approved-status-fill{height:100%;border-radius:999px}
body.theme-v2 .approved-status-fill.infield-fill{background:var(--danger)}
body.theme-v2 .approved-status-fill.completed-fill{background:var(--ok)}
body.theme-v2 .approved-status-fill.pending-fill{background:var(--c-400)}
body.theme-v2 .approved-status-fill.total-fill{background:var(--chrome-700)}
body.theme-v2 .approved-status-count{font-size:13px;font-weight:650;color:var(--c-900);text-align:right;font-variant-numeric:tabular-nums}
body.theme-v2 .approved-op-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:8px 0;border-bottom:1px solid var(--c-100)}
body.theme-v2 .approved-op-list>div:last-child{border-bottom:0}
body.theme-v2 .approved-op-list span{font-size:13px;color:var(--c-600);line-height:1.4}
body.theme-v2 .approved-op-list b{font-size:13px;font-weight:650;color:var(--c-900);white-space:nowrap;font-variant-numeric:tabular-nums}

/* Summary tables */
body.theme-v2 .summary-tasklog-scroll{overflow:auto}
body.theme-v2 .summary-tasklog-table td{font-size:13px;padding:10px 12px}
body.theme-v2 .summary-tasklog-table th{padding:10px 12px}
body.theme-v2 .summary-tasklog-table th span{font-size:10px;color:var(--c-400);margin-left:4px}
body.theme-v2 .summary-tasklog-table td:first-child{font-weight:600;color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .summary-task-desc{min-width:240px;color:var(--c-700)}
body.theme-v2 .clues-by-day-total td{font-weight:650;background:var(--c-25)}
body.theme-v2 .daily-operations-note{font-size:12px;color:var(--c-500);margin-top:10px;line-height:1.5}
body.theme-v2 .summary-task-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:650;letter-spacing:.02em;padding:3px 9px;border-radius:999px;white-space:nowrap;border:1px solid var(--c-150);background:var(--c-75);color:var(--c-600)}
body.theme-v2 .summary-task-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
body.theme-v2 .summary-task-status.status-completed{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
body.theme-v2 .summary-task-status.status-in-progress,body.theme-v2 .summary-task-status.status-in-field{background:var(--danger-50);color:var(--danger);border-color:var(--danger-100)}
body.theme-v2 .summary-task-row.status-in-progress>td,body.theme-v2 .summary-task-row.status-in-field>td{background:#fffafa}
body.theme-v2 .option2-summary-footer{margin-top:4px}

@media(max-width:1100px){
  body.theme-v2 .mission-snapshot-row-primary,body.theme-v2 .mission-snapshot-row-secondary{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:14px}
  body.theme-v2 .mission-snapshot-item:nth-child(4){border-left:0;padding-left:0}
  body.theme-v2 .personnel-summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.theme-v2 .personnel-summary-grid{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .approved-task-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .approved-task-detail-grid{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .daily-personnel-compact-form{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  body.theme-v2 .mission-snapshot-row-primary,body.theme-v2 .mission-snapshot-row-secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .mission-snapshot-item{border-left:0;padding:0 12px 0 0}
  body.theme-v2 .mission-snapshot-save{justify-self:start;grid-column:1/-1}
  body.theme-v2 .mission-alert-banner{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .mission-op-block{border-left:0;border-top:1px solid var(--c-150);min-width:0}
  body.theme-v2 .personnel-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .daily-personnel-compact-form{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .summary-section-head{flex-wrap:wrap}
}

/* =====================  Shared form bits used by planning pages  ===================== */
body.theme-v2 .main :is(.mission-clean-card,.mission-info-page,.planning-page,.priority-page,.mission-planning-page,.mission-info-form) input:not([type]),
body.theme-v2 .main input:not([type]){padding-left:11px;padding-right:11px;width:100%;box-sizing:border-box}
body.theme-v2 .covsar-profile-picker .profile-picker-trigger{min-height:var(--control);padding:7px 11px;border:1px solid var(--c-200);border-radius:var(--r-sm);background:var(--c-0);box-shadow:var(--sh-xs);color:var(--c-900);font-size:14px}
body.theme-v2 .covsar-profile-picker .profile-picker-trigger:hover{border-color:var(--c-300);background:var(--c-0)}
body.theme-v2 .covsar-profile-picker .profile-picker-trigger[aria-expanded="true"]{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 .profile-picker-value small{font-size:11.5px;color:var(--c-500);font-weight:500}
body.theme-v2 .profile-picker-arrow{color:var(--c-500);font-size:11px}
body.theme-v2 .profile-picker-panel{border-color:var(--c-200);border-radius:var(--r-lg);box-shadow:var(--sh-lg);font-family:var(--font);color:var(--c-900)}
body.theme-v2 .profile-picker-panel .profile-picker-panel-head{background:var(--chrome-800)}

/* =====================  PAGE: Mission (TAF step 1 / edit details)  ===================== */
body.theme-v2 .mission-clean-card{padding:0;overflow:hidden}
body.theme-v2 .mission-details-home-link{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px 18px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .mission-details-home-link .card-title{margin-bottom:4px}
body.theme-v2 .mission-details-home-link .muted{font-size:13px;color:var(--c-500);line-height:1.5}
body.theme-v2 .mission-details-home-link .mission-action-btn{min-height:34px;flex:0 0 auto;font-size:12.5px}
body.theme-v2 .mission-form-grid-final{padding:20px 22px 6px;column-gap:20px;row-gap:16px}
body.theme-v2 .mission-form-grid-final label{font-size:12.5px;font-weight:600;color:var(--c-700);margin-bottom:6px}
body.theme-v2 .mission-form-grid-final .field small{font-size:12px;color:var(--c-500);margin-top:5px;line-height:1.45}
body.theme-v2 .mission-clean-card .field small a{color:var(--brand);font-weight:550}
body.theme-v2 .mission-clean-card .mission-source-section{margin:18px 22px 0;padding:18px 0 0;border-top:1px solid var(--c-100)}
body.theme-v2 .mission-clean-card .mission-source-section.mission-api-beta{padding:16px 18px;border:1px solid #f3d38a;border-radius:var(--r-md);background:var(--warn-50);box-shadow:inset 3px 0 0 #e0a018}
body.theme-v2 .mission-clean-card .mission-api-beta+.mission-source-section{border-top:0;padding-top:4px}
body.theme-v2 .beta-tag{display:inline-flex;align-items:center;height:18px;padding:0 7px;border-radius:999px;background:#fde9c3;color:#7a4700;font-size:10px;font-weight:750;letter-spacing:.06em;margin-left:6px}
body.theme-v2 .mission-source-head{gap:16px;margin-bottom:12px}
body.theme-v2 .mission-source-head .card-title{margin-bottom:4px}
body.theme-v2 .mission-source-head .muted{font-size:13px;color:var(--c-500);line-height:1.5;max-width:72ch}
body.theme-v2 .mission-source-link{display:inline-flex;align-items:center;min-height:34px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--c-800);border:1px solid var(--c-200);border-radius:var(--r-sm);background:var(--c-0);box-shadow:var(--sh-xs);white-space:nowrap}
body.theme-v2 .mission-source-grid{gap:12px}
body.theme-v2 .mission-source-card{border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);padding:14px 16px}
body.theme-v2 .mission-api-beta .mission-source-card{background:rgba(255,255,255,.7);border-color:#f3e0b0}
body.theme-v2 .mission-source-card.source-loaded{border-color:var(--ok-100);background:#f7fcf9}
body.theme-v2 .mission-source-card .field{margin-bottom:0}
body.theme-v2 .mission-source-card small{display:block;font-size:12px;color:var(--c-500);line-height:1.45;margin-top:6px}
body.theme-v2 .mission-source-title{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-700);margin-bottom:6px}
body.theme-v2 .mission-source-ready{font-size:12.5px;font-weight:600;color:var(--ok);margin-bottom:8px}
body.theme-v2 .mission-source-empty{display:inline-flex;font-size:12px;color:var(--c-500);background:var(--c-75);border-radius:999px;padding:2px 10px;margin-bottom:10px}
body.theme-v2 .mission-source-list{font-size:12.5px;color:var(--c-600);line-height:1.5}
body.theme-v2 .mission-attach-field{margin-top:12px}
body.theme-v2 .mission-attachment-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--c-100);font-size:13px}
body.theme-v2 .attachment-position{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--c-75);font-size:11.5px;font-weight:700;color:var(--c-700)}
body.theme-v2 .mission-attachment-name{flex:1;min-width:0;overflow-wrap:anywhere;font-weight:550}
body.theme-v2 .attachment-move-controls button{min-height:28px!important;padding:3px 9px!important;font-size:12px!important}
body.theme-v2 .mission-clean-card .mission-bottom-actions{display:flex;gap:10px;padding:18px 22px 22px;margin:18px 0 0;border-top:1px solid var(--c-100);background:var(--c-25)}
body.theme-v2 .mission-clean-card .mission-bottom-actions>button{flex:0 0 auto;min-width:170px}
@media(max-width:760px){
  body.theme-v2 .mission-details-home-link{flex-direction:column}
  body.theme-v2 .mission-clean-card .mission-source-section{margin:16px 16px 0}
  body.theme-v2 .mission-form-grid-final,body.theme-v2 .mission-details-home-link{padding-left:16px;padding-right:16px}
  body.theme-v2 .mission-clean-card .mission-bottom-actions{padding:16px}
  body.theme-v2 .mission-clean-card .mission-bottom-actions>button{flex:1 1 100%}
}

/* =====================  Shared: module sections, KPI text values  ===================== */
body.theme-v2 .module-summary-value.small{font-size:18px;letter-spacing:-.01em;line-height:1.25;overflow-wrap:anywhere}
body.theme-v2 :is(.planning-summary-grid,.mission-info-summary-grid){display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:12px;margin-bottom:18px}
body.theme-v2 :is(.planning-summary-grid,.mission-info-summary-grid) .module-summary-card{align-items:flex-start}
body.theme-v2 .module-summary-card .module-summary-sub{overflow-wrap:anywhere}
body.theme-v2 .section-headline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .section-headline .card-title{margin-bottom:4px}
body.theme-v2 .section-headline .muted{font-size:13px;color:var(--c-500);line-height:1.5}
body.theme-v2 .polished-section{padding:20px 22px;margin-bottom:16px}
body.theme-v2 .module-grid{gap:14px 16px}
body.theme-v2 .module-grid .field{margin-bottom:0}
body.theme-v2 .field small{font-size:12px;margin-top:5px;line-height:1.45}

/* =====================  PAGE: Mission Planning Worksheet  ===================== */
body.theme-v2 .decision-groups{display:grid;gap:12px}
body.theme-v2 .decision-group{border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);padding:14px 16px;margin:0}
body.theme-v2 :is(.decision-group-title,.lpb-source-title,.lpb-panel-head){font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-600);margin:0 0 10px}
body.theme-v2 :is(.decision-chip-grid,.planning-choice-options,.terrain-row){display:flex;flex-wrap:wrap;gap:8px;align-items:center}
body.theme-v2 :is(.decision-chip,.terrain-chip){position:relative;display:inline-flex;align-items:center;gap:7px;margin:0;padding:6px 12px 6px 9px;min-height:32px;border:1px solid var(--c-200);border-radius:999px;background:var(--c-0);
  font-size:13px;font-weight:500;color:var(--c-700);cursor:pointer;box-shadow:var(--sh-xs);transition:background .12s,border-color .12s,color .12s}
body.theme-v2 :is(.decision-chip,.terrain-chip) span{font-size:13px;font-weight:500;color:inherit;line-height:1.2}
body.theme-v2 :is(.decision-chip,.terrain-chip) input{margin:0;width:15px;height:15px}
body.theme-v2 :is(.decision-chip,.terrain-chip):hover{border-color:var(--c-300);background:var(--c-50)}
body.theme-v2 :is(.decision-chip,.terrain-chip):has(input:checked){background:var(--brand-50);border-color:#a9c0f4;color:var(--brand-700);font-weight:600}
body.theme-v2 :is(.decision-chip,.terrain-chip):has(input:focus-visible){outline:2px solid var(--brand);outline-offset:2px}
body.theme-v2 .field-spaced{margin-top:16px}
body.theme-v2 .lpb-source-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 16px;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);margin-bottom:14px}
body.theme-v2 .lpb-source-bar .lpb-source-title{margin:0}
body.theme-v2 .polished-other{width:220px!important;min-height:32px!important;border-radius:999px!important;padding:5px 14px!important;font-size:13px!important}
body.theme-v2 .lpb-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
body.theme-v2 .lpb-panel{border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0);padding:16px;box-shadow:none}
body.theme-v2 .lpb-panel-head{color:var(--brand)}
body.theme-v2 .lpb-panel .terrain-row{margin:4px 0 14px;padding-bottom:14px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .distance-table{display:grid;gap:8px}
body.theme-v2 .distance-row{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px}
body.theme-v2 .distance-row span{font-size:12.5px;font-weight:700;color:var(--c-600);font-variant-numeric:tabular-nums;text-align:right}
body.theme-v2 .scenario-column-labels{font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 :is(.scenario-number,.scenario-num,.scenario-index){display:grid;place-items:center;border-radius:var(--r-sm);background:var(--brand-50);color:var(--brand);font-weight:700;font-size:13px;border:1px solid var(--brand-100)}

/* =====================  PAGE: Mission Information Sheet  ===================== */
body.theme-v2 .mission-info-period-card>.muted{font-size:13px;color:var(--c-500);line-height:1.5;margin:-6px 0 14px}
body.theme-v2 .mission-info-period-controls{gap:12px}
body.theme-v2 .mission-info-period-controls>form{border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);padding:14px 16px}
body.theme-v2 .mission-info-period-controls label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .mission-info-copy-option{font-weight:500!important;color:var(--c-600)!important;display:flex;align-items:center;gap:7px}
body.theme-v2 .mission-info-rename-list{margin-top:14px;padding:14px 16px;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0)}
body.theme-v2 .mission-info-rename-list .card-title{margin-bottom:10px}
body.theme-v2 .mission-info-rename-list form{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:12px;align-items:center;padding:6px 0}
body.theme-v2 .mission-info-rename-list label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .polished-command-grid{gap:12px;margin-top:18px}
body.theme-v2 .command-field{display:flex;align-items:stretch;gap:0;padding:0;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0);overflow:hidden;box-shadow:none}
body.theme-v2 .command-code{display:grid;place-items:center;flex:0 0 56px;align-self:stretch;background:var(--c-50);border-right:1px solid var(--c-150);color:var(--brand);font-size:12px;font-weight:750;letter-spacing:.06em;padding:0;margin:0}
body.theme-v2 .command-input{flex:1;min-width:0;padding:12px 14px;margin:0}
body.theme-v2 .command-input label{font-size:12px!important}
body.theme-v2 .mission-info-polished-layout :is(.subsection-label,.subsection-title,.clothing-title,.info-subhead,.demographics-subtitle){font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-600)}
body.theme-v2 .polished-weather-card{padding:18px 20px}
body.theme-v2 .weather-card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
body.theme-v2 .weather-card-title-row .card-title{margin-bottom:3px}
body.theme-v2 .weather-card-title-row .muted{font-size:12.5px;color:var(--c-500);line-height:1.45}
body.theme-v2 .weather-icon{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-size:0}
body.theme-v2 .weather-icon .ui-i{width:18px;height:18px}
body.theme-v2 #mission-info-forecast-latest{margin:0 0 12px;min-height:32px;font-size:12.5px}
body.theme-v2 #lpb-custom-field{margin-top:10px}

/* =====================  PAGE: Search Priority Review  ===================== */
body.theme-v2 .priority-intro{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:14px;color:var(--c-700);border-left:0;box-shadow:inset 3px 0 0 var(--brand),var(--sh-xs)}
body.theme-v2 .priority-intro b{color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .priority-intro .muted{flex:1 0 100%;font-size:13px;margin-top:4px}
body.theme-v2 .priority-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px}
body.theme-v2 .priority-fields .field a{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:550;color:var(--brand)}
body.theme-v2 .priority-more{margin:4px 0 14px;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);padding:0 16px}
body.theme-v2 .priority-more>summary{padding:12px 0;font-size:13px;font-weight:600;color:var(--c-800)}
body.theme-v2 .priority-more[open]>summary{border-bottom:1px solid var(--c-100);margin-bottom:12px}
body.theme-v2 .priority-more label{font-size:13px;color:var(--c-700)}
body.theme-v2 .priority-notice{background:var(--warn-50);border-color:var(--warn-100);color:#6e3e00;box-shadow:inset 3px 0 0 #d98a07}
body.theme-v2 .priority-source{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;font-size:13.5px;color:var(--c-700)}
body.theme-v2 .priority-source b{color:var(--c-900)}
body.theme-v2 .priority-task-list{margin:0;padding-left:20px;display:grid;gap:6px;font-size:13.5px;color:var(--c-800);line-height:1.5}
body.theme-v2 .priority-table-wrap{border:1px solid var(--c-150);border-radius:var(--r-md);overflow:auto}
body.theme-v2 .priority-table td{vertical-align:top;font-size:13px}
body.theme-v2 .priority-table td .muted{font-size:12px}
body.theme-v2 .priority-label{display:inline-flex;align-items:center;font-size:11px;font-weight:650;padding:3px 9px;border-radius:999px;background:var(--c-75);color:var(--c-600);white-space:nowrap}
body.theme-v2 .priority-label.priority-first{background:var(--sar-50);color:var(--sar-600);border:1px solid var(--sar-100)}
body.theme-v2 .priority-table details summary{font-size:12px;font-weight:600;color:var(--brand);margin-top:6px}
body.theme-v2 .priority-method{font-size:12px;line-height:1.55;color:var(--c-500);max-width:100ch}

/* =====================  PAGE: Weather  ===================== */
body.theme-v2 .weather-context-row{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
body.theme-v2 .weather-context-facts{display:flex;gap:0;flex-wrap:wrap}
body.theme-v2 .weather-fact{padding:0 20px;border-left:1px solid var(--c-150)}
body.theme-v2 .weather-fact:first-child{padding-left:0;border-left:0}
body.theme-v2 .weather-fact span{display:block;font-size:11.5px;font-weight:600;color:var(--c-500)}
body.theme-v2 .weather-fact b{display:block;font-size:14.5px;font-weight:650;color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .weather-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body.theme-v2 .weather-actions :is(a,button){min-height:36px}
body.theme-v2 .weather-hint{margin-top:12px;font-size:12.5px}
body.theme-v2 .weather-message:not(:empty){margin-top:12px;font-size:13px;color:var(--c-700);padding:9px 12px;border-radius:var(--r-sm);background:var(--c-50);border:1px solid var(--c-150)}
body.theme-v2 .weather-stale{background:var(--danger-50);border-color:var(--danger-100);color:#86202b;box-shadow:inset 3px 0 0 var(--danger)}
body.theme-v2 .weather-saved-card{font-size:13.5px;color:var(--c-700);line-height:1.6}
body.theme-v2 .weather-saved-card b{color:var(--c-900)}
body.theme-v2 .weather-table-wrap{overflow:auto;border:1px solid var(--c-150);border-radius:var(--r-md)}
body.theme-v2 .weather-table{width:100%}
body.theme-v2 .weather-table th,body.theme-v2 .weather-table td{white-space:nowrap}
body.theme-v2 .weather-table tbody tr:nth-child(even)>td{background:var(--c-25)}
body.theme-v2 .weather-details-summary{font-size:13.5px;font-weight:650;color:var(--c-900)}
body.theme-v2 details.card[open]>.weather-details-summary{margin-bottom:12px}
body.theme-v2[data-page="weather"] .main .card p{font-size:13.5px;color:var(--c-700);margin:6px 0}

@media(max-width:1100px){
  body.theme-v2 :is(.planning-summary-grid,.mission-info-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .priority-fields{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  body.theme-v2 :is(.planning-summary-grid,.mission-info-summary-grid),body.theme-v2 .priority-fields,body.theme-v2 .lpb-two-col{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .mission-info-rename-list form{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .section-headline{flex-wrap:wrap}
  body.theme-v2 .polished-section{padding:16px}
  body.theme-v2 .weather-fact{padding:6px 0;border-left:0;flex:1 0 100%}
  body.theme-v2 .polished-other{width:100%!important}
}
}
@media screen{
body.theme-v2 .mission-info-polished-layout .subsection-label{margin:20px 0 10px;padding-top:16px;border-top:1px solid var(--c-100)}
body.theme-v2 .mission-info-weather-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body.theme-v2 #mission-info-weather-status{font-size:12.5px;color:var(--c-500)}
}
@media screen{
body.theme-v2 .weather-empty{font-size:13.5px;color:var(--c-500);text-align:center;padding:28px 22px;border-style:dashed;box-shadow:none;background:var(--c-25)}
}
@media screen and (max-width:760px){
body.theme-v2 .personnel-summary-table{min-width:520px}
body.theme-v2 .personnel-summary-table td{white-space:nowrap}
body.theme-v2 .approved-task-metrics{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}

}

/* ======================================================
   Page group: ops
   ====================================================== */
@media screen{
/* theme_ops.css — Operations pages: Task Log, Communications Log, Unit Log,
   Clue Log, Clue Report, Operations Notes. Merged into theme.css at release. */
@media screen{

/* ---------- Shared: fields fill their grid cell (inputs without type="text") ---------- */
body.theme-v2 .field :where(input:not([type=checkbox],[type=radio],[type=hidden],[type=file],[type=submit],[type=button]),select,textarea){width:100%;box-sizing:border-box}
body.theme-v2 :is(.task-form,.comms-form,#clue-log-form,.clue-detail-form,.unit-log-form,.invest-form) .field{margin-bottom:0}
body.theme-v2 :is(.task-header-grid,.comms-header-grid,.clue-log-meta-grid,.unit-header-grid){gap:14px 16px;align-items:end}
body.theme-v2 :is(.task-header-card,.comms-header-card,.clue-log-top-card){padding:18px 22px}

/* Shared KPI tile treatment for comms + notes (task/unit tiles use theme.css) */
body.theme-v2 :is(.comms-summary-grid,.invest-summary-grid){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
body.theme-v2 .invest-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.theme-v2 :is(.comms-summary-card,.invest-summary-card){display:flex;align-items:center;gap:14px;padding:16px 18px;min-height:0;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .comms-summary-icon{width:40px;height:40px;flex:0 0 40px;border-radius:10px;background:var(--brand-50);color:var(--brand);display:grid;place-items:center;font-size:18px;border:0}
body.theme-v2 .comms-summary-icon .ui-i{width:20px;height:20px}
body.theme-v2 .comms-summary-card>div:last-child{min-width:0}
body.theme-v2 :is(.comms-summary-label,.invest-summary-card>span){display:block;font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-600)}
body.theme-v2 :is(.comms-summary-value,.invest-summary-card>strong){display:block;font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--c-900);margin-top:4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
body.theme-v2 :is(.comms-summary-sub,.invest-summary-card>small){display:block;font-size:12px;color:var(--c-500);margin-top:3px}
body.theme-v2 .invest-summary-card{flex-direction:column;align-items:flex-start;gap:0}

/* Shared: section card heads */
body.theme-v2 :is(.task-card-head,.comms-card-head,.clue-log-card-head){display:flex;align-items:flex-start;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:16px}
body.theme-v2 :is(.task-card-head,.comms-card-head,.clue-log-card-head)>div:first-child{flex:1 1 420px;min-width:0}
body.theme-v2 :is(.task-card-head,.comms-card-head,.clue-log-card-head) .card-title{margin-bottom:6px}
body.theme-v2 :is(.task-card-head,.comms-card-head,.clue-log-card-head) .muted{font-size:13px;line-height:1.55;color:var(--c-500);max-width:80ch}
body.theme-v2 :is(.task-card-head-actions,.comms-card-head-actions,.clue-log-head-tools){display:flex;align-items:center;gap:12px;flex-wrap:wrap}
body.theme-v2 :is(.task-save-indicator,.comms-save-indicator){display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--ok);white-space:nowrap}

/* Shared: log tables */
body.theme-v2 :is(.task-table-wrap,.comms-table-wrap,.clue-table-wrap,.unit-table-wrap){border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0);overflow:auto}
body.theme-v2 :is(.task-table,.comms-table,.clue-table,.unit-table) th{background:var(--c-50);font-size:11px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;color:var(--c-600);padding:10px 10px;border-bottom:1px solid var(--c-150);vertical-align:middle}
body.theme-v2 :is(.task-table,.comms-table,.clue-table,.unit-table) td{padding:6px 6px;border-bottom:1px solid var(--c-100);vertical-align:top;font-size:13px}
body.theme-v2 :is(.task-table,.comms-table,.clue-table,.unit-table) td>:is(input,textarea,select){margin:0}
body.theme-v2 :is(.task-table,.comms-table) tbody tr:hover>td{background:#f8faff}
body.theme-v2 :is(.task-col-resizer,.comms-col-resizer,.clue-col-resizer){opacity:.0;transition:opacity .15s}
body.theme-v2 th:hover :is(.task-col-resizer,.comms-col-resizer,.clue-col-resizer){opacity:1}
body.theme-v2 :is(.comms-row-actions,.task-row-actions,.unit-row-actions){display:flex;align-items:center;justify-content:center;gap:6px;padding-top:2px}
body.theme-v2 :is(.task-icon-button,.table-icon-button){width:30px;height:30px;min-width:30px!important;min-height:30px!important;padding:0!important;font-size:13px!important;color:var(--c-600);background:var(--c-0);border:1px solid var(--c-200)}
body.theme-v2 :is(.task-icon-button,.table-icon-button):not(:disabled):hover{color:var(--brand);border-color:var(--brand-100);background:var(--brand-50)}
body.theme-v2 :is(.task-icon-button.delete-task,.table-icon-button.delete-row):not(:disabled):hover{color:var(--danger);border-color:var(--danger-100);background:var(--danger-50)}
body.theme-v2 .task-icon-button.time-action{color:var(--warn);border-color:var(--warn-100);background:var(--warn-50)}
body.theme-v2 .task-icon-button.in-action{color:var(--ok);border-color:var(--ok-100);background:var(--ok-50)}

/* Shared: footer + pagination */
body.theme-v2 :is(.task-table-footer,.comms-table-footer){display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 2px 0;font-size:12.5px;color:var(--c-500)}
body.theme-v2 :is(.task-pagination,.comms-pagination){display:flex;gap:6px}
body.theme-v2 :is(.task-pagination,.comms-pagination) button:not(.suite-nav-toggle){min-width:34px;min-height:32px;padding:4px 10px;font-size:12.5px}
body.theme-v2 :is(.task-pagination,.comms-pagination) button.active:not(.suite-nav-toggle){background:var(--c-900);border-color:var(--c-900);color:#fff}
body.theme-v2 :is(.task-bottom-actions,.comms-bottom-actions){display:flex!important;align-items:center;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--c-100)}
body.theme-v2 :is(.task-bottom-actions,.comms-bottom-actions)>:is(button,a){min-width:0!important;flex:0 0 auto!important}
body.theme-v2 .comms-bottom-left{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
body.theme-v2 .comms-bottom-actions>.danger-outline{margin-left:auto}

/* Shared: info notes */
body.theme-v2 :is(.task-info-bar,.comms-info-bar){display:flex;align-items:flex-start;gap:10px;margin-top:16px;font-size:12.5px;line-height:1.6;color:var(--c-600);background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-md);padding:12px 16px;box-shadow:none}
body.theme-v2 :is(.task-info-bar,.comms-info-bar) .info-dot{flex:0 0 18px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;background:var(--brand);margin-top:1px}

/* ====================== Task Log ====================== */
body.theme-v2 .task-import-card{padding:20px 22px}
body.theme-v2 .task-import-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0}
body.theme-v2 .task-import-source{display:flex;flex-direction:column;gap:8px;min-width:0;padding-right:24px}
body.theme-v2 .task-import-source+.task-import-source{padding:0 0 0 24px;border-left:1px solid var(--c-100)}
body.theme-v2 .task-import-file-label,body.theme-v2 .task-api-note{font-size:12.5px!important;font-weight:500;color:var(--c-500);margin:0}
body.theme-v2 .task-import-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
body.theme-v2 .task-api-settings{font-size:13px;font-weight:600;color:var(--brand);text-decoration:none;display:inline-flex;align-items:center;gap:4px;margin-top:2px}
body.theme-v2 .task-api-settings:hover{text-decoration:underline}
body.theme-v2 .task-import-note{margin-top:16px;padding-top:12px;border-top:1px solid var(--c-100);font-size:12.5px;color:var(--c-500)}
body.theme-v2 .task-header-grid{grid-template-columns:170px minmax(150px,220px) minmax(220px,1.4fr) minmax(200px,1fr)}
body.theme-v2 .task-log-card{padding:20px 22px}
body.theme-v2 :is(.task-log-filters,.task-organized-filters){padding:16px 18px!important;margin:0 0 16px!important}
body.theme-v2 .task-organized-filters :is(label,.filter-label){font-size:12.5px!important;font-weight:600!important;color:var(--c-700)!important}
body.theme-v2 .task-organized-filters :is(h3,.task-filter-title,strong){color:var(--c-900)}
body.theme-v2 .task-organized-filters select,body.theme-v2 .task-organized-filters #task-segment-picker>summary{font-size:13.5px!important;font-weight:500!important;min-height:38px!important;border-radius:var(--r-sm)!important;border-color:var(--c-200)!important}
body.theme-v2 #task-segment-picker>summary{background:var(--c-0);box-shadow:var(--sh-xs)}
body.theme-v2 .task-organized-filters :is(#task-filter-count,.task-filter-count){font-size:12.5px!important;color:var(--c-500)!important;font-weight:600!important}
body.theme-v2 .task-organized-filters :is(.muted,small,p){font-size:12.5px!important;color:var(--c-500)!important}
body.theme-v2 .task-table td{vertical-align:top}
body.theme-v2 .task-table .task-status-badge{margin-top:4px}
body.theme-v2 .task-entry-row.status-in-field>td{background:#fffcf3}
body.theme-v2 .task-status-badge.status-pending{background:var(--c-75);color:var(--c-600);border:1px solid var(--c-150)}
body.theme-v2 .task-status-badge.status-in-field{background:var(--warn-50);color:var(--warn);border:1px solid var(--warn-100)}
body.theme-v2 .task-status-badge.status-completed{background:var(--ok-50);color:var(--ok);border:1px solid var(--ok-100)}

/* ====================== Communications Log ====================== */
body.theme-v2 .comms-header-grid{grid-template-columns:200px minmax(150px,220px) minmax(220px,1.4fr) minmax(200px,1fr)}
body.theme-v2 .comms-log-card{padding:20px 22px}
body.theme-v2 .comms-day-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px}
body.theme-v2 .comms-day-filter label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .comms-day-filter select{width:auto;min-width:200px;font-size:13.5px;font-weight:500}
body.theme-v2 #comms-day-count{font-size:12.5px;color:var(--c-500);font-weight:500}
body.theme-v2 .log-bulk-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px 14px;margin:0 0 14px;background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md)}
body.theme-v2 .log-bulk-tools>label{font-size:12.5px;font-weight:600;color:var(--c-700);margin-left:6px}
body.theme-v2 .log-bulk-tools>strong{font-size:12.5px;font-weight:600;color:var(--brand);padding:0 4px}
body.theme-v2 .log-bulk-tools>:is(select,input){width:auto;min-width:150px}
body.theme-v2 .log-bulk-tools>.muted{font-size:12.5px}
body.theme-v2 .comms-table td{vertical-align:top}
body.theme-v2 .comms-note-editor{min-height:30px;resize:vertical}
body.theme-v2 .comms-row-actions .comms-row-select{margin:0 4px 0 0}

/* ====================== Unit Log ====================== */
body.theme-v2 .module-summary-grid .module-summary-card .module-summary-value{font-size:22px;overflow-wrap:anywhere}
body.theme-v2 .unit-table td{vertical-align:middle}
body.theme-v2 .unit-table td :where(input,textarea){font-size:13.5px}
body.theme-v2 :is(.unit-inline-add-btn,.unit-delete-btn):not(.suite-nav-toggle){min-height:34px!important;font-size:12.5px!important;padding:5px 11px!important;border-radius:var(--r-sm)!important}
body.theme-v2 .unit-bottom-add-row{display:flex;justify-content:flex-end;margin-top:12px}
body.theme-v2 :is(.unit-info-list,.card) .muted{font-size:12.5px;color:var(--c-500);line-height:1.55}
body.theme-v2 .unit-log-note,body.theme-v2 .unit-pdf-note{font-size:13px;color:var(--c-600)}

/* ====================== Clue Log ====================== */
body.theme-v2 .clue-log-top-title{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0 0 14px;padding:0;border:0}
body.theme-v2 .clue-log-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
body.theme-v2 .clue-action-card{padding:18px 22px}
body.theme-v2 .uniform-clue-toolbar{gap:8px}
body.theme-v2 .clue-toolbar-btn:not(.suite-nav-toggle){font-size:13px!important;font-weight:600!important;min-height:38px!important;padding:8px 12px!important}
body.theme-v2 .clue-toolbar-btn.primary-action:not(.suite-nav-toggle){background:var(--brand)!important;border-color:var(--brand-600)!important;color:#fff!important}
body.theme-v2 .clue-more-options{margin-top:12px}
body.theme-v2 .clue-more-options>summary{font-size:13px;font-weight:600;color:var(--c-700);padding:4px 0;list-style:none;display:inline-flex;align-items:center;gap:8px}
body.theme-v2 .clue-more-options>summary::-webkit-details-marker{display:none}
body.theme-v2 .clue-more-options>summary::before{content:"";width:6px;height:6px;border-right:1.8px solid var(--c-500);border-bottom:1.8px solid var(--c-500);transform:rotate(-45deg);transition:transform .15s}
body.theme-v2 .clue-more-options[open]>summary::before{transform:rotate(45deg)}
body.theme-v2 .clue-more-options>.uniform-clue-toolbar{margin:10px 0 12px}
body.theme-v2 .clue-log-card{padding:20px 22px}
body.theme-v2 .clue-log-card-head .muted b{color:var(--c-800)}
body.theme-v2 .clue-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 12px}
body.theme-v2 .clue-filter-bar>label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .clue-filter-bar>select{width:auto;min-width:180px}
body.theme-v2 .clue-filter-bar .clue-toolbar-btn:not(.suite-nav-toggle){font-size:12.5px!important}
body.theme-v2 #clue-filter-count{font-size:12.5px;color:var(--c-500)}
body.theme-v2 #clue-table .clue-header-sort{font-size:11px;letter-spacing:.055em;text-transform:uppercase;font-weight:650;white-space:normal;line-height:1.3}
body.theme-v2 #clue-table .clue-sort-indicator{font-size:10px;color:var(--c-400)}
body.theme-v2 #clue-table th[aria-sort=ascending] .clue-sort-indicator,body.theme-v2 #clue-table th[aria-sort=descending] .clue-sort-indicator{color:var(--brand)}
body.theme-v2 .clue-table td :where(input,textarea,select){font-size:13px;padding:6px 8px;min-height:34px;box-shadow:none}
body.theme-v2 .clue-table td textarea{line-height:1.4}
body.theme-v2 :is(.clue-bottom-actions){display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid var(--c-100)}
body.theme-v2 :is(.clue-bottom-actions)>.danger-outline{margin-left:auto}
body.theme-v2 :is(.clue-form-link,.clue-add-link){font-size:12.5px;font-weight:600;color:var(--brand)}

/* ====================== Clue Report (detail) ====================== */
body.theme-v2 .clue-record-position{display:inline-flex;margin-top:10px;font-size:12.5px;font-weight:600;color:var(--c-700);background:var(--c-75);border-radius:999px;padding:3px 11px}
body.theme-v2 .clue-section{padding:20px 22px;margin-bottom:16px}
body.theme-v2 .clue-section-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0 0 16px;padding:0 0 12px;border-bottom:1px solid var(--c-100);text-align:left}
body.theme-v2 .clue-section-title.centered-title{justify-content:flex-start}
body.theme-v2 .clue-subsection-title{font-size:11.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--c-600);margin:0 0 10px}
body.theme-v2 :is(.clue-record-grid,.clue-task-grid){gap:14px 16px;margin-bottom:14px}
body.theme-v2 .clue-field-hint{font-size:11.5px;color:var(--c-500);margin-top:5px;line-height:1.4}
body.theme-v2 .clue-status-strip{background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md);padding:14px 16px;margin:4px 0 16px}
body.theme-v2 .clue-status-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
body.theme-v2 .clue-status-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--c-200);border-radius:var(--r-sm);background:var(--c-0);font-size:13px;font-weight:500;color:var(--c-800);cursor:pointer;min-height:42px}
body.theme-v2 .clue-status-item:hover{border-color:var(--c-300)}
body.theme-v2 .clue-status-item:has(input:checked){border-color:var(--brand);background:var(--brand-50)}
body.theme-v2 .clue-status-item.urgent b{color:var(--danger);font-weight:700;letter-spacing:.04em}
body.theme-v2 .clue-status-item.urgent:has(input:checked){border-color:var(--danger);background:var(--danger-50)}
body.theme-v2 .clue-status-item.completed:has(input:checked){border-color:var(--ok);background:var(--ok-50)}
body.theme-v2 .clue-status-note{max-width:420px}
body.theme-v2 .clue-description-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:16px;margin-bottom:14px}
body.theme-v2 .clue-description-side{display:flex;flex-direction:column;gap:14px}
body.theme-v2 .clue-description-field textarea{min-height:100%;height:100%}
body.theme-v2 .clue-record-bottom{grid-template-columns:1fr 1fr;gap:16px}
body.theme-v2 .clue-section-alert{display:flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:#86202b;background:var(--danger-50);border:1px solid var(--danger-100);border-left:4px solid var(--danger);border-radius:var(--r-md);padding:10px 14px;margin:0 0 16px;text-align:left}
body.theme-v2 .clue-react-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:16px;margin-bottom:14px}
body.theme-v2 .clue-actions-panel{background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md);padding:14px 16px}
body.theme-v2 .clue-actions-panel label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;color:var(--c-800);padding:6px 0;margin:0;cursor:pointer}
body.theme-v2 .clue-react-bottom{gap:16px}
body.theme-v2 .clue-routing-instruction{font-size:12.5px;color:var(--c-500);margin:-6px 0 12px}
body.theme-v2 .clue-routing-table{border:1px solid var(--c-150);border-radius:var(--r-md);overflow:hidden;background:var(--c-0)}
body.theme-v2 .clue-routing-row{display:grid;grid-template-columns:minmax(200px,1.4fr) minmax(90px,.55fr) minmax(200px,1fr) minmax(200px,1.6fr);gap:0;border-bottom:1px solid var(--c-100);align-items:center;background:none}
body.theme-v2 .clue-routing-row:last-child{border-bottom:0}
body.theme-v2 .clue-routing-row>div{padding:8px 10px;border:0;min-width:0}
body.theme-v2 .clue-routing-row.header{background:var(--c-50);border-bottom:1px solid var(--c-150)}
body.theme-v2 .clue-routing-row.header>div{font-size:11px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;color:var(--c-600);padding:10px}
body.theme-v2 .routing-position-cell label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--c-800);margin:0}
body.theme-v2 .routing-position-cell .route-other{margin-top:8px;width:100%}
body.theme-v2 .clue-routing-row :where(input:not([type=checkbox])){width:100%;min-height:34px;font-size:13px;box-shadow:none}
body.theme-v2 .clue-followup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .clue-followup-head .clue-section-title{margin:0;padding:0;border:0}
body.theme-v2 .clue-followup-table{border:1px solid var(--c-150);border-radius:var(--r-md);overflow:hidden}
body.theme-v2 :is(.clue-followup-header,.clue-followup-row){display:grid;grid-template-columns:120px minmax(0,1fr) 48px;gap:0;align-items:stretch}
body.theme-v2 .clue-followup-header{background:var(--c-50);border-bottom:1px solid var(--c-150)}
body.theme-v2 .clue-followup-header>div{font-size:11px;font-weight:650;letter-spacing:.055em;text-transform:uppercase;color:var(--c-600);padding:10px}
body.theme-v2 .clue-followup-row{border-bottom:1px solid var(--c-100);background:var(--c-0)}
body.theme-v2 .clue-followup-row:last-child{border-bottom:0}
body.theme-v2 .clue-followup-row>:is(input,textarea){margin:6px;width:auto;min-height:34px;font-size:13px;box-shadow:none;border-color:var(--c-150)}
body.theme-v2 .clue-followup-row>textarea{min-height:44px;resize:vertical}
body.theme-v2 .clue-followup-remove:not(.suite-nav-toggle){align-self:center;justify-self:center;width:30px;height:30px;min-height:30px!important;padding:0!important;font-size:16px!important;color:var(--c-500);border-radius:6px}
body.theme-v2 .clue-followup-remove:not(.suite-nav-toggle):hover{color:var(--danger);background:var(--danger-50);border-color:var(--danger-100)}
body.theme-v2 .sticky-clue-actions{position:sticky;bottom:12px;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0;padding:12px 14px;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-lg)}
body.theme-v2 .sticky-clue-actions>a:last-child{margin-left:auto}

/* ====================== Operations Notes ====================== */
body.theme-v2 :is(.invest-meta-card,.invest-toolbar-card){padding:20px 22px}
body.theme-v2 .invest-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
body.theme-v2 .invest-meta-card .muted{font-size:12.5px;color:var(--c-500);margin-top:14px}
body.theme-v2 .invest-toolbar-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:14px}
body.theme-v2 .invest-toolbar-heading .card-title{margin-bottom:6px}
body.theme-v2 .invest-toolbar-heading .muted{font-size:13px;color:var(--c-500)}
body.theme-v2 .invest-toolbar-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:12px 14px;background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md)}
body.theme-v2 .invest-toolbar-row label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .invest-toolbar-row select{width:auto;min-width:200px}
body.theme-v2 .invest-toolbar-card>.muted:last-child,body.theme-v2 .invest-toolbar-card>p{font-size:12.5px;color:var(--c-500);margin:12px 0 0}
body.theme-v2 .invest-empty{padding:28px 20px;text-align:center;font-size:13.5px;color:var(--c-500);background:var(--c-0);border:1px dashed var(--c-200);border-radius:var(--r-lg);box-shadow:none}
body.theme-v2 .invest-entry-card{padding:18px 20px}
body.theme-v2 .invest-entry-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .invest-entry-number{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:var(--brand-50);color:var(--brand);font-size:12px;font-weight:700}
body.theme-v2 .invest-entry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px}

/* ====================== Responsive ====================== */
@media(max-width:1200px){
  body.theme-v2 :is(.task-header-grid,.comms-header-grid,.clue-log-meta-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 :is(.comms-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .invest-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.theme-v2 :is(.task-header-grid,.comms-header-grid,.clue-log-meta-grid,.invest-meta-grid,.invest-entry-grid,.comms-summary-grid,.invest-summary-grid,.task-summary-grid,.module-summary-grid){grid-template-columns:minmax(0,1fr)!important}
  body.theme-v2 .task-import-grid{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .task-import-source{padding:0}
  body.theme-v2 .task-import-source+.task-import-source{padding:16px 0 0;margin-top:16px;border-left:0;border-top:1px solid var(--c-100)}
  body.theme-v2 :is(.task-import-card,.task-header-card,.comms-header-card,.clue-log-top-card,.task-log-card,.comms-log-card,.clue-log-card,.clue-action-card,.clue-section,.invest-meta-card,.invest-toolbar-card){padding:16px}
  body.theme-v2 :is(.clue-status-options,.clue-description-layout,.clue-react-layout,.clue-record-bottom,.clue-react-bottom){grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .clue-routing-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  body.theme-v2 .clue-routing-row.header{display:none}
  body.theme-v2 .clue-routing-row>.routing-position-cell{grid-column:1/-1;background:var(--c-25)}
  body.theme-v2 :is(.clue-followup-header,.clue-followup-row){grid-template-columns:90px minmax(0,1fr) 40px}
  body.theme-v2 .comms-bottom-actions>.danger-outline,body.theme-v2 .clue-bottom-actions>.danger-outline{margin-left:0}
  body.theme-v2 .sticky-clue-actions>a:last-child{margin-left:0}
  body.theme-v2 :is(.log-bulk-tools,.clue-filter-bar,.comms-day-filter,.invest-toolbar-row)>:is(select,input){width:100%;min-width:0}
}
}
@media screen{
body.theme-v2 .module-summary-value.small{font-size:17px!important;line-height:1.25}
body.theme-v2 .unit-official-note{margin-top:16px;font-size:12.5px;line-height:1.6;color:var(--c-600);background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-md);padding:12px 16px}
body.theme-v2 .unit-official-note b{color:var(--c-800)}
body.theme-v2 .invest-toolbar-row .field{margin:0}
body.theme-v2 .invest-entry-head strong{margin-left:10px;font-size:14px;font-weight:650;color:var(--c-900)}
body.theme-v2 .invest-entry-head .danger-outline:not(.suite-nav-toggle){min-height:32px;padding:5px 11px;font-size:12.5px}
}
@media screen{
body.theme-v2 .routing-position-cell label span{font-size:13px!important;font-weight:600!important;color:var(--c-800)!important}
body.theme-v2 .clue-section-title.followup-title{font-size:12px!important;letter-spacing:.075em!important}
body.theme-v2 .clue-followup-row>input{border-color:transparent;background:transparent}
body.theme-v2 .clue-followup-row>input:focus{border-color:var(--brand);background:var(--c-0)}
}
@media screen{
body.theme-v2 textarea.comms-note-editor{min-height:36px!important;field-sizing:content}
body.theme-v2 textarea.task-row-editor[name=task_description]{min-height:52px;field-sizing:content;overflow:auto;max-height:180px}
body.theme-v2 :is(.task-info-bar,.comms-info-bar){display:block;position:relative;padding-left:44px}
body.theme-v2 :is(.task-info-bar,.comms-info-bar) .info-dot{position:absolute;left:16px;top:13px;margin:0}
body.theme-v2 :is(.task-info-bar,.comms-info-bar) b{color:var(--c-800);font-weight:650}
}
@media screen{
body.theme-v2 .comms-summary-card:last-child .comms-summary-value{font-size:18px;letter-spacing:-.005em;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.theme-v2 #comms-selected-count{color:var(--brand)}
}
@media screen{
body.theme-v2 .unit-table td :is(textarea,.unit-auto-textarea){width:100%!important;box-sizing:border-box}
body.theme-v2 .unit-delete-btn:not(.suite-nav-toggle){color:var(--danger);border-color:var(--danger-100)}
body.theme-v2 .unit-delete-btn:not(.suite-nav-toggle):not(:disabled):hover{background:var(--danger-50);color:var(--danger-600)}
}
@media screen and (max-width:760px){
body.theme-v2 :is(.comms-summary-grid,.task-summary-grid,.module-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
body.theme-v2 :is(.comms-summary-card,.task-summary-card,.module-summary-card){flex-direction:column;align-items:flex-start;gap:8px;padding:12px 14px}
body.theme-v2 :is(.comms-summary-icon,.task-summary-icon,.module-summary-icon){width:32px;height:32px;flex-basis:32px;border-radius:8px}
body.theme-v2 :is(.comms-summary-value,.task-summary-value,.module-summary-value){font-size:20px}
body.theme-v2 :is(.comms-summary-label,.task-summary-label,.module-summary-label){font-size:11px}
body.theme-v2 :is(.comms-summary-card,.task-summary-card,.module-summary-card) :is(.comms-summary-sub,.task-summary-sub,.module-summary-sub){font-size:11.5px}
}
@media screen and (max-width:360px){
body.theme-v2 :is(.comms-summary-grid,.task-summary-grid,.module-summary-grid){grid-template-columns:minmax(0,1fr)!important}
}
@media screen and (max-width:760px){
body.theme-v2 .sticky-clue-actions{bottom:8px;padding:8px;gap:6px}
body.theme-v2 .sticky-clue-actions>*{flex:1 1 auto;min-height:36px!important;font-size:12.5px!important;padding:6px 10px!important}
}

}

/* ======================================================
   Page group: field
   ====================================================== */
@media screen{
/* theme_field.css — page styles (merged into theme.css at release) */
@media screen{
/* =====================  PAGE: Personnel & Vehicles  ===================== */
body.theme-v2 .personnel-checkin-page .card{margin-bottom:16px}
body.theme-v2 .personnel-checkin-page .checkin-grid4,
body.theme-v2 .personnel-checkin-page .checkin-grid5{gap:4px 16px}
body.theme-v2 .personnel-checkin-page .checkin-context form>.button{margin-top:2px}
body.theme-v2 .personnel-checkin-page .field-access-card{border-left:1px solid var(--c-150);box-shadow:var(--sh-xs),inset 3px 0 0 var(--sar)}
body.theme-v2 .personnel-checkin-page .field-access-card p{font-size:13px;line-height:1.55;margin:0 0 12px}
body.theme-v2 .personnel-checkin-page .field-access-card form.inline{display:inline-block;margin:0 6px 10px 0}
body.theme-v2 .personnel-checkin-page .field-access-card details{margin:2px 0 12px;font-size:13px}
body.theme-v2 .personnel-checkin-page .field-access-card details>summary{font-weight:600;color:var(--c-700);padding:4px 0}
body.theme-v2 .personnel-checkin-page .field-access-card details form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:8px}
body.theme-v2 .personnel-checkin-page .field-access-card details label{display:flex;flex-direction:column;gap:6px;flex:1 1 320px;font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .personnel-checkin-page .field-link-box{gap:8px;margin:12px 0}
body.theme-v2 .personnel-checkin-page .field-link-box input{font-family:var(--mono);font-size:12.5px}
body.theme-v2 .personnel-checkin-page .field-link-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:6px 0 12px;font-size:12.5px;color:var(--c-600);font-family:var(--mono)}
body.theme-v2 .personnel-checkin-page .field-link-meta .pill{font-family:var(--font)}
body.theme-v2 .personnel-checkin-page .field-access-card img{border-color:var(--c-150)!important;border-radius:var(--r-md)!important}

/* KPI row */
body.theme-v2 .personnel-checkin-page .checkin-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric{padding:14px 16px;border-radius:var(--r-lg)}
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric-k{font-size:11px}
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric-v{font-size:28px;margin-top:6px}
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric.good{background:var(--c-0);border-color:var(--c-150);box-shadow:var(--sh-xs),inset 3px 0 0 var(--ok)}
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric.good .metric-k,
body.theme-v2 .personnel-checkin-page .checkin-metrics .metric.good .metric-v{color:var(--ok)}

/* Segmented view switcher */
body.theme-v2 .personnel-checkin-page .checkin-tabs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 16px;padding:0}
body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button:not(.primary){background:var(--c-0)}
body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button:last-child{margin-left:auto}
body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button.primary{background:var(--c-900);border-color:var(--c-900);box-shadow:none}
body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button.primary:hover{background:var(--c-800);border-color:var(--c-800)}

body.theme-v2 .personnel-checkin-page .checkin-card-desc{margin:0 0 14px;font-size:13px}
body.theme-v2 .personnel-checkin-page .checkin-downloads-card .button{min-height:var(--control)}
body.theme-v2 .personnel-checkin-page .checkin-subsection-title{margin:8px 0 4px;padding-top:18px;border-top:1px solid var(--c-100)}
body.theme-v2 .personnel-checkin-page .checkin-subsection-desc{margin:0 0 12px;font-size:13px}
body.theme-v2 .personnel-checkin-page #manual-responder-checkin form>button[type=submit]{margin-top:6px}
body.theme-v2 .personnel-checkin-page .checkin-edit-card{border-color:var(--brand-100);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 .personnel-checkin-page .checkin-edit-actions{display:flex;gap:8px;margin-top:6px}

/* Qualification picker matches inputs */
body.theme-v2 .personnel-checkin-page .qualification-picker summary,
body.theme-v2 .qualification-picker>summary{height:auto;min-height:var(--control);padding:7px 11px;border:1px solid var(--c-200);border-radius:var(--r-sm);font-size:14px;color:var(--c-900);background:var(--c-0);box-shadow:var(--sh-xs)}
body.theme-v2 .qualification-picker[open]>summary{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 .personnel-checkin-page .qualification-chevron{border-color:var(--c-500)}
body.theme-v2 .personnel-checkin-page .qualification-options,
body.theme-v2 .qualification-options{border:1px solid var(--c-150);border-radius:var(--r-md);box-shadow:var(--sh-lg);padding:12px;gap:6px 12px}
body.theme-v2 .qualification-options label{font-size:13px;font-weight:500;color:var(--c-800);padding:4px 2px}

/* Selects keep the system chevron even where legacy shorthand resets background */
body.theme-v2 .personnel-checkin-page select:not([multiple]){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2366758a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:34px}
/* Bulk edit */
body.theme-v2 .personnel-checkin-page .bulk-personnel-header{border-bottom-color:var(--c-100)}
body.theme-v2 .personnel-checkin-page .bulk-personnel-footer{border-top-color:var(--c-100)}
body.theme-v2 .personnel-checkin-page #personnel-selection-count{font-size:12.5px;font-weight:600;color:var(--c-600);padding:0 4px}
body.theme-v2 .personnel-checkin-page .bulk-change-checkbox{font-size:12.5px;color:var(--c-600)}
body.theme-v2 .personnel-checkin-page .bulk-personnel-rules summary{font-size:13px;color:var(--c-700)}
body.theme-v2 .personnel-checkin-page .bulk-personnel-rules p{font-size:12.5px}

/* Roster + register tables */
body.theme-v2 .personnel-checkin-page .checkin-title-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
body.theme-v2 .personnel-checkin-page .checkin-title-actions>span{font-size:12px}
body.theme-v2 .personnel-checkin-page .checkin-title-actions .button{text-transform:none;letter-spacing:0}
body.theme-v2 .personnel-checkin-page .table-wrap table{min-width:980px}
body.theme-v2 .personnel-checkin-page .table-wrap td{white-space:nowrap;font-size:13px}
body.theme-v2 .personnel-checkin-page .table-wrap td:nth-child(2){font-weight:600;color:var(--c-900)}
body.theme-v2 .personnel-checkin-page .table-wrap td:is(:nth-child(3),:nth-child(4),:nth-child(6)){white-space:normal;min-width:110px}
body.theme-v2 .personnel-checkin-page .table-wrap td select{min-height:32px;padding-top:4px;padding-bottom:4px;font-size:13px;min-width:132px}
body.theme-v2 .personnel-checkin-page td.roster-actions{text-align:right}
body.theme-v2 .personnel-checkin-page td.roster-actions{white-space:nowrap}
body.theme-v2 .personnel-checkin-page td.roster-actions form.inline{display:inline-flex;gap:6px;align-items:center;margin:0 0 0 6px;vertical-align:middle}
body.theme-v2 .personnel-checkin-page td.roster-actions :is(.button,button){min-height:30px;padding:5px 10px;font-size:12.5px;border-radius:6px;white-space:nowrap}
body.theme-v2 .personnel-checkin-page td.roster-actions .roster-checkout{color:var(--warn)}

@media(max-width:1180px){
  body.theme-v2 .personnel-checkin-page .checkin-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
  body.theme-v2 .personnel-checkin-page .checkin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button{flex:1 1 140px}
  body.theme-v2 .personnel-checkin-page .checkin-tabs>a.button:last-child{margin-left:0;flex-basis:100%}
  body.theme-v2 .personnel-checkin-page .checkin-title-actions>div{width:100%}
}
}
@media screen{
body.theme-v2 .personnel-checkin-page .table-wrap :is(th,td):last-child{position:sticky;right:0;z-index:1;background:var(--c-0);box-shadow:-8px 0 8px -8px rgba(16,28,45,.18)}
body.theme-v2 .personnel-checkin-page .table-wrap th:last-child{background:var(--c-50)}
body.theme-v2 .personnel-checkin-page .table-wrap tbody tr:hover>td:last-child{background:#f8faff}
}
@media screen{
/* =====================  PAGE: After Action Report  ===================== */
body.theme-v2 .aar-status-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0 0 16px}
body.theme-v2 .aar-mission-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);overflow:hidden}
body.theme-v2 .aar-mission-strip>div{padding:12px 16px;border-right:1px solid var(--c-100);display:flex;flex-direction:column;gap:3px;min-width:0}
body.theme-v2 :is(.aar-mission-strip,.aar-status-box) span{font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 .aar-mission-strip b{font-size:14px;font-weight:650;color:var(--c-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.theme-v2 .aar-status-box{display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:150px;padding:12px 16px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .aar-status-pill{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;font-size:12px;font-weight:650;padding:3px 10px;border-radius:999px;background:var(--c-75);color:var(--c-700);border:1px solid var(--c-150)}
body.theme-v2 .aar-status-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
body.theme-v2 .aar-status-pill.status-in-progress{background:var(--warn-50);color:var(--warn);border-color:var(--warn-100)}
body.theme-v2 .aar-status-pill.status-complete{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}

body.theme-v2 .aar-section{padding:20px 22px;margin-bottom:16px}
body.theme-v2 .aar-section .section-headline{padding-bottom:14px;margin-bottom:16px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .aar-section .section-headline .card-title{margin-bottom:4px}
body.theme-v2 .aar-section .section-headline .muted{font-size:13px;line-height:1.5}
body.theme-v2 .aar-grid{gap:4px 16px}
body.theme-v2 .aar-mission-data-panels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:6px}
body.theme-v2 .aar-subcard{background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md);padding:14px 16px;min-width:0}
body.theme-v2 .aar-subtitle{font-size:11px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-600);margin:0 0 10px}
body.theme-v2 .aar-subtitle-row{margin-bottom:10px}
body.theme-v2 .aar-subtitle-row .aar-subtitle{margin:0}
body.theme-v2 .aar-mini-label{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--c-500);margin:14px 0 4px}
body.theme-v2 .aar-check{font-size:13px;font-weight:500;color:var(--c-800);margin:8px 0;column-gap:9px;grid-template-columns:16px minmax(0,1fr)}
body.theme-v2 .aar-check input[type=checkbox],body.theme-v2 .aar-check input[type=radio]{width:16px!important;min-width:16px!important;max-width:16px!important;height:16px!important;min-height:16px!important;max-height:16px!important;accent-color:var(--brand)}
body.theme-v2 .aar-inline-other{margin-top:8px}
body.theme-v2 .aar-compact-grid{gap:4px 10px}
body.theme-v2 .aar-compact-grid label{font-size:12px}
body.theme-v2 .aar-attachment-row{gap:4px;margin:4px 0 12px}

body.theme-v2 .aar-three-column{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-rows:auto auto;gap:0 16px;align-items:start}
body.theme-v2 .aar-three-column>.aar-section:first-child{grid-row:span 2}
body.theme-v2 .aar-resource-table-wrap{border:1px solid var(--c-150);border-radius:var(--r-md);overflow:auto}
body.theme-v2 .aar-resource-table{min-width:0}
body.theme-v2 .aar-resource-table th{font-size:11px;padding:9px 10px}
body.theme-v2 .aar-resource-table td{font-size:13px;padding:6px 10px}
body.theme-v2 .aar-resource-table td:not(:first-child){width:84px}
body.theme-v2 .aar-resource-table input:not([type=checkbox]){min-height:32px;padding:5px 8px;font-size:13px;width:100%;text-align:right}
body.theme-v2 .aar-check.resource span{font-weight:550}
body.theme-v2 .aar-auto-resource-row td{background:var(--brand-50)}
body.theme-v2 :is(.aar-sync-source,.aar-linked-badge){display:inline-flex;align-items:center;font-size:10.5px;font-weight:650;letter-spacing:.03em;padding:2px 8px;border-radius:999px;background:var(--brand-50);color:var(--brand);border:1px solid var(--brand-100);margin-top:4px;white-space:nowrap}
body.theme-v2 .aar-scenario-list{gap:10px;margin-top:12px}
body.theme-v2 .aar-scenario{grid-template-columns:26px 1fr;gap:10px}
body.theme-v2 .aar-scenario span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--c-75);color:var(--c-700);font-size:12px;font-weight:700;margin-top:6px}

body.theme-v2 .aar-agency-grid{gap:12px;margin-top:10px}
body.theme-v2 .aar-agency-row{grid-template-columns:minmax(0,1fr) 64px;gap:10px;padding:2px 0;border-bottom:1px solid var(--c-100)}
body.theme-v2 .aar-agency-row:last-of-type{border-bottom:0}
body.theme-v2 .aar-agency-row input:not([type=checkbox]),body.theme-v2 .aar-local-row input{min-height:32px;padding:5px 8px;font-size:13px}
body.theme-v2 .aar-agency-row input:not([type=checkbox]){text-align:center}
body.theme-v2 .aar-detail-input{min-height:32px;padding:5px 9px;font-size:13px;margin:4px 0 8px;width:100%}
body.theme-v2 .aar-local-row{grid-template-columns:minmax(0,1fr) 56px auto;gap:6px}
body.theme-v2 .aar-local-row .unit-delete-btn{color:var(--danger)}
body.theme-v2 .aar-subtitle-row .summary-link-button{min-height:30px;padding:4px 10px;font-size:12.5px}

body.theme-v2 .aar-bottom-actions{display:flex;justify-content:flex-end;gap:10px;margin:4px 0 16px;padding:16px 0 0;border-top:1px solid var(--c-150)}
body.theme-v2 .aar-bottom-actions>*{min-width:200px}
body.theme-v2 .aar-bottom-actions>button{order:2}

@media(max-width:1180px){
  body.theme-v2 .aar-mission-data-panels{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .aar-three-column{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .aar-three-column>.aar-section:first-child{grid-row:auto}
  body.theme-v2 .aar-agency-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media(max-width:760px){
  body.theme-v2 .aar-status-row{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .aar-mission-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .aar-mission-strip>div:nth-child(2n){border-right:0}
  body.theme-v2 .aar-mission-strip>div:nth-child(-n+2){border-bottom:1px solid var(--c-100)}
  body.theme-v2 .aar-mission-data-panels,body.theme-v2 .aar-agency-grid{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .aar-section{padding:16px}
  body.theme-v2 .aar-bottom-actions{flex-direction:column}
  body.theme-v2 .aar-bottom-actions>*{width:100%}
}
}
@media screen{
/* =====================  PAGE: Map Preview  ===================== */
body.theme-v2 .map-preview-heading{margin-bottom:20px}
body.theme-v2 .map-preview-heading h1{color:var(--c-900);font-size:24px}
body.theme-v2 .map-preview-heading p{font-size:14px;color:var(--c-500)}
body.theme-v2 .map-preview-controls{gap:16px}
body.theme-v2 .map-preview-controls form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;align-items:end;padding:16px 18px;border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .map-preview-controls label{grid-column:1/-1;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0}
body.theme-v2 .map-preview-controls select{margin:0}
body.theme-v2 .map-preview-controls button{white-space:nowrap}
body.theme-v2 .map-preview-frame{background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);overflow:hidden}
body.theme-v2 .map-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--c-100);background:var(--c-25)}
body.theme-v2 .map-preview-toolbar strong{display:block;font-size:14px;font-weight:650;color:var(--c-900)}
body.theme-v2 .map-preview-toolbar small{display:block;font-size:12px;color:var(--c-500)}
body.theme-v2 .map-preview-note{font-size:13.5px;color:var(--c-600);line-height:1.55}
body.theme-v2 .map-preview-note a:not(.button){color:var(--brand);font-weight:600}
body.theme-v2 .map-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;padding:48px 24px!important;min-height:220px;background:repeating-linear-gradient(135deg,var(--c-25) 0 12px,var(--c-0) 12px 24px)}
body.theme-v2 .map-preview-empty .map-empty-icon{width:36px;height:36px;padding:8px;box-sizing:content-box;border-radius:12px;background:var(--brand-50);color:var(--brand);stroke-width:1.6}
body.theme-v2 .map-preview-empty .button{margin-top:6px}
body.theme-v2 .map-preview-error{color:var(--danger)}
@media(max-width:760px){
  body.theme-v2 .map-preview-controls form{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .map-preview-heading{flex-wrap:wrap}
}
}
@media screen{
/* =====================  PAGE: CalTopo / SARTopo API  ===================== */
body.theme-v2 .api-shell{max-width:none;margin:0}
body.theme-v2 .api-top{margin-bottom:20px;align-items:flex-start}
body.theme-v2 .api-eyebrow{display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--warn);background:var(--warn-50);border:1px solid var(--warn-100);border-radius:999px;padding:2px 9px;margin-bottom:10px}
body.theme-v2 .api-title h1{font-size:24px;margin:0}
body.theme-v2 .api-title p{font-size:14px;color:var(--c-500);margin-top:6px}
body.theme-v2 .api-shell h2{font-size:15px;font-weight:650;color:var(--c-900);margin:0 0 4px}
body.theme-v2 .api-shell h3{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin:0 0 12px}
body.theme-v2 .api-section-head{margin-bottom:16px}
body.theme-v2 .api-section-desc{font-size:13px;color:var(--c-500);line-height:1.5}

/* 5-step strip */
body.theme-v2 .workflow5{border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);background:var(--c-0);margin-bottom:16px}
body.theme-v2 .wf5{padding:14px 16px;min-height:0;border-right:1px solid var(--c-100);gap:10px;align-items:flex-start;position:relative}
body.theme-v2 .wf5 strong{display:block;font-size:13px;font-weight:650;color:var(--c-900);line-height:1.3}
body.theme-v2 .wf5 span:not(.num){display:block;font-size:12px;color:var(--c-500);margin-top:2px}
body.theme-v2 .wf5 .num{width:26px;height:26px;min-width:26px;font-size:12px;font-weight:700;background:var(--c-0);border:1.5px solid var(--c-300);color:var(--c-600)}
body.theme-v2 .wf5.active{background:var(--brand-50);box-shadow:inset 0 -2px 0 var(--brand)}
body.theme-v2 .wf5.active .num{background:var(--brand);border-color:var(--brand);color:#fff}
body.theme-v2 .wf5.done .num{background:var(--ok);border-color:var(--ok);color:#fff}
body.theme-v2 .wf5.done strong{color:var(--c-900)}

/* Section cards */
body.theme-v2 :is(.setup-card,.status-card,.upload-card){background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);padding:20px 22px;margin-bottom:16px}
body.theme-v2 .setup-grid{display:grid;grid-template-columns:minmax(300px,1.1fr) minmax(0,1.4fr) minmax(220px,.85fr);gap:14px;align-items:start}
body.theme-v2 .setup-grid .panel{background:var(--c-25);border:1px solid var(--c-150);border-radius:var(--r-md);padding:16px 18px;box-shadow:none;min-width:0}
body.theme-v2 .connected-box{background:var(--ok-50);border:1px solid var(--ok-100);border-radius:var(--r-md);padding:12px 14px;margin-bottom:12px}
body.theme-v2 .connected-box.needs-setup{background:var(--warn-50);border-color:var(--warn-100)}
body.theme-v2 .connected-title{font-size:13.5px;font-weight:650;color:var(--ok);margin-bottom:6px}
body.theme-v2 .connected-box.needs-setup .connected-title{color:var(--warn)}
body.theme-v2 .connected-line{font-size:12.5px;color:var(--c-700);line-height:1.6}
body.theme-v2 .connected-line b{font-weight:600;color:var(--c-800)}
body.theme-v2 .small-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
body.theme-v2 .small-actions .btn{width:100%;white-space:nowrap}
body.theme-v2 .last-tested{font-size:12px;color:var(--c-500);margin-top:8px}
body.theme-v2 .credentials-details{margin-top:14px;padding-top:12px;border-top:1px solid var(--c-150)}
body.theme-v2 .credentials-details>summary{font-size:13px;font-weight:650;color:var(--c-800);padding:2px 0}
body.theme-v2 .api-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:10px}
body.theme-v2 .api-grid2 label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:var(--c-700)}
body.theme-v2 .api-grid2 input{width:100%;min-width:0}
body.theme-v2 .api-form-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
body.theme-v2 .credentials-details p.muted{font-size:12px;line-height:1.55;margin:12px 0 0}
body.theme-v2 .map-toolbar{display:flex;gap:8px;margin-bottom:12px}
body.theme-v2 .map-toolbar input{flex:1;min-width:0}
body.theme-v2 .map-list{width:100%;border-radius:var(--r-md);font-size:13px;padding:4px}
body.theme-v2 .map-list option{padding:6px 8px;border-radius:5px}
body.theme-v2 .linked-card{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:12px 14px;border:1px solid var(--brand-100);background:var(--brand-50);border-radius:var(--r-md)}
body.theme-v2 .linked-card .label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
body.theme-v2 .linked-card .title{font-size:14px;font-weight:650;color:var(--c-900)}
body.theme-v2 .linked-card .meta{font-size:12px;color:var(--c-500);font-family:var(--mono)}
body.theme-v2 .mini-badge{font-size:10.5px;font-weight:700;letter-spacing:.05em;padding:2px 8px;border-radius:999px;background:var(--c-75);color:var(--c-600)}
body.theme-v2 .mini-badge.good{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
body.theme-v2 .action-help{font-size:12px;color:var(--c-500);margin-top:5px;text-align:center}
body.theme-v2 .api-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 20px;text-align:center;font-size:13px;line-height:1.55;color:var(--c-500);border:1px dashed var(--c-200);border-radius:var(--r-md);background:var(--c-0)}
body.theme-v2 .api-empty .ui-i{width:26px;height:26px;color:var(--c-400);margin-bottom:4px}
body.theme-v2 .api-empty b{color:var(--c-700);font-weight:650}
body.theme-v2 .help-panel{background:var(--c-0)!important}
body.theme-v2 .help-title{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin-bottom:12px}
body.theme-v2 .help-box{border:0;border-top:1px solid var(--c-100);border-radius:0;padding:12px 0 4px;background:none}
body.theme-v2 .help-box b{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650;color:var(--c-900)}
body.theme-v2 .help-box p{font-size:12.5px;line-height:1.55;color:var(--c-600);margin:6px 0 0}

body.theme-v2 .status-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
body.theme-v2 .sync-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;border:0;background:none;padding:0}
body.theme-v2 .sync-stat{padding:14px 16px;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-25);box-shadow:none}
body.theme-v2 .sync-stat strong{display:block;font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-600)}
body.theme-v2 .sync-stat span{display:block;font-size:14px;font-weight:600;color:var(--c-900);margin-top:6px;line-height:1.4}
body.theme-v2 .sync-stat.sync-stat-primary strong{color:var(--warn)}
body.theme-v2 .sync-stat.sync-stat-primary.is-synced{background:var(--ok-50);border-color:var(--ok-100)}
body.theme-v2 .sync-stat.sync-stat-primary.is-synced strong{color:var(--ok)}
body.theme-v2 .sync-stat.sync-stat-primary span{font-size:12.5px;font-weight:500;color:var(--c-600)}

body.theme-v2 .upload-card>p{font-size:13px;color:var(--c-500);margin:0 0 14px;line-height:1.55}
body.theme-v2 .upload-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:12px;align-items:stretch}
body.theme-v2 .upload-zone{border:0;padding:0;background:none;display:flex;align-items:center}
body.theme-v2 .upload-zone input[type=file]{min-height:56px}
body.theme-v2 .upload-row .ready-box{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:10px 14px;font-weight:500}
body.theme-v2 .upload-row .ready-box b{font-size:13.5px;font-weight:650}
body.theme-v2 .upload-row .ready-box span{font-size:12px}
body.theme-v2 .upload-row .ready-box.is-pending{background:var(--c-25);border-color:var(--c-150);color:var(--c-700)}
body.theme-v2 .upload-row .footer-actions{display:flex;align-items:center}
body.theme-v2 .api-continue{display:flex;justify-content:flex-end;margin-top:12px}
body.theme-v2 .api-shell details.advanced{padding:0;overflow:hidden}
body.theme-v2 .api-shell details.advanced>summary{padding:15px 20px;font-size:13.5px;font-weight:600;color:var(--c-800)}
body.theme-v2 .api-shell details.advanced>:not(summary){margin:0 20px 16px}

@media(max-width:1280px){
  body.theme-v2 .setup-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
  body.theme-v2 .setup-grid .help-panel{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
  body.theme-v2 .setup-grid .help-panel .help-title{grid-column:1/-1}
  body.theme-v2 .workflow5{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:900px){
  body.theme-v2 .setup-grid,body.theme-v2 .upload-row{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .sync-status{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.theme-v2 .workflow5{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .wf5{border-right:0;border-bottom:1px solid var(--c-100)}
}
@media(max-width:560px){
  body.theme-v2 .api-grid2,body.theme-v2 .action-row,body.theme-v2 .setup-grid .help-panel{grid-template-columns:minmax(0,1fr)}
  body.theme-v2 .api-top{flex-wrap:wrap}
}
}
@media screen{
body.theme-v2 .upload-row .ready-box.is-pending b{color:var(--c-800)}
body.theme-v2 .upload-row .ready-box.is-pending span{color:var(--c-500)}
body.theme-v2 .upload-row .ready-box:not(.is-pending) span{color:#2f6b47}
body.theme-v2 .map-toolbar input[type=search]{padding:7px 11px}
body.theme-v2 .api-empty br{display:none}
}
@media screen{
/* =====================  PAGE: Google Drive Test  ===================== */
body.theme-v2 .drive-shell{max-width:none}
body.theme-v2 .drive-hero{margin-bottom:20px;align-items:flex-start}
body.theme-v2 .drive-hero h1{color:var(--c-900);font-size:24px}
body.theme-v2 .drive-hero p{font-size:14px;color:var(--c-500);margin-top:6px}
body.theme-v2 .drive-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:650;letter-spacing:.04em;padding:4px 11px}
body.theme-v2 .drive-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
body.theme-v2 .drive-badge.on{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
body.theme-v2 .drive-badge.off{background:var(--c-75);color:var(--c-600);border-color:var(--c-150)}
body.theme-v2 .drive-grid{gap:16px;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr)}
body.theme-v2 .drive-card{padding:20px 22px;margin-bottom:16px}
body.theme-v2 .drive-card h2{font-size:15px;font-weight:650;color:var(--c-900);margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--c-100)}
body.theme-v2 .drive-card h3{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700)}
body.theme-v2 .drive-label{font-size:12.5px;font-weight:600;color:var(--c-700)}
body.theme-v2 .drive-help{font-size:12.5px;color:var(--c-500);line-height:1.5}
body.theme-v2 .drive-status{border:1px solid var(--brand-100);border-left:3px solid var(--brand);background:var(--brand-50);border-radius:var(--r-md);font-size:13px;color:#173a8a}
body.theme-v2 .drive-step{gap:12px;margin:12px 0}
body.theme-v2 .drive-step span{min-width:24px;height:24px;background:var(--brand-50);color:var(--brand);border:1px solid var(--brand-100);font-size:12px;font-weight:700}
body.theme-v2 .drive-step div{font-size:13px;line-height:1.5;color:var(--c-700)}
body.theme-v2 .drive-card ol{padding-left:22px;margin:0;font-size:13px;color:var(--c-700);line-height:1.9}
body.theme-v2 .drive-card ol li::marker{color:var(--c-400);font-variant-numeric:tabular-nums}
@media(max-width:900px){body.theme-v2 .drive-grid{grid-template-columns:minmax(0,1fr)}}

/* =====================  PAGE: iPad / Command View  ===================== */
body.theme-v2 .cv-page{max-width:none}
body.theme-v2 .cv-heading{margin-bottom:20px}
body.theme-v2 .cv-mission{box-shadow:var(--sh-xs),inset 3px 0 0 var(--sar)}
body.theme-v2 .cv-remote .cv-mission{box-shadow:none}
body.theme-v2 .cv-mission h2{font-size:17px;font-weight:650;color:var(--c-900);margin:4px 0 6px}
body.theme-v2 .cv-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;color:var(--c-600);font-variant-numeric:tabular-nums}
body.theme-v2 .cv-mission .cv-label{color:var(--sar);font-size:12.5px;letter-spacing:.02em}
body.theme-v2 .cv-status{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:650;background:var(--c-75);color:var(--c-600);border:1px solid var(--c-150)}
body.theme-v2 .cv-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
body.theme-v2 .cv-status.enabled{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
body.theme-v2 .cv-grid{gap:16px}
body.theme-v2 .cv-steps{margin:6px 0 14px}
body.theme-v2 .cv-step{gap:12px;align-items:center;font-size:13.5px;color:var(--c-700);padding:8px 0;border-bottom:1px solid var(--c-100)}
body.theme-v2 .cv-step:last-child{border-bottom:0}
body.theme-v2 .cv-step span{width:24px;height:24px;min-width:24px;border-radius:50%;display:grid;place-items:center;background:var(--brand-50);color:var(--brand);border:1px solid var(--brand-100);font-size:12px;font-weight:700}
body.theme-v2 .cv-qr{text-align:center}
body.theme-v2 .cv-qr .card-title{text-align:left}
body.theme-v2 .cv-code{border:1px solid var(--c-150);border-radius:var(--r-md);padding:8px;background:#fff}
body.theme-v2 .cv-qr-empty{display:grid;place-items:center;min-height:160px;padding:20px;border:1px dashed var(--c-200);border-radius:var(--r-md);background:var(--c-25);font-size:13px;color:var(--c-500)}
body.theme-v2 .cv-remote details>summary{font-size:13.5px;font-weight:650!important;color:var(--c-800)}
body.theme-v2 .cv-remote details{border-top-color:var(--c-100)!important}
body.theme-v2 .cv-danger{color:var(--danger)!important;border-color:var(--danger-100)!important;background:var(--c-0)!important}
body.theme-v2 .cv-password-row label{font-size:12.5px;font-weight:600;color:var(--c-700)}
}
@media screen{body.theme-v2 .drive-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--brand)}}
@media screen and (max-width:560px){body.theme-v2 .map-toolbar{flex-wrap:wrap}body.theme-v2 .map-toolbar input{flex-basis:100%}}
@media screen{
/* `.pill.ready` collides with the header `.ready` status chip; restore the pill */
body.theme-v2 .personnel-checkin-page .field-link-meta .pill{display:inline-flex!important;align-items:center;gap:5px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:650;letter-spacing:.04em;background:var(--c-75);color:var(--c-600);border:1px solid var(--c-150);white-space:nowrap}
body.theme-v2 .personnel-checkin-page .field-link-meta .pill.ready{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
}

}

/* ======================================================
   Page group: taf
   ====================================================== */
@media screen{
/* theme_taf.css — page styles (merged into theme.css at release) */
@media screen{

/* =====================  PAGE: TAF Generator (simple)  ===================== */
body.theme-v2 .taf-simple{color:var(--c-900);font-size:14px}
body.theme-v2 .taf-simple h1{color:var(--c-900);font-size:24px;letter-spacing:-.018em}
body.theme-v2 .taf-simple .mission-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 22px;color:var(--c-500);font-size:14px}
body.theme-v2 .taf-simple .mission-line b{color:var(--c-800);font-weight:650}
body.theme-v2 .taf-simple :is(button,a.button){font-size:13px;min-height:var(--control);padding:8px 14px;border-radius:var(--r-sm)}

/* Step cards */
body.theme-v2 .taf-top-workflow{gap:14px;margin-bottom:14px;counter-reset:none}
body.theme-v2 .taf-top-workflow .taf-package-step{padding:18px 20px 20px;gap:14px;border:1px solid var(--c-150);border-radius:var(--r-lg);background:var(--c-0);box-shadow:var(--sh-xs);position:relative}
body.theme-v2 .taf-top-workflow .taf-package-step:last-child{border-color:var(--brand-100);box-shadow:var(--sh-xs),inset 0 3px 0 var(--brand)}
body.theme-v2 .taf-top-workflow .taf-package-step h3{display:flex;align-items:center;gap:10px;margin:0;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700)}
body.theme-v2 .taf-simple .step-no{width:24px;height:24px;border-radius:50%;background:var(--c-900);color:#fff;border:0;font-size:12px;font-weight:700;letter-spacing:0}
body.theme-v2 .taf-top-workflow .taf-package-step:last-child .step-no{background:var(--brand)}
body.theme-v2 .taf-top-workflow .progress-count{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin:0 0 8px;color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .taf-top-workflow .progress-count.all-matched{color:var(--ok)}
body.theme-v2 .taf-metric-label{font-size:13px;font-weight:500;letter-spacing:0;color:var(--c-500)}
body.theme-v2 .taf-top-workflow .taf-step-context{font-size:13px;color:var(--c-700);line-height:1.45;margin:0 0 6px;min-height:38px}
body.theme-v2 .taf-top-workflow .taf-step-content>.subtle,body.theme-v2 .taf-simple .subtle{font-size:12px;color:var(--c-500)}
body.theme-v2 .taf-loaded-maps span{color:var(--c-800);font-weight:600}
body.theme-v2 .taf-loaded-maps small{font-size:12px;color:var(--c-500)}
body.theme-v2 .taf-attention-text{color:var(--warn)!important;font-weight:600}
body.theme-v2 .taf-attention-text::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#d98a07;margin-right:6px;vertical-align:1px}
body.theme-v2 .taf-print-options{gap:6px 16px;min-height:38px}
body.theme-v2 .taf-top-workflow .taf-print-options .inline-check{font-size:13px;color:var(--c-700)}
body.theme-v2 .taf-workflow-actions{gap:8px}
body.theme-v2 .taf-workflow-actions>button{min-height:40px;font-size:13px}
body.theme-v2 .taf-workflow-actions>button.primary{font-size:13.5px}
body.theme-v2 .taf-map-upload>summary{min-height:40px;padding:8px 12px;border:1px solid var(--c-200);border-radius:var(--r-sm);background:var(--c-0);box-shadow:var(--sh-xs);font-size:13px;font-weight:600;color:var(--c-800)}
body.theme-v2 .taf-map-upload>summary:hover,body.theme-v2 .taf-map-upload[open]>summary{background:var(--c-50);border-color:var(--c-300)}
body.theme-v2 .taf-upload-content{display:grid;gap:8px}
body.theme-v2 .taf-upload-content label.subtle{font-weight:600;color:var(--c-700)}
body.theme-v2 .busy-text{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:10px 14px;border-radius:var(--r-md);background:var(--brand-50);border:1px solid var(--brand-100);color:var(--brand-700);font-size:13px;font-weight:600}
body.theme-v2 .busy-text:empty{display:none}
body.theme-v2 .busy-text::before{content:"";width:14px;height:14px;border-radius:50%;border:2px solid var(--brand-100);border-top-color:var(--brand);animation:taf-spin .8s linear infinite}
@keyframes taf-spin{to{transform:rotate(360deg)}}

/* Settings disclosures */
body.theme-v2 .taf-top-options{gap:14px;margin-bottom:18px}
body.theme-v2 .taf-top-options>.taf-settings-panel{background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .taf-settings-panel>summary{min-height:48px;padding:12px 18px;font-size:13.5px}
body.theme-v2 .taf-settings-panel>summary::before{content:"";width:7px;height:7px;border-right:1.8px solid var(--c-500);border-bottom:1.8px solid var(--c-500);transform:rotate(-45deg);transition:transform .15s;margin-right:2px}
body.theme-v2 .taf-settings-panel[open]>summary::before{transform:rotate(45deg)}
body.theme-v2 .taf-settings-panel>summary:hover{background:var(--c-25)}
body.theme-v2 .taf-settings-panel[open]>summary{background:var(--c-0);border-bottom:1px solid var(--c-100)}
body.theme-v2 .taf-settings-title{font-weight:650;color:var(--c-900)}
body.theme-v2 .taf-settings-hint{font-size:12px;color:var(--c-500)}
body.theme-v2 .taf-settings-body{padding:18px}
body.theme-v2 .taf-settings-body .field label{font-size:12.5px;font-weight:600;color:var(--c-700);min-height:0}
body.theme-v2 .taf-settings-body :is(input[type=text],input[type=number]){height:auto;min-height:var(--control)}
body.theme-v2 .taf-settings-footer{font-size:13px;border-top-color:var(--c-100)}
body.theme-v2 .taf-advanced-link{display:inline-flex;align-items:center;gap:5px;font-weight:600;color:var(--brand)}
body.theme-v2 .taf-advanced-link .ui-i{width:14px;height:14px}
body.theme-v2 .taf-connection-info{font-size:13px}
body.theme-v2 .taf-connection-info>div{grid-template-columns:80px minmax(0,1fr)}
body.theme-v2 .taf-connection-info dt{color:var(--c-500);font-weight:600}
body.theme-v2 .taf-connection-info dd{color:var(--c-900);font-variant-numeric:tabular-nums}

/* Review table */
body.theme-v2 .taf-review-panel{border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);background:var(--c-0)}
body.theme-v2 .taf-review-head{padding:18px 20px 12px}
body.theme-v2 .taf-simple .taf-review-panel .taf-review-head h2{font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700)}
body.theme-v2 .selection-count{display:inline-block;line-height:22px;padding:0 10px;border-radius:999px;background:var(--brand-50);border:1px solid var(--brand-100);color:var(--brand);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
body.theme-v2 .taf-review-controls{padding:0 20px 16px;gap:8px}
body.theme-v2 .taf-review-controls .inline-check{font-size:13px;color:var(--c-700)}
body.theme-v2 .taf-review-table{border:0;border-top:1px solid var(--c-150);border-radius:0;max-height:72vh}
body.theme-v2 .taf-review-table th{background:var(--c-50);color:var(--c-600);font-size:11px;padding:10px 12px;border-bottom:1px solid var(--c-150)}
body.theme-v2 .taf-review-table th:first-child,body.theme-v2 .taf-review-table td:first-child{padding-left:20px}
body.theme-v2 .taf-review-table th:nth-child(1){width:52px}
body.theme-v2 .taf-review-table th:nth-child(2){width:118px}
body.theme-v2 .taf-review-table th:nth-child(4){width:64px}
body.theme-v2 .taf-review-table th:nth-child(5){width:230px}
body.theme-v2 .taf-review-table th:nth-child(6){width:150px}
body.theme-v2 .taf-review-table td{padding:12px;font-size:13px;border-top:0;border-bottom:1px solid var(--c-100);vertical-align:top;background:var(--c-0)}
body.theme-v2 .taf-review-table td:first-child{padding-top:20px}
body.theme-v2 .taf-review-table td:nth-child(4){padding-top:20px;color:var(--c-600);font-weight:600;font-size:12px;letter-spacing:.04em}
body.theme-v2 .taf-review-table tbody tr:hover>td{background:#fafbff}
body.theme-v2 .taf-review-table tr.problem-row>td{background:var(--c-0)}
body.theme-v2 .taf-review-table tr.problem-row>td:first-child{box-shadow:inset 3px 0 0 #e9a23b}
body.theme-v2 .taf-review-table tr.is-selected>td{background:#f7f9ff}
body.theme-v2 .taf-review-table tr.problem-row.is-selected>td{background:#fffcf5}
body.theme-v2 .taf-review-table :is(input[type=text],select){min-height:36px;padding:6px 9px;font-size:13px;border-color:var(--c-200);border-radius:var(--r-sm)}
body.theme-v2 .taf-review-table select{padding-right:30px;background-position:right 8px center}
body.theme-v2 .taf-review-table .task-name{font-weight:650;font-variant-numeric:tabular-nums}
body.theme-v2 .taf-instruction{gap:6px}
body.theme-v2 .taf-instruction textarea{font-size:13px;line-height:1.55;border-radius:var(--r-sm)}
body.theme-v2 .taf-instruction textarea[readonly]{padding:7px 0 0;color:var(--c-800);box-shadow:none;background:transparent}
body.theme-v2 .taf-simple .taf-edit-instructions{flex:0 0 30px;width:30px;min-height:30px;height:30px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--c-500);box-shadow:none}
body.theme-v2 .taf-simple .taf-edit-instructions:hover{background:var(--c-75);color:var(--brand);border-color:var(--c-150)}
body.theme-v2 .taf-simple .taf-edit-instructions[aria-pressed=true]{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand)}
body.theme-v2 .taf-map-preview{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:12.5px;font-weight:600;color:var(--brand)}
body.theme-v2 .taf-map-preview:hover{text-decoration:underline}
body.theme-v2 .taf-status{display:inline-flex;align-items:flex-start;gap:6px;margin-top:6px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:650;line-height:1.45;background:var(--ok-50);color:var(--ok);border:1px solid var(--ok-100)}
body.theme-v2 .taf-status::before{content:"";flex:0 0 6px;height:6px;border-radius:50%;background:currentColor;margin-top:6px}
body.theme-v2 .taf-status.problem{background:var(--warn-50);color:var(--warn);border-color:var(--warn-100);border-radius:var(--r-sm)}
body.theme-v2 .taf-save-row{padding:14px 20px;border-top:0;background:var(--c-25);border-radius:0 0 var(--r-lg) var(--r-lg)}
body.theme-v2 .taf-empty{padding:48px 20px;font-size:14px;color:var(--c-500);border-top:1px solid var(--c-100)}
body.theme-v2 .taf-column-grip::after{background:var(--c-300)}
body.theme-v2 .taf-column-grip:hover::after,body.theme-v2 .taf-column-grip:focus::after{background:var(--brand)}

@media(max-width:760px){
  body.theme-v2 .taf-top-workflow .progress-count{font-size:26px}
  body.theme-v2 .taf-review-head{flex-wrap:wrap}
  body.theme-v2 .taf-review-controls>button{flex:1 1 auto}
  body.theme-v2 .taf-review-controls .inline-check{margin:4px 0 0}
}


/* =====================  PAGE: TAF Generator — advanced overview  ===================== */
body.theme-v2 .taf-option3-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:24px 26px;margin-bottom:16px;
  background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);border-left:1px solid var(--c-150);min-height:0}
body.theme-v2 .taf-option3-hero-left{display:flex;align-items:center;gap:18px;min-width:0;flex:1 1 380px}
body.theme-v2 .taf-option3-doc-icon{width:52px;height:52px;flex:0 0 52px;border-radius:12px;display:grid;place-items:center;color:#fff;
  background:linear-gradient(180deg,#f2701f,#d6500a);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 4px 10px -4px rgba(214,80,10,.5)}
body.theme-v2 .taf-option3-doc-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body.theme-v2 .taf-option3-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
body.theme-v2 .taf-option3-title-row h1{font-size:24px;margin:0}
body.theme-v2 .taf-option3-primary-badge{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;background:var(--sar-50);color:var(--sar-600);border:1px solid var(--sar-100);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
body.theme-v2 .taf-option3-hero p{margin:6px 0 0;font-size:14px;color:var(--c-500)}
body.theme-v2 .taf-option3-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex:0 1 460px;min-width:280px}
body.theme-v2 .taf-option3-actions .taf-option3-action{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-height:var(--control);padding:8px 14px;border-radius:var(--r-sm);
  border:1px solid var(--c-200);background:var(--c-0);color:var(--c-800);font-size:13px;font-weight:600;box-shadow:var(--sh-xs);text-align:left;width:auto}
body.theme-v2 .taf-option3-actions .taf-option3-action:hover{background:var(--c-50);border-color:var(--c-300)}
body.theme-v2 .taf-option3-actions .taf-option3-action .ui-i{color:var(--c-500)}
body.theme-v2 .taf-option3-actions .taf-option3-action.primary{background:var(--brand);border-color:var(--brand-600);color:#fff}
body.theme-v2 .taf-option3-actions .taf-option3-action.primary .ui-i{color:#fff}
body.theme-v2 .taf-option3-actions .taf-option3-action.primary:hover{background:var(--brand-600)}

body.theme-v2 .taf-existing-mission-panel{padding:20px 22px;margin-bottom:16px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .taf-existing-mission-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}
body.theme-v2 .taf-existing-mission-head b{display:block;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin-bottom:4px}
body.theme-v2 .taf-existing-mission-head span{font-size:13px;color:var(--c-500);line-height:1.5}
body.theme-v2 .taf-existing-current{padding:8px 12px 8px 14px;border-left:3px solid var(--sar);background:var(--c-50);border-radius:0 var(--r-sm) var(--r-sm) 0;min-width:200px}
body.theme-v2 .taf-existing-current small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 .taf-existing-current strong{display:block;font-size:14px;font-weight:700;color:var(--c-900);font-variant-numeric:tabular-nums}
body.theme-v2 .taf-existing-current span{display:block;font-size:12.5px;color:var(--c-600)}
body.theme-v2 .taf-existing-mission-form{display:flex;gap:8px;margin-bottom:10px}
body.theme-v2 .taf-existing-mission-form select{flex:1;min-width:0}
body.theme-v2 .taf-existing-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
body.theme-v2 .taf-existing-actions form{margin:0}
body.theme-v2 .taf-existing-actions .primary-secondary-action{color:var(--brand);border-color:var(--brand-100);background:var(--brand-50);font-size:13px;min-height:var(--control);padding:8px 14px}
body.theme-v2 .taf-existing-actions .primary-secondary-action:hover{background:var(--brand-100);color:var(--brand-700)}
body.theme-v2 .taf-existing-source-status{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:0;border:1px solid var(--c-150);border-radius:var(--r-md);overflow:hidden;background:var(--c-25)}
body.theme-v2 .taf-existing-source-status>div{padding:10px 14px;border:0;border-radius:0;background:transparent;min-width:0}
body.theme-v2 .taf-existing-source-status>div+div{border-left:1px solid var(--c-150)}
body.theme-v2 .taf-existing-source-status small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 .taf-existing-source-status strong{display:block;font-size:13px;font-weight:600;color:var(--c-900);overflow-wrap:anywhere;margin-top:2px}

body.theme-v2 .taf-option3-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
body.theme-v2 .taf-option3-metric{display:flex;align-items:center;gap:14px;padding:16px 18px;min-height:0}
body.theme-v2 .taf-option3-metric .metric-icon{background:var(--brand-50);color:var(--brand);font-size:0}
body.theme-v2 .taf-option3-metric .metric-icon.green{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .taf-option3-metric .metric-icon.purple{background:var(--c-75);color:var(--c-600)}
body.theme-v2 .taf-option3-metric .metric-icon .ui-i{width:20px;height:20px}
body.theme-v2 .taf-option3-metric>div:last-child{display:flex;flex-direction:column;min-width:0}
body.theme-v2 .taf-option3-metric b{order:1;font-size:11.5px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-600)}
body.theme-v2 .taf-option3-metric strong{order:2;font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--c-900);margin-top:3px;font-variant-numeric:tabular-nums}
body.theme-v2 .taf-option3-metric span{order:3;font-size:12px;color:var(--c-500);margin-top:2px}

body.theme-v2 .taf-option3-workflow-card{padding:22px!important}
body.theme-v2 .taf-option3-workflow-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
body.theme-v2 .taf-option3-workflow-heading b{display:block;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin-bottom:4px}
body.theme-v2 .taf-option3-workflow-heading span{font-size:13px;color:var(--c-500)}
body.theme-v2 .taf-option3-current-workflow{font-size:12px;font-weight:650;color:var(--c-700);background:var(--c-50);border:1px solid var(--c-150);border-radius:999px;padding:4px 11px;white-space:nowrap;font-variant-numeric:tabular-nums}
body.theme-v2 .taf-option3-workflow-card .taf-v1016-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;margin:18px 0}
body.theme-v2 .taf-option3-workflow-card .taf-v1016-step{min-height:280px;padding:18px 14px 16px;border:1px solid var(--c-150);border-radius:var(--r-lg);background:var(--c-0);box-shadow:none;gap:0;color:var(--c-800);transition:border-color .15s,box-shadow .15s,transform .15s}
body.theme-v2 .taf-option3-workflow-card .taf-v1016-step:hover{border-color:var(--c-300);box-shadow:var(--sh-md);transform:translateY(-1px)}
body.theme-v2 .taf-option3-workflow-card .taf-v1016-step.complete{background:var(--c-0);border-color:var(--ok-100)}
body.theme-v2 .taf-option3-workflow-card .taf-v1016-step.active-workflow-step{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}
body.theme-v2 .taf-v1016-step-number{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12.5px;font-weight:700;background:var(--c-0);color:var(--c-500);border:1.5px solid var(--c-300);box-shadow:none}
body.theme-v2 .taf-v1016-step.complete .taf-v1016-step-number{background:var(--ok);border-color:var(--ok);color:#fff}
body.theme-v2 .taf-v1016-step.active-workflow-step .taf-v1016-step-number{background:var(--brand);border-color:var(--brand);color:#fff}
body.theme-v2 .taf-v1016-step-icon{width:48px;height:48px;margin:14px auto 12px;border-radius:12px;display:grid;place-items:center;background:var(--c-75);color:var(--c-600);font-size:0}
body.theme-v2 .taf-v1016-step-icon .ui-i{width:22px;height:22px}
body.theme-v2 .taf-v1016-step.complete .taf-v1016-step-icon{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .taf-v1016-step.active-workflow-step .taf-v1016-step-icon{background:var(--brand-50);color:var(--brand)}
body.theme-v2 .taf-v1016-step-title{font-size:14px;font-weight:650;color:var(--c-900);line-height:1.3}
body.theme-v2 .taf-v1016-step-desc{font-size:12.5px;color:var(--c-500);line-height:1.5;margin-top:6px}
body.theme-v2 .taf-v1016-continue{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:auto;min-height:38px;padding:8px 12px;border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:13px;font-weight:600;box-shadow:0 1px 2px rgba(29,71,180,.25)}
body.theme-v2 .taf-v1016-continue+.taf-v1016-status{margin-top:12px}
body.theme-v2 .taf-v1016-status{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:650;background:var(--c-75);color:var(--c-600)}
body.theme-v2 .taf-v1016-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
body.theme-v2 .taf-v1016-status.done{background:var(--ok-50);color:var(--ok)}
body.theme-v2 .taf-v1016-status.active{background:var(--brand-50);color:var(--brand)}
body.theme-v2 .taf-v1016-detail{font-size:12px;color:var(--c-500);margin-top:8px;overflow-wrap:anywhere}
body.theme-v2 .taf-v1016-step-arrow{right:-18px;font-size:0;color:var(--c-300);display:grid;place-items:center}
body.theme-v2 .taf-v1016-step-arrow .ui-i{width:16px;height:16px}
body.theme-v2 .taf-folder-filter-status{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 16px;margin-bottom:14px;border:1px solid var(--ok-100);border-radius:var(--r-md);background:var(--ok-50)}
body.theme-v2 .taf-folder-filter-status b{display:block;font-size:13px;font-weight:650;color:#0d5531}
body.theme-v2 .taf-folder-filter-status span{font-size:12.5px;color:#2f6a49}
body.theme-v2 .taf-folder-filter-counts{font-size:12px;font-weight:600;color:#2f6a49}
body.theme-v2 .generated-history-card{padding:16px 18px;margin-bottom:14px;border:1px solid var(--c-150);border-radius:var(--r-md);background:var(--c-0)}
body.theme-v2 .generated-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
body.theme-v2 .generated-history-head b{display:block;font-size:12px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;color:var(--c-700);margin-bottom:3px}
body.theme-v2 .generated-history-head span{font-size:12.5px;color:var(--c-500)}
body.theme-v2 .generated-history-count{font-size:12px;font-weight:650;color:var(--c-700);background:var(--c-50);border:1px solid var(--c-150);border-radius:999px;padding:3px 10px;white-space:nowrap}
body.theme-v2 .generated-history-range{padding:10px 14px;border-radius:var(--r-sm);background:var(--c-50);border:0;border-left:3px solid var(--brand)}
body.theme-v2 .generated-history-range small{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 .generated-history-range strong{font-size:16px;font-weight:650;color:var(--c-900)}
body.theme-v2 .generated-history-last{font-size:12.5px;color:var(--c-500);margin-top:10px}
body.theme-v2 .taf-v1016-continue-banner{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border:1px solid var(--brand-100);border-left:4px solid var(--brand);border-radius:var(--r-md);background:var(--brand-50)}
body.theme-v2 .taf-v1016-info-icon{width:20px;height:20px;flex:0 0 20px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:#fff;font-size:12px;font-weight:800}
body.theme-v2 .taf-v1016-continue-banner b{display:block;font-size:13px;font-weight:650;color:#173a8a}
body.theme-v2 .taf-v1016-continue-banner span{font-size:13px;color:#2a4a8f}
@media(max-width:1180px){
  body.theme-v2 .taf-option3-workflow-card .taf-v1016-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.theme-v2 .taf-v1016-step-arrow{display:none}
  body.theme-v2 .taf-option3-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.theme-v2 .taf-option3-actions{grid-template-columns:1fr;min-width:0;flex-basis:100%}
  body.theme-v2 .taf-existing-mission-head{flex-direction:column}
  body.theme-v2 .taf-existing-mission-form{flex-direction:column}
  body.theme-v2 .taf-existing-source-status{grid-template-columns:1fr}
  body.theme-v2 .taf-existing-source-status>div+div{border-left:0;border-top:1px solid var(--c-150)}
  body.theme-v2 .taf-option3-metrics{grid-template-columns:1fr}
  body.theme-v2 .taf-option3-workflow-card .taf-v1016-steps{grid-template-columns:1fr}
  body.theme-v2 .taf-option3-workflow-card .taf-v1016-step{min-height:0}
  body.theme-v2 .taf-option3-workflow-heading{flex-direction:column}
}
body.theme-v2 .taf-option3-metric .metric-icon{width:40px;height:40px;flex:0 0 40px;margin:0}

/* =====================  Shared: advanced TAF steps 1–5  ===================== */
body.theme-v2 .taf-stepper .taf-step-card.current{display:flex!important}
body.theme-v2 .taf-module-shell .taf-stepper{margin:0}
body.theme-v2 .taf-module-home-link{min-height:34px;padding:6px 12px}
body.theme-v2 .main :where(input:not([type]),input[type=text],input[type=number],input[type=password],input[type=url],input[type=email],input[type=search]){padding-left:11px;padding-right:11px}
body.theme-v2 .main .card .field>:where(input:not([type]),input[type=text],input[type=number]){width:100%}

/* =====================  PAGE: Step 2 — Load Assignments  ===================== */
body.theme-v2 .source-file-tip{display:block;margin:0 0 14px;padding:11px 14px;border-radius:var(--r-md);background:var(--c-0);border:1px solid var(--c-150);color:var(--c-600);font-size:13px;line-height:1.5}
body.theme-v2 .source-file-tip b{color:var(--c-800);font-weight:650}
body.theme-v2 .source-update-banner{margin:0 0 14px;padding:12px 16px;border-radius:var(--r-md);border:1px solid var(--ok-100);border-left:4px solid var(--ok);background:var(--ok-50);color:#0d5531}
body.theme-v2 .source-update-banner b{font-size:12px;font-weight:700;letter-spacing:.06em;color:#0d5531}
body.theme-v2 .source-update-banner span{font-size:12.5px;color:#2f6a49;margin-top:2px}
body.theme-v2 .source-update-stats{font-size:12.5px;color:#2f6a49}
body.theme-v2 .source-update-stats strong{color:#0d5531}
body.theme-v2 .compact-history-card{margin:0 0 16px;box-shadow:var(--sh-xs);border-radius:var(--r-lg)}
body.theme-v2 .task-range-inputs{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}
body.theme-v2 .task-range-inputs input{flex:0 1 160px;width:auto;min-width:0;max-width:160px}
body.theme-v2 .task-range-inputs span{font-size:11.5px;font-weight:700;letter-spacing:.08em;color:var(--c-500)}
body.theme-v2 .assignment-filter-banner{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0 14px;padding:12px 16px;border:1px solid var(--ok-100);border-left:4px solid var(--ok);border-radius:var(--r-md);background:var(--ok-50)}
body.theme-v2 .assignment-filter-banner b{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;color:#0d5531}
body.theme-v2 .assignment-filter-banner>div:first-child span{display:block;font-size:12.5px;color:#2f6a49;margin-top:2px}
body.theme-v2 .assignment-filter-stats{display:flex;flex-wrap:wrap;gap:6px}
body.theme-v2 .assignment-filter-stats span{display:inline-flex;align-items:baseline;gap:5px;padding:4px 10px;border-radius:999px;background:var(--c-0);border:1px solid var(--ok-100);font-size:12px;color:#2f6a49}
body.theme-v2 .assignment-filter-stats strong{font-size:13px;font-weight:700;color:#0d5531}
body.theme-v2 .assignment-source-actions{margin-top:16px;padding:16px 18px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .assignment-source-actions .source-nav-row{border-top-color:var(--c-100)}
body.theme-v2 .assignment-source-actions :is(button,a.button){min-height:40px;font-size:13px;font-weight:600}
body.theme-v2 .metric{padding:16px 18px}
body.theme-v2 .metric-v{margin-top:6px}

/* =====================  PAGE: Step 3 — Review & QC  ===================== */
body.theme-v2 .review-top-actions{display:flex;justify-content:flex-end;gap:8px;margin:4px 0 14px}
body.theme-v2 .review-top-actions>*{flex:0 0 auto}
body.theme-v2 :is(.assignment-multiselect-toolbar,.assignment-bulk-context-bar,.map-scan-summary){display:flex;justify-content:space-between;align-items:center;gap:12px 18px;flex-wrap:wrap;
  padding:12px 16px;margin:0 0 12px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-md);box-shadow:var(--sh-xs)}
body.theme-v2 .assignment-multiselect-toolbar-sticky{position:sticky;top:8px;z-index:4}
body.theme-v2 :is(.assignment-multiselect-copy,.map-scan-summary>div:first-child,.assignment-bulk-context-bar>div:first-child) b{display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-700)}
body.theme-v2 .assignment-bulk-context-bar>div:first-child b{text-transform:none;letter-spacing:0;font-size:13px;color:var(--brand)}
body.theme-v2 :is(.assignment-multiselect-copy,.map-scan-summary>div:first-child,.assignment-bulk-context-bar>div:first-child) span{display:block;font-size:12.5px;color:var(--c-500);margin-top:2px}
body.theme-v2 :is(.assignment-multiselect-actions,.assignment-bulk-context-actions){display:flex;flex-wrap:wrap;align-items:center;gap:6px}
body.theme-v2 .assignment-highlight-count{font-size:12px;font-weight:650;color:var(--brand);background:var(--brand-50);border:1px solid var(--brand-100);border-radius:999px;padding:3px 10px;font-variant-numeric:tabular-nums}
body.theme-v2 .bulk-action-button:not(.suite-nav-toggle):not(.ql-btn){min-height:32px;padding:5px 11px!important;font-size:12.5px!important;font-weight:600}
body.theme-v2 .map-scan-stats{display:flex;flex-wrap:wrap;gap:6px}
body.theme-v2 .map-scan-stats span{display:inline-flex;align-items:baseline;gap:5px;padding:3px 10px;border-radius:999px;background:var(--c-50);border:1px solid var(--c-150);font-size:12px;color:var(--c-600)}
body.theme-v2 .map-scan-stats strong{font-size:13px;font-weight:700;color:var(--c-900)}
body.theme-v2 .map-scan-stats .ok{background:var(--ok-50);border-color:var(--ok-100)} body.theme-v2 .map-scan-stats .ok strong{color:var(--ok)}
body.theme-v2 .map-scan-stats .warn{background:var(--warn-50);border-color:var(--warn-100)} body.theme-v2 .map-scan-stats .warn strong{color:var(--warn)}
body.theme-v2 .map-scan-stats .bad{background:var(--danger-50);border-color:var(--danger-100)} body.theme-v2 .map-scan-stats .bad strong{color:var(--danger)}
body.theme-v2 .bulk-assignment-table-wrap{margin-bottom:12px}
body.theme-v2 #assignment-selection-table td{padding:8px 10px}
body.theme-v2 #assignment-selection-table :is(input:not([type=checkbox]),select){min-height:34px;font-size:13px}
body.theme-v2 .assignment-select-row{cursor:pointer}
body.theme-v2 .assignment-select-row.multi-highlighted>td{background:var(--brand-50)!important;box-shadow:inset 0 1px 0 var(--brand-100),inset 0 -1px 0 var(--brand-100)}
body.theme-v2 .assignment-select-row.multi-highlighted>td:first-child{box-shadow:inset 3px 0 0 var(--brand)}
body.theme-v2 .assignment-select-row.duplicate-row>td{background:var(--warn-50)}
body.theme-v2 .map-match-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:650;white-space:nowrap;border:1px solid transparent;line-height:1.4}
body.theme-v2 .map-match-badge.matched,body.theme-v2 .map-match-badge.manual{background:var(--ok-50);color:var(--ok);border-color:var(--ok-100)}
body.theme-v2 .map-match-badge.ambiguous{background:var(--warn-50);color:var(--warn);border-color:var(--warn-100)}
body.theme-v2 .map-match-badge.unmatched{background:var(--danger-50);color:var(--danger);border-color:var(--danger-100)}
body.theme-v2 .map-match-method{display:block;font-size:11px;color:var(--c-500);margin-top:3px}
body.theme-v2 .duplicate-badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11.5px!important;font-weight:650;line-height:1.4;white-space:nowrap;border:1px solid}
body.theme-v2 .assignment-selection-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:4px 0 14px;font-size:13px;color:var(--c-600)}
body.theme-v2 .assignment-selection-summary b{color:var(--c-900);font-size:14px}
body.theme-v2 .assignment-summary-note{font-size:12.5px;color:var(--c-500)}
body.theme-v2 .map-cache-state{margin-left:auto;display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--c-150);background:var(--c-50);color:var(--c-600)}
body.theme-v2 .map-cache-state.ready{background:var(--ok-50);border-color:var(--ok-100);color:var(--ok)}
body.theme-v2 .review-step-actions{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .review-step-actions>*{flex:0 0 auto!important}
body.theme-v2 .review-step-actions>a.button:first-child{margin-right:auto}
body.theme-v2 .task-package-link{font-weight:650;color:var(--brand)}
body.theme-v2 .mini-preview{display:inline-block;margin-left:4px;font-size:12px;font-weight:600;color:var(--brand)}
body.theme-v2 .task-download-btn{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--r-sm);border:1px solid var(--c-200);background:var(--c-0);color:var(--c-700);box-shadow:var(--sh-xs)}
body.theme-v2 .task-download-btn:hover{background:var(--brand-50);border-color:var(--brand-100);color:var(--brand)}
body.theme-v2 .task-download-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.theme-v2 #preview-download-count{font-size:12.5px;font-weight:600;color:var(--c-600)}
body.theme-v2 #task-preview-download-form .table-wrap{overflow-x:auto}
body.theme-v2 #task-preview-download-form table td{white-space:nowrap}

/* =====================  PAGE: Step 4 — Output  ===================== */
body.theme-v2 .icon-title{display:flex;align-items:center;gap:10px}
body.theme-v2 .title-icon{width:28px;height:28px;flex:0 0 28px;border-radius:8px;display:grid;place-items:center;background:var(--brand-50);color:var(--brand)}
body.theme-v2 .title-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.theme-v2 .print-summary{background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--r-md);padding:14px 16px}
body.theme-v2 .ps-k{font-size:11.5px;font-weight:700;letter-spacing:.06em;color:var(--brand-700)}
body.theme-v2 .ps-k .title-icon{width:22px;height:22px;flex-basis:22px;background:var(--c-0)}
body.theme-v2 .ps-v{font-size:16px;font-weight:650;color:var(--c-900);margin-top:6px}
body.theme-v2 .ps-order{font-size:12.5px;color:var(--c-600)}
body.theme-v2 .live-package-preview{margin-top:16px;padding:18px 20px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}
body.theme-v2 .package-flow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 10px}
body.theme-v2 .package-chip{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:var(--r-sm);font-size:12px;font-weight:700;letter-spacing:.06em;border:1px solid}
body.theme-v2 .package-chip.taf{background:var(--brand-50);color:var(--brand);border-color:var(--brand-100)}
body.theme-v2 .package-chip.map{background:var(--sar-50);color:var(--sar-600);border-color:var(--sar-100)}
body.theme-v2 .package-arrow{color:var(--c-400);font-size:13px}
body.theme-v2 .package-count{font-size:14px;font-weight:650;color:var(--c-800);margin-bottom:4px;font-variant-numeric:tabular-nums}

/* =====================  PAGE: Step 5 — Generate  ===================== */
body.theme-v2 .final-generation-check{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 14px;background:var(--c-0);border:1px solid var(--c-150);border-radius:var(--r-lg);box-shadow:var(--sh-xs);overflow:hidden}
body.theme-v2 .final-generation-check>div{padding:14px 18px;min-width:0;border:0;background:none}
body.theme-v2 .final-generation-check>div+div{border-left:1px solid var(--c-100)}
body.theme-v2 .final-generation-check b{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-500)}
body.theme-v2 .final-generation-check span{display:block;font-size:14px;font-weight:650;color:var(--c-900);margin-top:3px;overflow-wrap:anywhere}
body.theme-v2 form>button.primary[value=generate]{min-height:48px;font-size:15px;border-radius:var(--r-md)}
@media(max-width:760px){
  body.theme-v2 .final-generation-check{grid-template-columns:1fr 1fr}
  body.theme-v2 .final-generation-check>div:nth-child(3){border-left:0}
  body.theme-v2 .final-generation-check>div:nth-child(n+3){border-top:1px solid var(--c-100)}
  body.theme-v2 .review-top-actions>*{flex:1 1 auto}
  body.theme-v2 .review-step-actions>*{flex:1 1 140px!important}
  body.theme-v2 .map-cache-state{margin-left:0}
}
}

}

/* =====================================================================
   DARK MODE — html[data-theme=dark] is set before first paint by base.html
   (from the covsar_theme cookie, or the OS setting when set to Auto).
   ===================================================================== */
html[data-theme=dark]{color-scheme:dark}
html[data-theme=light]{color-scheme:light}
@media screen{
html[data-theme=dark]{
  --c-0:#151d28; --c-25:#18212d; --c-50:#0f151d; --c-75:#1d2734; --c-100:#222c3a; --c-150:#2a3544;
  --c-200:#364254; --c-300:#4a576a; --c-400:#6c798c; --c-500:#8e9aad; --c-600:#a9b4c4; --c-700:#c4cdd9;
  --c-800:#dbe2ea; --c-900:#eef2f7;
  --chrome-900:#080d14; --chrome-800:#0b111a; --chrome-700:#121b27; --chrome-600:#1b2635;
  --chrome-line:rgba(255,255,255,.07);
  --brand:#4f7cf0; --brand-600:#3a66da; --brand-700:#9ab6ff; --brand-50:rgba(91,134,242,.13); --brand-100:rgba(91,134,242,.28); --brand-ring:rgba(91,134,242,.35);
  --sar:#f37a33; --sar-600:#ff9356; --sar-50:rgba(243,122,51,.13); --sar-100:rgba(243,122,51,.3);
  --ok:#43c387; --ok-50:rgba(67,195,135,.12); --ok-100:rgba(67,195,135,.3);
  --warn:#f1b24c; --warn-50:rgba(241,178,76,.12); --warn-100:rgba(241,178,76,.3);
  --danger:#f36d7a; --danger-600:#ff919b; --danger-50:rgba(243,109,122,.12); --danger-100:rgba(243,109,122,.32);
  --info-50:rgba(91,134,242,.11);
  --sh-xs:0 1px 2px rgba(0,0,0,.35);
  --sh-sm:0 1px 2px rgba(0,0,0,.35),0 1px 3px rgba(0,0,0,.3);
  --sh-md:0 4px 14px -2px rgba(0,0,0,.45),0 2px 4px -2px rgba(0,0,0,.35);
  --sh-lg:0 18px 44px -12px rgba(0,0,0,.65);
  --navy:#0b111a; --navy2:#121b27; --blue:#5b86f2; --blue2:#7097f5; --blueSoft:rgba(91,134,242,.13);
  --line:#2a3544; --text:#eef2f7; --muted:#8e9aad; --bg:#0f151d; --card:#151d28; --green:#43c387;
}
html[data-theme=dark] body.theme-v2{background:var(--c-50);color:var(--c-900)}
html[data-theme=dark] body.theme-v2 .shell{background:linear-gradient(90deg,var(--chrome-800) 0 268px,var(--c-50) 268px)}
html[data-theme=dark] body.theme-v2 .sb{border-right-color:rgba(255,255,255,.06)}
html[data-theme=dark] body.theme-v2 .topbar{border-bottom-color:rgba(255,255,255,.06)}
html[data-theme=dark] body.theme-v2 .topbar img{box-shadow:0 0 0 2px var(--chrome-900),0 0 0 3px rgba(255,255,255,.1)}
html[data-theme=dark] body.theme-v2 .api-beta-banner{background:repeating-linear-gradient(-45deg,#d9a21a 0 14px,#d09a14 14px 28px)}
/* Primary buttons sit on the deeper brand so white text keeps contrast */
html[data-theme=dark] body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary,.task-save-button,.save-primary):not(.suite-nav-toggle):not(.ql-btn){background:var(--brand-600);border-color:#4d78e6;box-shadow:0 1px 2px rgba(0,0,0,.4)}
html[data-theme=dark] body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary,.task-save-button,.save-primary):not(.suite-nav-toggle):not(.ql-btn):not(:disabled):hover{background:#4673e6;border-color:#6a90f0}
html[data-theme=dark] body.theme-v2 select:where(:not([multiple])){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23a9b4c4' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E")}
html[data-theme=dark] body.theme-v2 tbody tr:hover>td{background:rgba(91,134,242,.06)}
html[data-theme=dark] body.theme-v2 .alert.success{color:#9fe3c0}
html[data-theme=dark] body.theme-v2 .alert:is(.error,.danger){color:#ffb3ba}
html[data-theme=dark] body.theme-v2 .alert:is(.warning,.warn){color:#f7d08e}
html[data-theme=dark] body.theme-v2 .alert.info{color:#b9ccff}
html[data-theme=dark] body.theme-v2 :is(.ready-box){color:#9fe3c0}
html[data-theme=dark] body.theme-v2 :is(.warn-box){color:#f7d08e}
html[data-theme=dark] body.theme-v2 img:not(.topbar img):not(.sb img){filter:none}
html[data-theme=dark] ::-webkit-scrollbar{width:11px;height:11px}
html[data-theme=dark] ::-webkit-scrollbar-thumb{background:#2c3747;border-radius:8px;border:3px solid transparent;background-clip:content-box}
html[data-theme=dark] ::-webkit-scrollbar-track{background:transparent}
}

/* ---------- Appearance switch (header) ---------- */
@media screen{
body.theme-v2 .theme-switch{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--chrome-line)}
body.theme-v2 .theme-switch button:not(.suite-nav-toggle):not(.ql-btn){all:unset;box-sizing:border-box;width:28px;height:26px;border-radius:999px;display:grid;place-items:center;color:var(--chrome-muted);cursor:pointer;transition:background .15s,color .15s}
body.theme-v2 .theme-switch button:not(.suite-nav-toggle):not(.ql-btn):hover{color:#fff;background:rgba(255,255,255,.07)}
body.theme-v2 .theme-switch button[aria-pressed=true]:not(.suite-nav-toggle):not(.ql-btn){background:rgba(255,255,255,.14);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
body.theme-v2 .theme-switch button:focus-visible{outline:2px solid var(--brand);outline-offset:1px}
body.theme-v2 .theme-switch svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){body.theme-v2 .topbar-right{flex-wrap:nowrap}body.theme-v2 .mission-context{flex:1;min-width:0}}
}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---------- Dark mode: structural overrides for legacy hard-coded colours ---------- */
@media screen{
html[data-theme=dark] body.theme-v2 :is(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=submit],[type=button]),select,textarea):not(.task-row-editor):not(.row-editor){
  background-color:var(--c-0)!important;color:var(--c-900)!important;border-color:var(--c-200)}
html[data-theme=dark] body.theme-v2 :is(input,select,textarea):is(:disabled,[readonly],.readonly-field):not(.task-row-editor):not(.row-editor){background-color:var(--c-75)!important;color:var(--c-600)!important}
html[data-theme=dark] body.theme-v2 :is(.task-row-editor,.row-editor){color:var(--c-800)!important}
html[data-theme=dark] body.theme-v2 :is(.task-entry-row,tr).editing :is(.task-row-editor,.row-editor):not(.computed-field){background-color:var(--c-0)!important;border-color:var(--c-200)!important}
html[data-theme=dark] body.theme-v2 :is(table,thead,tbody,tfoot,tr){background-color:transparent!important}
html[data-theme=dark] body.theme-v2 td{background-color:transparent}
html[data-theme=dark] body.theme-v2 th{background-color:var(--c-25)!important;color:var(--c-600)}
html[data-theme=dark] body.theme-v2 th.sort-active{color:var(--brand)}
html[data-theme=dark] body.theme-v2 input[type=file]{background:var(--c-25);color:var(--c-600)}
html[data-theme=dark] body.theme-v2 :is(input[type=checkbox],input[type=radio]){color-scheme:dark}
html[data-theme=dark] body.theme-v2 .topbar .ready-dot{background:#4ade80}
}

/* ---------- Dark mode: component surfaces ---------- */
@media screen{
html[data-theme=dark] body.theme-v2 :is(.taf-settings-body,.qualification-options,.task-segment-panel,.task-personnel-picker>div,.personnel-summary-table-wrap,.clue-followup-table,.map-preview-controls>form,.taf-map-upload,.taf-v1016-step,.lpb-panel,.mission-source-card,.danger-outline,.delete-mission-btn,.small-delete){background-color:var(--c-0)!important}
html[data-theme=dark] body.theme-v2 :is(.taf-step-card){background:var(--c-25)!important;border-color:var(--c-150)!important}
html[data-theme=dark] body.theme-v2 .taf-step-card.current{background:var(--brand-50)!important;border-color:var(--brand)!important}
html[data-theme=dark] body.theme-v2 .taf-step-card.done{background:var(--ok-50)!important;border-color:var(--ok-100)!important}
html[data-theme=dark] body.theme-v2 .taf-v1016-step.active-workflow-step{background:var(--brand-50)!important;border-color:var(--brand)!important}
html[data-theme=dark] body.theme-v2 .mission-source-card.source-loaded{background:var(--ok-50)!important;border-color:var(--ok-100)!important}
html[data-theme=dark] body.theme-v2 .beta-tag{background:var(--warn-50)!important;color:var(--warn)!important;border-color:var(--warn-100)!important}
html[data-theme=dark] body.theme-v2 :is(.drive-warning,.priority-notice){background:var(--warn-50)!important;border-color:var(--warn-100)!important;color:#f7d08e!important}
html[data-theme=dark] body.theme-v2 .mission-op-block{background:rgba(255,255,255,.04)!important}
html[data-theme=dark] body.theme-v2 :is(.mission-alert-icon,.infield-icon-wrap){background:var(--danger-100)!important;color:var(--danger)!important}
html[data-theme=dark] body.theme-v2 .module-summary-icon{background:var(--brand-50)!important}
html[data-theme=dark] body.theme-v2 .final-stat-card.active-stat .module-summary-icon{background:var(--sar-50)!important}
html[data-theme=dark] body.theme-v2 .final-stat-card.closed-stat .module-summary-icon{background:var(--ok-50)!important}
html[data-theme=dark] body.theme-v2 .final-stat-card.archived-stat .module-summary-icon{background:var(--c-75)!important}
html[data-theme=dark] body.theme-v2 :is(.task-pagination,.comms-pagination) button.active{background:var(--brand-600)!important;border-color:var(--brand-600)!important;color:#fff!important}
html[data-theme=dark] body.theme-v2 .sticky-clue-actions{background:rgba(21,29,40,.92)!important;border-color:var(--c-150)!important}
html[data-theme=dark] body.theme-v2 .step-no{background:var(--c-75)!important;color:var(--c-700)!important}
html[data-theme=dark] body.theme-v2 .duplicate-badge{background:var(--warn-50)!important;color:var(--warn)!important}
html[data-theme=dark] body.theme-v2 tr:is(.problem-row,.status-in-progress,.status-in-field)>td{background-color:rgba(241,178,76,.06)!important}
html[data-theme=dark] body.theme-v2 tr.summary-task-row.status-in-progress>td{background-color:rgba(243,109,122,.07)!important}
html[data-theme=dark] body.theme-v2 tr.status-completed>td{background-color:transparent!important}
}

/* ---------- Dark mode: legacy text inks ---------- */
@media screen{
html[data-theme=dark] body.theme-v2 .decision-chip span{color:var(--c-700)!important}
html[data-theme=dark] body.theme-v2 .main :is(b,strong):not([class]){color:inherit!important}
html[data-theme=dark] body.theme-v2 :is(.drive-kv b){color:var(--c-800)!important}
html[data-theme=dark] body.theme-v2 .drive-status{color:var(--brand-700)!important}
html[data-theme=dark] body.theme-v2 :is(.assignment-filter-stats span,.taf-folder-filter-counts){color:var(--ok)!important}
html[data-theme=dark] body.theme-v2 .taf-step-num{background:var(--c-75)!important;color:var(--c-800)!important;border-color:var(--c-300)!important}
html[data-theme=dark] body.theme-v2 .taf-step-card.current .taf-step-num{background:var(--brand-600)!important;color:#fff!important;border-color:var(--brand-600)!important}
html[data-theme=dark] body.theme-v2 .taf-step-card.done .taf-step-num{background:#1f8a57!important;color:#fff!important;border-color:#1f8a57!important}
html[data-theme=dark] body.theme-v2 .clue-toolbar-btn.neutral-action{color:var(--c-800)!important}
html[data-theme=dark] body.theme-v2 :is(.task-segment-title,.task-segment-field-label,#task-segment-count){color:var(--c-800)!important}
html[data-theme=dark] body.theme-v2 :is(.danger,.danger-outline,.delete-mission-btn,.small-delete,.delete-task){color:var(--danger)!important;border-color:var(--danger-100)!important}
html[data-theme=dark] body.theme-v2 :is(.wf5 .num,.info-dot,.taf-v1016-step-number,.taf-v1016-info-icon,.taf-v1016-continue){background-color:var(--brand-600)!important;color:#fff!important}
html[data-theme=dark] body.theme-v2 .taf-v1016-step.complete .taf-v1016-step-number,html[data-theme=dark] body.theme-v2 .wf5.done .num{background-color:#1f8a57!important}
html[data-theme=dark] body.theme-v2 .taf-v1016-status.active{color:var(--brand-700)!important}
html[data-theme=dark] body.theme-v2 :is(.task-filter-help,.recent-checkin-row div){color:var(--c-500)!important}
html[data-theme=dark] body.theme-v2 .recent-checkin-row :is(b,strong,.recent-name){color:var(--c-900)!important}
html[data-theme=dark] body.theme-v2 .clue-section-title{color:var(--c-700)!important}
html[data-theme=dark] body.theme-v2 :is(.clue-section-alert,.task-summary-card.field-alert .task-summary-sub){color:#ffb3ba!important}
html[data-theme=dark] body.theme-v2 :is(button.primary,.button.primary,.btn.primary,.primary-action,.cv-primary,.drive-btn.primary,a.primary,.btn-primary){background-color:var(--brand-600)!important;color:#fff!important}
}
@media screen{
html[data-theme=dark] body.theme-v2 :is(.taf-folder-filter-status span,.source-update-banner span,.source-update-stats,.assignment-filter-banner span){color:#8fdcb5!important}
html[data-theme=dark] body.theme-v2 .taf-v1016-continue-banner span{color:var(--brand-700)!important}
html[data-theme=dark] body.theme-v2 :is(.invest-summary-card strong,.invest-entry-head>div){color:var(--c-900)!important}
html[data-theme=dark] body.theme-v2 .invest-summary-card{background:var(--c-0)!important;border-color:var(--c-150)!important;color:var(--c-900)!important}
}
@media screen{
html[data-theme=dark] body.theme-v2 td textarea[readonly][id^="taf-description-"]{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important;color:var(--c-800)!important}
}

/* ---------- Mission Profile (master form) ---------- */
@media screen{
body.theme-v2 .profile-section{padding:22px 0 6px;border-top:1px solid var(--c-100);margin-top:18px}
body.theme-v2 .profile-section:first-of-type{margin-top:6px}
body.theme-v2 .profile-section-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
body.theme-v2 .profile-section-num{width:28px;height:28px;flex:0 0 28px;border-radius:50%;display:grid;place-items:center;background:var(--c-900);color:var(--c-0);font-size:13px;font-weight:700}
body.theme-v2 .profile-section-head h2{margin:2px 0 4px;font-size:16px!important;font-weight:650;color:var(--c-900)}
body.theme-v2 .profile-fills{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--c-500);line-height:1.4;background:var(--c-50);border:1px solid var(--c-100);border-radius:999px;padding:3px 11px 3px 8px}
body.theme-v2 .profile-fills .ui-i{width:13px;height:13px;color:var(--brand)}
body.theme-v2 .profile-section .mission-form-grid-final{margin-left:42px}
body.theme-v2 input[readonly][name=mission_number]{background:var(--c-50);color:var(--c-700);cursor:not-allowed}
@media(max-width:760px){body.theme-v2 .profile-section .mission-form-grid-final{margin-left:0}body.theme-v2 .profile-fills{border-radius:10px}}
}

/* ---------- Cloud mode: signed-in user + admin ---------- */
@media screen{
body.theme-v2 .user-chip{display:flex;align-items:center;gap:10px;padding:4px 4px 4px 4px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--chrome-line);min-width:0}
body.theme-v2 .user-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#f2701f,#d6500a);color:#fff;font-weight:700;font-size:13px;flex:0 0 30px}
body.theme-v2 .user-meta{display:flex;flex-direction:column;line-height:1.2;min-width:0}
body.theme-v2 .user-meta b{font-size:12.5px;font-weight:650;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}
body.theme-v2 .user-meta small{font-size:11px;color:var(--chrome-muted)}
body.theme-v2 .user-chip form{margin:0}
body.theme-v2 .user-chip .user-signout:not(.suite-nav-toggle):not(.ql-btn){min-height:28px;padding:4px 11px;font-size:12px;border-radius:999px;background:transparent;color:var(--chrome-muted);border:1px solid var(--chrome-line);box-shadow:none}
body.theme-v2 .user-chip .user-signout:not(.suite-nav-toggle):not(.ql-btn):hover{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
body.theme-v2 .cloud-role-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:12px;align-items:end}
body.theme-v2 .cloud-role-form .field{margin:0}
body.theme-v2 .cloud-role-help{margin-top:12px;font-size:12.5px}
@media(max-width:760px){body.theme-v2 .user-meta{display:none}body.theme-v2 .cloud-role-form{grid-template-columns:1fr}}
}

/* ---- Live sync (cloud mode) ---- */
body.theme-v2 .live-pill{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:650;letter-spacing:.01em;color:var(--chrome-muted);border:1px solid var(--chrome-line);background:rgba(255,255,255,.04);white-space:nowrap}
body.theme-v2 .live-pill .live-dot{width:8px;height:8px;border-radius:50%;background:#e0a100;box-shadow:0 0 0 3px rgba(224,161,0,.18)}
body.theme-v2 .live-pill[data-mode=on]{color:#bff0d3}
body.theme-v2 .live-pill[data-mode=on] .live-dot{background:#2fbf71;box-shadow:0 0 0 3px rgba(47,191,113,.2);animation:live-pulse 2.4s ease-in-out infinite}
body.theme-v2 .live-pill[data-mode=off] .live-dot{background:#8a96a8;box-shadow:none}
@keyframes live-pulse{50%{box-shadow:0 0 0 6px rgba(47,191,113,0)}}
@media (prefers-reduced-motion:reduce){body.theme-v2 .live-pill .live-dot{animation:none!important}}
body.theme-v2 .live-others{display:flex;align-items:center}
body.theme-v2 .live-others[hidden]{display:none}
body.theme-v2 .live-face{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;color:#fff;background:#2456d3;border:2px solid var(--chrome-900);margin-left:-8px}
body.theme-v2 .live-face:first-child{margin-left:0}
body.theme-v2 .live-face:nth-child(2){background:#0f8a7e}body.theme-v2 .live-face:nth-child(3){background:#9b3fc4}
body.theme-v2 .live-face:nth-child(4){background:#c2410c}body.theme-v2 .live-face.more{background:#4b5563}
body.theme-v2 .live-banner{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:12px;max-width:min(640px,calc(100vw - 32px));padding:10px 10px 10px 16px;border-radius:12px;background:var(--chrome-900);color:#f1f5f9;box-shadow:0 18px 40px -12px rgba(0,0,0,.5);font-size:14px;border:1px solid rgba(255,255,255,.08)}
body.theme-v2 .live-banner-text{flex:1;line-height:1.4}
body.theme-v2 .live-banner button.live-banner-reload{min-height:32px;padding:4px 14px;border-radius:8px;background:#e8590c!important;border:0!important;color:#fff!important;font-weight:650;box-shadow:none!important}
body.theme-v2 .live-banner button.live-banner-close{min-height:32px;width:32px;padding:0;border-radius:8px;background:transparent!important;border:0!important;color:#cbd5e1!important;font-size:20px;box-shadow:none!important}
body.theme-v2 .live-banner button[hidden]{display:none}
@media (max-width:900px){body.theme-v2 .live-pill .live-label{display:none}body.theme-v2 .live-pill{padding:0 10px}}

/* ---- Offline status (cloud mode) ---- */
body.theme-v2 .offline-bar{position:fixed;left:50%;top:14px;transform:translateX(-50%);z-index:1001;display:flex;align-items:center;gap:12px;max-width:min(620px,calc(100vw - 24px));padding:9px 8px 9px 14px;border-radius:12px;font-size:13.5px;line-height:1.4;box-shadow:0 14px 34px -12px rgba(0,0,0,.45);background:#1d2a44;color:#e2e8f0;border:1px solid rgba(255,255,255,.08)}
body.theme-v2 .offline-bar[data-kind=warn]{background:#4a3410;border-color:#7a5a1c;color:#fde9c4}
body.theme-v2 .offline-bar[data-kind=pending]{background:#16304f;border-color:#2a4f7c;color:#dbeafe}
body.theme-v2 .offline-bar[data-kind=ok]{background:#0f3a26;border-color:#1f6b45;color:#d1fae5}
body.theme-v2 .offline-bar-text{flex:1}
body.theme-v2 .offline-bar-action{font-weight:650;color:inherit;text-decoration:underline;white-space:nowrap}
body.theme-v2 .offline-bar[hidden],body.theme-v2 .offline-bar-action[hidden]{display:none}
body.theme-v2 .offline-bar button.offline-bar-close{min-height:28px;width:28px;padding:0;border:0!important;background:transparent!important;color:inherit!important;font-size:18px;box-shadow:none!important;opacity:.8}

body.theme-v2 .cloud-io-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
body.theme-v2 .cloud-io-form .field{margin:0}
body.theme-v2 .cloud-io-export{margin-top:16px;padding-top:14px;border-top:1px solid var(--c-100);display:flex;gap:14px;align-items:center;flex-wrap:wrap}
body.theme-v2 .cloud-io-export span{font-size:12.5px;flex:1;min-width:220px}
@media(max-width:760px){body.theme-v2 .cloud-io-form{grid-template-columns:1fr}}

/* Tablet widths (iPad portrait 768–834, landscape 1024–1194): keep the top bar on one tidy line. */
@media(max-width:1194px){
  body.theme-v2 .app-version,body.theme-v2 .api-test-pill{display:none}
  body.theme-v2 .user-meta{display:none}
  body.theme-v2 .user-chip .user-signout{white-space:nowrap}
  body.theme-v2 .topbar-right{flex-wrap:nowrap;min-width:0}
  body.theme-v2 .mission-context{flex:1 1 auto;min-width:0}
  body.theme-v2 .mission-context-value,body.theme-v2 .mission-context-value b{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:1000px){
  body.theme-v2 .brand-copy{min-width:0}
  body.theme-v2 .app-sub{display:none}
}
