/* ==========================================================================\n   BLC Tactical Tablet — brief / debrief mission view\n   ========================================================================== */
.tablet-body {
    margin: 0;
    min-height: 100vh;
    overflow: hidden;
    background:
        radial-gradient(circle at 68% 10%, rgba(39, 59, 61, .32), transparent 36%),
        radial-gradient(circle at 18% 88%, rgba(255,185,27,.06), transparent 28%),
        linear-gradient(135deg, #020506 0%, #081214 54%, #020405 100%);
    color: #dce6e2;
    font-family: "Bahnschrift", "Rajdhani", "Arial Narrow", Arial, sans-serif;
    letter-spacing: .035em;
}
.tablet-body::before {
    opacity: .08;
    background-size: 760px;
}
.tablet-body::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 9999;
    pointer-events: none;
    opacity: .17;
    background: repeating-linear-gradient(0deg, rgba(255,255,255,.028) 0 1px, transparent 1px 4px);
    mix-blend-mode: overlay;
}

.tablet-shell {
    --t-bg: #060b0d;
    --t-panel: rgba(10, 16, 18, .58);
    --t-panel-2: rgba(15, 22, 24, .42);
    --t-line: rgba(180, 194, 190, .20);
    --t-line-soft: rgba(180, 194, 190, .105);
    --t-text: #d8e1de;
    --t-muted: #78908b;
    --t-yellow: #ffb91b;
    --t-green: #21d879;
    --t-red: #ef493f;
    --t-blue: #2b78ff;
    width: 100vw;
    height: 100vh;
    padding: 10px;
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 210px minmax(520px, 1fr) clamp(330px, 25vw, 455px);
    grid-template-rows: 36px minmax(0, 1fr) 32px;
    gap: 8px;
    overflow: hidden;
}

.tablet-systembar,
.tablet-sidebar,
.tablet-main,
.tablet-map-panel,
.tablet-footer {
    border: 1px solid var(--t-line);
    background: var(--t-panel);
    backdrop-filter: blur(14px) saturate(1.08);
    -webkit-backdrop-filter: blur(14px) saturate(1.08);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03), inset 0 0 22px rgba(0,0,0,.18), 0 10px 24px rgba(0,0,0,.12);
}

.tablet-systembar {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    min-width: 0;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.system-left,.system-right { display:flex; align-items:center; gap:15px; min-width:0; }
.system-id { color:#b9cac5; white-space:nowrap; }
.system-left .lock { color:var(--t-yellow); font-size:11px; }
.link-state { color:var(--t-green); white-space:nowrap; }
.link-state i { display:inline-block; width:5px; height:5px; border-radius:50%; background:currentColor; box-shadow:0 0 7px currentColor; margin-right:5px; vertical-align:1px; }
.system-time { color:var(--t-yellow); font-variant-numeric:tabular-nums; }
.battery { display:flex; align-items:center; gap:6px; color:var(--t-yellow); }
.battery-case { width:22px; height:10px; border:1px solid currentColor; padding:1px; position:relative; display:inline-block; }
.battery-case::after { content:""; position:absolute; width:2px; height:4px; right:-4px; top:2px; background:currentColor; }
.battery-fill { display:block; height:100%; width:78%; background:currentColor; }
.battery-value { min-width:27px; text-align:right; }

.tablet-sidebar {
    grid-row: 2;
    display:flex;
    flex-direction:column;
    padding:12px;
    min-height:0;
    overflow:hidden;
}
.brand-frame {
    height:101px;
    display:grid;
    place-items:center;
    border:1px solid var(--t-line);
    background:linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,.006));
    margin-bottom:10px;
    flex:0 0 auto;
}
.brand-frame img { width:94%; height:90%; object-fit:contain; }
.current-mission {
    padding:11px 10px 10px;
    border:1px solid rgba(255,185,27,.5);
    background:linear-gradient(135deg, rgba(255,185,27,.07), rgba(255,185,27,.018));
    margin-bottom:10px;
    text-transform:uppercase;
    flex:0 0 auto;
}
.current-label { color:var(--t-muted); font-size:9px; font-weight:700; letter-spacing:.12em; margin-bottom:5px; }
.current-chapter { color:var(--t-yellow); font-size:19px; font-weight:700; line-height:.95; }
.current-title { color:var(--t-yellow); font-size:18px; font-weight:700; line-height:1.02; margin-top:3px; overflow-wrap:anywhere; }
.current-status { color:var(--t-green); font-size:9px; font-weight:700; margin-top:8px; }
.current-status span { width:6px; height:6px; display:inline-block; border-radius:50%; background:currentColor; margin-right:5px; box-shadow:0 0 6px currentColor; }
.current-status.status-debriefed { color:var(--t-muted); }

.tablet-nav { border:1px solid var(--t-line); display:flex; flex-direction:column; flex:0 0 auto; background:rgba(3,8,10,.18); }
.tablet-nav-btn {
    appearance:none;
    border:0;
    border-bottom:1px solid var(--t-line);
    background:transparent;
    color:#90aaa5;
    display:flex;
    align-items:center;
    gap:10px;
    min-height:36px;
    padding:0 12px;
    font:700 10px/1 var(--font);
    letter-spacing:.105em;
    text-align:left;
    cursor:pointer;
    transition:.14s ease;
}
.tablet-nav-btn:last-child { border-bottom:0; }
.tablet-nav-btn span { width:14px; text-align:center; color:var(--t-yellow); }
.tablet-nav-btn:hover { color:#e2eae7; background:rgba(255,255,255,.025); }
.tablet-nav-btn.active { background:rgba(255,255,255,.07); color:#f2f6f4; box-shadow:inset 2px 0 0 var(--t-yellow); }
.tablet-nav-btn.debrief-access { margin-top:0; color:#9eb5af; }
.tablet-nav-btn.debrief-access span { color:var(--t-green); }
.tablet-nav-btn.debrief-access.active { box-shadow:inset 2px 0 0 var(--t-green); color:var(--t-green); }

.operator-card {
    margin-top:auto;
    padding-top:10px;
    border-top:1px solid var(--t-line-soft);
    color:#6f918b;
    font-size:9px;
    line-height:1.75;
    letter-spacing:.045em;
    text-transform:uppercase;
    flex:0 0 auto;
}
.operator-card strong { font-weight:500; }
.operator-card a { display:block; margin-top:7px; color:#839a95; }
.operator-card a:hover { color:var(--t-yellow); }

.tablet-main {
    grid-row:2;
    min-width:0;
    min-height:0;
    overflow:hidden;
    padding:18px 18px 12px;
    position:relative;
}
.tablet-screen { height:100%; display:none; flex-direction:column; min-height:0; }
.tablet-screen.active { display:flex; }
.report-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    min-height:65px;
    padding-bottom:10px;
    border-bottom:1px solid var(--t-line-soft);
    flex:0 0 auto;
}
.report-head h1 { margin:0; color:#e6edeb; font-size:23px; line-height:1; letter-spacing:.055em; }
.report-subtitle { margin-top:5px; color:var(--t-yellow); font-size:15px; font-weight:700; letter-spacing:.045em; text-transform:uppercase; }
.doc-code { color:#536c67; font:700 9px/1 "Courier New",monospace; border:1px solid var(--t-line-soft); padding:5px 7px; }
.debrief-head .report-subtitle { color:var(--t-green); }
.outcome-stamp { border:1px solid currentColor; padding:6px 10px; font-size:10px; font-weight:700; letter-spacing:.12em; }
.outcome-stamp.outcome-success { color:var(--t-green); }
.outcome-stamp.outcome-partial { color:var(--t-yellow); }
.outcome-stamp.outcome-failure { color:var(--t-red); }

.report-scroll { min-height:0; overflow:auto; padding-right:4px; scrollbar-width:thin; scrollbar-color:rgba(180,194,190,.18) transparent; }
.report-scroll::-webkit-scrollbar { width:3px; }
.report-scroll::-webkit-scrollbar-thumb { background:rgba(180,194,190,.18); }
.report-group { display:none; }
.report-group.active { display:block; }
.group-title {
    color:var(--t-yellow);
    font-size:10px;
    font-weight:700;
    letter-spacing:.13em;
    border-bottom:1px solid var(--t-line-soft);
    padding:11px 0 7px;
    text-transform:uppercase;
}

.report-section {
    display:grid;
    grid-template-columns:30px minmax(0,1fr);
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid var(--t-line-soft);
}
.report-icon {
    width:25px;
    height:25px;
    display:grid;
    place-items:center;
    border:1px solid rgba(203,216,211,.22);
    color:var(--t-yellow);
    font-size:11px;
    margin-top:1px;
}
#screen-debrief .report-icon { color:var(--t-green); }
.report-copy h3 { margin:0 0 5px; color:#e2e9e7; font-size:13px; line-height:1.1; letter-spacing:.045em; }
.report-text { color:#d5dfdc; font-size:11.7px; font-weight:600; line-height:1.55; white-space:normal; }
.tablet-empty { color:#627a75; font-style:italic; font-weight:500; }
.terminal-empty { margin-top:12px; border:1px dashed var(--t-line-soft); padding:18px; color:#617a74; font-size:10px; letter-spacing:.08em; text-align:center; }

.tablet-gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:10px; padding:12px 0; }
.tablet-gallery figure { margin:0; border:1px solid var(--t-line-soft); background:#030607; overflow:hidden; }
.tablet-gallery img { width:100%; height:150px; object-fit:cover; display:block; filter:saturate(.78) brightness(.86) contrast(1.06); }
.tablet-gallery figcaption { color:#77908a; font-size:9px; padding:6px 8px; text-transform:uppercase; border-top:1px solid var(--t-line-soft); }
.evidence-title { margin-top:8px; color:var(--t-green); }

.file-terminal-list { padding-top:10px; }
.file-row { display:grid; grid-template-columns:18px 90px minmax(0,1fr) auto; gap:9px; align-items:center; min-height:36px; border-bottom:1px solid var(--t-line-soft); color:#809c96; font-size:9.5px; text-transform:uppercase; }
.file-row > span:first-child { color:var(--t-yellow); }
.file-row strong { color:#d4dedb; }
.file-row b { color:var(--t-green); font-size:8.5px; }

.comms-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding-top:12px; }
.comms-card { min-height:95px; border:1px solid var(--t-line-soft); padding:12px; display:flex; flex-direction:column; justify-content:center; background:linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,.006)); }
.comms-card span { color:#658079; font-size:9px; letter-spacing:.12em; }
.comms-card strong { color:var(--t-green); font-size:17px; margin:5px 0; }
.comms-card small { color:#7d928d; font-size:8.5px; }
.mobile-map { display:none; }

.tablet-map-panel {
    grid-row:2;
    min-height:0;
    padding:12px;
    display:flex;
    flex-direction:column;
    overflow:hidden;
}
.map-panel-title { color:var(--t-yellow); font-size:10px; font-weight:700; letter-spacing:.1em; padding-bottom:8px; border-bottom:1px solid var(--t-line-soft); }
.tactical-map { margin-top:8px; border:1px solid var(--t-line-soft); background:#05090a; overflow:hidden; flex:0 0 auto; }
.tactical-map img { width:100%; aspect-ratio:1.27/1; object-fit:cover; display:block; filter:saturate(.63) brightness(.82) contrast(1.03); }
.map-offline { margin-top:8px; min-height:260px; display:grid; place-items:center; color:#607a74; border:1px dashed var(--t-line-soft); font-size:10px; }
.map-legend { margin-top:auto; height:26px; display:flex; align-items:center; gap:14px; border:1px solid var(--t-line); padding:0 10px; font-size:8.5px; color:#b8c6c2; text-transform:uppercase; white-space:nowrap; }
.map-legend strong { color:var(--t-yellow); margin-right:2px; }
.map-legend span { display:flex; align-items:center; gap:5px; }
.map-legend i { width:7px; height:7px; border-radius:50%; display:inline-block; border:2px solid currentColor; }
.legend-insertion { color:var(--t-green); }
.legend-objective { color:var(--t-red); }

.tablet-footer {
    grid-column:1/-1;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    align-items:center;
    padding:0 15px;
    color:var(--t-green);
    font-size:9px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.tablet-footer span:nth-child(2) { text-align:center; }
.tablet-footer span:last-child { text-align:right; }
.sync-state { color:var(--t-green); }

@media (max-width: 1180px) {
    .tablet-shell { grid-template-columns:190px minmax(0,1fr) 330px; }
    .current-chapter,.current-title { font-size:16px; }
    .report-head h1 { font-size:20px; }
    .report-subtitle { font-size:13px; }
    .report-text { font-size:11px; }
    .comms-grid { grid-template-columns:1fr; }
    .comms-card { min-height:70px; }
}

@media (max-width: 900px) {
    .tablet-body { overflow:auto; }
    .tablet-shell {
        width:100%; height:auto; min-height:100vh; overflow:visible;
        grid-template-columns:170px minmax(0,1fr);
        grid-template-rows:36px auto auto 32px;
    }
    .tablet-sidebar { grid-column:1; grid-row:2/4; min-height:660px; }
    .tablet-main { grid-column:2; grid-row:2; min-height:660px; }
    .tablet-map-panel { grid-column:2; grid-row:3; min-height:360px; }
    .tactical-map img { aspect-ratio:16/8; object-fit:cover; }
    .map-legend { margin-top:10px; }
}

@media (max-width: 680px) {
    .tablet-shell { display:block; padding:7px; min-height:100vh; }
    .tablet-systembar { height:38px; margin-bottom:7px; padding:0 9px; }
    .system-id { font-size:8px; }
    .link-state { display:none; }
    .tablet-sidebar { min-height:0; padding:9px; margin-bottom:7px; display:grid; grid-template-columns:90px 1fr; gap:8px; }
    .brand-frame { height:78px; margin:0; }
    .current-mission { margin:0; }
    .current-label { font-size:8px; }
    .current-chapter,.current-title { font-size:14px; }
    .tablet-nav { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); }
    .tablet-nav-btn { min-height:34px; border-right:1px solid var(--t-line); justify-content:center; padding:0 7px; font-size:8px; }
    .operator-card { display:none; }
    .tablet-main { min-height:560px; margin-bottom:7px; padding:14px 12px 9px; }
    .report-head { min-height:58px; }
    .report-head h1 { font-size:18px; }
    .report-subtitle { font-size:11px; }
    .doc-code { display:none; }
    .report-section { grid-template-columns:26px 1fr; gap:9px; }
    .report-icon { width:23px; height:23px; }
    .report-copy h3 { font-size:12px; }
    .report-text { font-size:10.8px; }
    .tablet-map-panel { margin-bottom:7px; min-height:0; }
    .tactical-map img { aspect-ratio:16/10; }
    .map-legend { flex-wrap:wrap; height:auto; min-height:30px; padding:6px 8px; gap:8px; }
    .tablet-footer { height:32px; grid-template-columns:1fr 1fr; padding:0 9px; }
    .tablet-footer span:nth-child(2) { display:none; }
}

/* ==========================================================================
   Tablet immersion layer — glass, motion and tactile feedback
   ========================================================================== */
.tablet-shell {
    --glass-a: rgba(10, 17, 19, .76);
    --glass-b: rgba(15, 23, 25, .67);
    perspective: 1600px;
}

.tablet-systembar,
.tablet-sidebar,
.tablet-main,
.tablet-map-panel,
.tablet-footer {
    background:
        linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0) 42%),
        var(--glass-a);
    backdrop-filter: blur(15px) saturate(118%);
    -webkit-backdrop-filter: blur(15px) saturate(118%);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        inset 0 0 28px rgba(0,0,0,.18),
        0 10px 32px rgba(0,0,0,.14);
}

.tablet-main,
.tablet-map-panel {
    background:
        radial-gradient(circle at 50% 0%, rgba(53, 87, 88, .08), transparent 42%),
        linear-gradient(180deg, rgba(255,255,255,.018), transparent 40%),
        rgba(7, 13, 15, .72);
}

.tablet-shell::before {
    content:"";
    position:absolute;
    inset:10px;
    pointer-events:none;
    z-index:30;
    opacity:.24;
    border:1px solid rgba(207,231,224,.035);
    box-shadow:inset 0 0 70px rgba(64,112,110,.035);
}

.tablet-main::after,
.tablet-map-panel::after {
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(110deg, transparent 0 42%, rgba(255,255,255,.016) 48%, transparent 54%);
    transform:translateX(-120%);
    animation:screenSheen 13s ease-in-out infinite;
}

.tablet-map-panel { position:relative; }

@keyframes screenSheen {
    0%, 72% { transform:translateX(-130%); opacity:0; }
    78% { opacity:.8; }
    88% { transform:translateX(130%); opacity:.25; }
    100% { transform:translateX(130%); opacity:0; }
}

.tablet-systembar,
.tablet-sidebar,
.tablet-main,
.tablet-map-panel,
.tablet-footer {
    opacity:0;
    transform:translateY(5px) scale(.998);
}
.tablet-ready .tablet-systembar,
.tablet-ready .tablet-sidebar,
.tablet-ready .tablet-main,
.tablet-ready .tablet-map-panel,
.tablet-ready .tablet-footer {
    animation:tabletModuleIn .38s cubic-bezier(.2,.8,.2,1) forwards;
}
.tablet-ready .tablet-sidebar { animation-delay:.05s; }
.tablet-ready .tablet-main { animation-delay:.10s; }
.tablet-ready .tablet-map-panel { animation-delay:.15s; }
.tablet-ready .tablet-footer { animation-delay:.20s; }

@keyframes tabletModuleIn {
    to { opacity:1; transform:translateY(0) scale(1); }
}

.tablet-boot {
    position:fixed;
    inset:0;
    z-index:10050;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    background:#030708;
    color:#93aaa4;
    transition:opacity .28s ease, visibility .28s ease;
}
.tablet-boot.hide { opacity:0; visibility:hidden; }
.boot-mark { color:#d9e4e0; font-size:22px; font-weight:700; letter-spacing:.22em; }
.boot-copy { margin-top:8px; color:#607a74; font-size:9px; letter-spacing:.18em; }
.boot-line {
    width:min(360px, 64vw);
    height:2px;
    margin-top:16px;
    background:rgba(255,255,255,.06);
    overflow:hidden;
    position:relative;
}
.boot-line::after {
    content:"";
    position:absolute;
    inset:0;
    width:42%;
    background:var(--t-yellow, #ffb91b);
    box-shadow:0 0 12px rgba(255,185,27,.3);
    animation:bootLoad .68s ease-out forwards;
}
@keyframes bootLoad { from{transform:translateX(-105%)} to{transform:translateX(240%)} }

.sound-toggle {
    appearance:none;
    border:1px solid rgba(255,185,27,.30);
    background:rgba(255,185,27,.04);
    color:var(--t-yellow);
    min-width:55px;
    height:21px;
    padding:0 7px;
    font:700 8px/1 "Rajdhani",Arial,sans-serif;
    letter-spacing:.08em;
    cursor:pointer;
    transition:background .14s ease, color .14s ease, border-color .14s ease, transform .14s ease;
}
.sound-toggle:hover { background:rgba(255,185,27,.10); transform:translateY(-1px); }
.sound-toggle.muted { color:#687e79; border-color:rgba(180,194,190,.14); background:rgba(255,255,255,.015); }

.tablet-nav-btn { position:relative; overflow:hidden; }
.tablet-nav-btn::after {
    content:"";
    position:absolute;
    left:0; right:100%; bottom:0;
    height:1px;
    background:var(--t-yellow);
    transition:right .18s ease;
    opacity:.65;
}
.tablet-nav-btn:hover::after,
.tablet-nav-btn.active::after { right:0; }
.tablet-nav-btn:active { transform:translateX(1px); }

.panel-enter { animation:panelEnter .22s cubic-bezier(.2,.8,.2,1); }
@keyframes panelEnter {
    from { opacity:.35; transform:translateX(7px); filter:blur(.7px); }
    to { opacity:1; transform:none; filter:none; }
}

.report-section,
.file-row,
.comms-card,
.tablet-gallery figure {
    transition:background .15s ease, border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.report-section:hover { background:linear-gradient(145deg, rgba(255,255,255,.025), rgba(255,255,255,.006)); }
.file-row:hover,
.comms-card:hover,
.tablet-gallery figure:hover {
    background:rgba(255,255,255,.025);
    border-color:rgba(255,185,27,.20);
    transform:translateY(-1px);
}

.tablet-gallery figure:hover {
    box-shadow:0 8px 24px rgba(0,0,0,.22);
}
.tablet-gallery img { transition:filter .2s ease, transform .28s ease; }
.tablet-gallery figure:hover img { filter:saturate(.9) brightness(.92) contrast(1.06); transform:scale(1.012); }

.report-icon {
    background:rgba(255,185,27,.018);
    box-shadow:inset 0 0 12px rgba(255,185,27,.02);
    transition:background .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.report-section:hover .report-icon {
    background:rgba(255,185,27,.06);
    border-color:rgba(255,185,27,.35);
    box-shadow:0 0 12px rgba(255,185,27,.05), inset 0 0 10px rgba(255,185,27,.04);
}

.link-state i,
.current-status span { animation:statusPulse 2.6s ease-in-out infinite; }
@keyframes statusPulse { 0%,100%{opacity:1} 50%{opacity:.38} }

.sync-state { animation:syncGlow 2.2s ease-in-out infinite; }
@keyframes syncGlow { 0%,100%{text-shadow:none;opacity:.82} 50%{text-shadow:0 0 7px rgba(33,216,121,.22);opacity:1} }

.tactical-map { position:relative; }
.tactical-map::after {
    content:"";
    position:absolute;
    left:0; right:0; top:-12%;
    height:16%;
    pointer-events:none;
    background:linear-gradient(180deg, transparent, rgba(70,162,145,.045), transparent);
    animation:mapScan 8s linear infinite;
}
@keyframes mapScan { to { transform:translateY(720%); } }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; }
}

@media (max-width:680px) {
    .sound-toggle { min-width:42px; padding:0 5px; font-size:7px; }
    .tablet-shell::before { inset:7px; }
}

/* ==========================================================================
   V3.3 — live tactical tablet additions
   ========================================================================== */
.ops-back-btn{display:inline-flex;align-items:center;height:24px;padding:0 8px;border:1px solid var(--t-line);color:var(--t-yellow);text-decoration:none;background:linear-gradient(135deg, rgba(255,185,27,.07), rgba(255,185,27,.018));font-size:9px;letter-spacing:.08em}.ops-back-btn:hover{background:rgba(255,185,27,.1);border-color:rgba(255,185,27,.45)}
.sound-toggle{height:24px;padding:0 8px;border:1px solid rgba(33,216,121,.32);background:rgba(33,216,121,.04);color:var(--t-green);font:700 8px/1 var(--font);letter-spacing:.08em;cursor:pointer}.sound-toggle.muted{color:var(--t-red);border-color:rgba(239,73,63,.28);background:rgba(239,73,63,.04)}.live-revision{color:#78908b;font:700 8px/1 "Courier New",monospace}
.tablet-objectives{display:flex;flex-direction:column;gap:7px}.tablet-objective{position:relative;border:1px solid var(--t-line-soft);padding:8px 10px;background:rgba(255,255,255,.012)}.tablet-objective .obj-kind{display:block;color:var(--t-yellow);font-size:8px;letter-spacing:.1em;margin-bottom:2px}.tablet-objective strong{font-size:11px;text-transform:uppercase}.tablet-objective p{margin:4px 0 0;color:#9db0ab;font-size:10px;white-space:pre-line}.debrief-objectives .tablet-objective{display:grid;grid-template-columns:1fr auto;gap:3px 12px}.debrief-objectives .obj-kind{grid-column:1/3}.debrief-objectives b{font-size:8px;letter-spacing:.08em}.tablet-objective.status-success{border-color:rgba(33,216,121,.28)}.tablet-objective.status-success b{color:var(--t-green)}.tablet-objective.status-partial{border-color:rgba(255,185,27,.28)}.tablet-objective.status-partial b{color:var(--t-yellow)}.tablet-objective.status-failure{border-color:rgba(239,73,63,.28)}.tablet-objective.status-failure b{color:var(--t-red)}.tablet-objective.status-pending b{color:var(--t-muted)}
.intel-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:10px 0}.intel-stat{border:1px solid var(--t-line-soft);padding:9px;background:rgba(255,255,255,.012)}.intel-stat small{display:block;color:var(--t-muted);font-size:7px;letter-spacing:.1em}.intel-stat strong{display:block;margin-top:3px;color:#dbe5e1;font-size:11px}.intel-stat.threat-high strong,.intel-stat.threat-critical strong{color:var(--t-red)}.intel-stat.threat-medium strong{color:var(--t-yellow)}.intel-stat.threat-low strong{color:var(--t-green)}
.intel-structured{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:9px 0}.intel-structured>div{border:1px solid var(--t-line-soft);padding:9px;min-height:90px;background:rgba(255,255,255,.01)}.intel-structured h4{margin:0 0 6px;color:var(--t-yellow);font-size:8px;letter-spacing:.1em}.intel-chip{display:block;border-left:2px solid var(--t-line);padding:4px 6px;margin:4px 0;background:rgba(255,255,255,.014);font-size:8px;color:#9bb0aa}.intel-chip strong{color:#d7e1de}.intel-chip span{margin-left:5px;color:var(--t-muted);text-transform:uppercase}.intel-chip small{display:block;color:#78908b;margin-top:2px}.intel-chip.side-enemy{border-left-color:var(--t-red)}.intel-chip.side-friendly{border-left-color:var(--t-green)}.intel-chip.side-civilian{border-left-color:var(--t-yellow)}.intel-chip.roe{border-left-color:var(--t-yellow)}.env-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.env-grid span{color:var(--t-muted);font-size:7px}.env-grid b{display:block;color:#d4dfdb;font-size:9px;margin-top:1px}
.campaign-consequence{border:1px solid var(--t-line-soft);padding:8px 10px;margin:6px 0}.campaign-consequence strong{color:var(--t-yellow);font-size:10px}.campaign-consequence small{display:block;color:var(--t-muted);font-size:7px;margin-top:3px}.campaign-consequence p{margin:4px 0 0;color:#a9bab5;font-size:9px}.economy-hq,.economy-line,.economy-balance{display:flex;justify-content:space-between;gap:10px;padding:6px 8px;border-bottom:1px solid var(--t-line-soft);font-size:9px}.economy-hq strong,.economy-line.gain strong{color:var(--t-green)}.economy-line.loss strong{color:var(--t-red)}.economy-balance{margin-top:5px;border:1px solid var(--t-line-y);color:var(--t-yellow)}
.tactical-map-live{position:relative}.public-map-vectors,.public-map-pins{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.public-map-vectors{z-index:2}.public-map-pins{z-index:3}.public-map-pin{position:absolute;transform:translate(-50%,-50%);color:var(--t-yellow)}.public-map-pin i{display:block;width:9px;height:9px;border:2px solid currentColor;border-radius:50%;background:rgba(0,0,0,.6);box-shadow:0 0 7px currentColor}.public-map-pin span{position:absolute;left:13px;top:50%;transform:translateY(-50%);white-space:nowrap;color:currentColor;background:rgba(3,7,8,.88);border:1px solid currentColor;padding:1px 4px;font-size:7px;text-transform:uppercase}.legend-route{color:#a8bbb6}.legend-zone{color:var(--t-yellow)}
.tablet-alert-stack{position:fixed;right:24px;top:60px;z-index:12000;display:flex;flex-direction:column;gap:8px;width:min(390px,calc(100vw - 30px));pointer-events:none}.tablet-live-alert{pointer-events:auto;border:1px solid var(--t-blue);background:rgba(6,12,14,.96);box-shadow:0 14px 40px rgba(0,0,0,.5);padding:10px 12px;transform:translateX(30px);opacity:0;transition:.25s ease}.tablet-live-alert.visible{transform:none;opacity:1}.tablet-live-alert.severity-warning{border-color:var(--t-yellow)}.tablet-live-alert.severity-critical{border-color:var(--t-red);box-shadow:0 0 24px rgba(239,73,63,.15)}.tablet-live-alert.severity-success{border-color:var(--t-green)}.alert-head{display:flex;gap:8px;align-items:center}.alert-head strong{flex:1;color:#e3ebe8;font-size:10px;letter-spacing:.08em}.alert-head button{border:0;background:transparent;color:var(--t-muted);cursor:pointer}.tablet-live-alert p{color:#b4c3bf;font-size:10px;line-height:1.4;margin:7px 0}.tablet-live-alert small{color:var(--t-muted);font-size:7px}.sync-toast{position:fixed;left:50%;bottom:50px;z-index:12000;transform:translate(-50%,20px);opacity:0;border:1px solid rgba(33,216,121,.35);background:rgba(4,10,11,.94);color:var(--t-green);padding:7px 12px;font:700 8px/1 var(--font);letter-spacing:.1em;transition:.2s ease}.sync-toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:1180px){.system-id{display:none}.intel-structured{grid-template-columns:1fr}.intel-dashboard{grid-template-columns:1fr 1fr}.intel-dashboard .intel-stat:last-child{grid-column:1/3}}
@media(max-width:680px){.ops-back-btn{padding:0 6px}.live-revision{display:none}.tablet-alert-stack{top:48px;right:10px}.intel-dashboard{grid-template-columns:1fr}.intel-dashboard .intel-stat:last-child{grid-column:auto}.intel-structured{grid-template-columns:1fr}.public-map-pin span{display:none}}
.report-text[data-live-field]{white-space:pre-line}

/* ==========================================================================
   V3.4 — glass/transparency polish
   ========================================================================== */
.tablet-shell{
    --t-panel:rgba(8,15,17,.72);
    --t-panel-2:rgba(11,19,21,.76);
    --t-line:rgba(190,207,201,.18);
    --t-line-soft:rgba(190,207,201,.085);
}
.tablet-systembar,
.tablet-sidebar,
.tablet-main,
.tablet-map-panel,
.tablet-footer{
    background:
        linear-gradient(145deg,rgba(18,29,31,.72),rgba(7,13,15,.62));
    backdrop-filter:blur(15px) saturate(1.15);
    -webkit-backdrop-filter:blur(15px) saturate(1.15);
    box-shadow:
        0 12px 34px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.025),
        inset 0 0 22px rgba(0,0,0,.11);
}
.tablet-shell::before{
    content:"";
    position:absolute;
    inset:5px;
    z-index:-1;
    border:1px solid rgba(212,226,221,.055);
    background:
        radial-gradient(circle at 72% 12%,rgba(64,114,105,.09),transparent 28%),
        linear-gradient(135deg,rgba(255,255,255,.012),transparent 42%);
    pointer-events:none;
}
.tablet-systembar{background:linear-gradient(90deg,rgba(7,14,16,.81),rgba(12,21,23,.69),rgba(7,14,16,.81))}
.tablet-main{background:linear-gradient(145deg,rgba(13,22,24,.72),rgba(7,13,15,.58))}
.tablet-map-panel{background:linear-gradient(145deg,rgba(10,18,20,.76),rgba(5,10,12,.64))}
.tablet-sidebar{background:linear-gradient(165deg,rgba(11,20,22,.78),rgba(6,12,14,.63))}
.tablet-footer{background:rgba(6,12,14,.72)}
.brand-frame,
.current-mission,
.tablet-nav,
.doc-code,
.comms-card,
.intel-stat,
.intel-structured>div,
.tablet-objective,
.campaign-consequence,
.economy-balance{
    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
}
.brand-frame{background:linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.006))}
.current-mission{
    background:linear-gradient(135deg,rgba(255,185,27,.065),rgba(255,185,27,.018));
    box-shadow:inset 0 0 24px rgba(255,185,27,.018);
}
.tablet-nav{background:rgba(3,8,10,.18)}
.tablet-nav-btn.active{background:linear-gradient(90deg,rgba(255,185,27,.095),rgba(255,255,255,.025) 52%,transparent)}
.report-section{position:relative;padding-left:5px;padding-right:5px}
.report-section::before{content:"";position:absolute;inset:2px 0;border:1px solid transparent;pointer-events:none;transition:border-color .15s ease,background .15s ease}
.report-section:hover::before{border-color:rgba(190,207,201,.055);background:linear-gradient(90deg,rgba(255,255,255,.014),transparent 72%)}
.tactical-map{background:#020607;border-color:rgba(190,207,201,.16);box-shadow:inset 0 0 40px rgba(0,0,0,.34)}
.tactical-map img{filter:contrast(1.07) brightness(.78) saturate(.82)}
.map-legend{background:rgba(4,10,12,.20);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.tablet-live-alert{
    background:linear-gradient(145deg,rgba(10,19,21,.88),rgba(5,11,13,.82));
    backdrop-filter:blur(16px) saturate(1.15);
    -webkit-backdrop-filter:blur(16px) saturate(1.15);
}
.sync-toast{background:rgba(4,10,11,.78);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
    .tablet-systembar,.tablet-sidebar,.tablet-main,.tablet-map-panel,.tablet-footer{background:rgba(8,15,17,.96)}
}
