:root{--bg:#f4f7f4;--card:#fff;--ink:#173022;--muted:#66756c;--green:#147a4c;--green2:#e9f7ef;--blue:#2368b5;--amber:#b7791f;--red:#c2410c;--line:#dbe7df;--shadow:0 14px 34px rgba(23,48,34,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Apple SD Gothic Neo','Malgun Gothic',sans-serif}.compact-hero{padding:28px 34px;background:linear-gradient(135deg,#103c2b,#1f7a53 55%,#2e8cc8);color:#fff}.eyebrow{margin:0 0 8px;color:#c8f7dc;font-weight:900}.hero h1{margin:0 0 10px;font-size:34px;letter-spacing:-.04em}.hero p{max-width:1040px;line-height:1.6;font-size:16px}.shell{padding:18px;display:grid;gap:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow)}.card h2{margin:0 0 12px;color:var(--ink);letter-spacing:-.03em}.muted{color:var(--muted);line-height:1.55}.top-dashboard{display:grid;grid-template-columns:1.15fr .95fr .95fr;gap:18px;align-items:stretch}.simple-controls{display:grid;gap:12px}.simple-controls label{display:grid;gap:6px;font-weight:800}.simple-controls select,.simple-controls button{width:100%;border:1px solid var(--line);border-radius:14px;padding:12px;background:#fff;font-weight:800;color:var(--ink)}.simple-controls button,.message-actions button{background:var(--green);color:white;border:0;cursor:pointer}.auto-profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0;padding:12px;border-radius:16px;background:#f1fbf5}.auto-profile b{grid-column:1/-1}.auto-profile span{font-size:13px}.decision-layout{display:grid;grid-template-columns:1.15fr .95fr .95fr;gap:18px}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.impact-grid,.axes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.impact-card,.axis-card,.evidence-card{border:1px solid var(--line);border-radius:16px;padding:13px;background:#fbfffc}.impact-card p{color:var(--muted);line-height:1.5}.tag{display:inline-block;background:#e7f7ed;color:#11633f;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900}.decision-badge{display:inline-flex;border-radius:999px;padding:8px 12px;font-weight:950;background:#e7f7ed;color:#11633f}.action-list{padding:0;margin:0;list-style:none;display:grid;gap:9px}.action-list li{display:flex;gap:10px;padding:12px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;line-height:1.45}.action-list b{color:var(--green)}.urgent li{background:#fff7ed;border-color:#fed7aa}.deadline-nudge{margin-top:12px;padding:13px;border-radius:16px;background:#fef3c7;border:1px solid #fcd34d;color:#78350f;display:grid;gap:4px}.message-preview{white-space:pre-wrap;line-height:1.65;padding:14px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}.message-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.message-actions button{border-radius:999px;padding:9px 12px;font-weight:900}.timeline-group{display:grid;gap:10px}.timeline-item{padding:13px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}.timeline-item label{display:flex;gap:9px;line-height:1.45}.timeline-item strong{display:block;color:#14532d}.timeline-item select,.timeline-item textarea{width:100%;margin-top:9px;border:1px solid var(--line);border-radius:12px;padding:10px;font-family:inherit}.timeline-item textarea{min-height:72px}.sr-title{font-size:22px}.axis-card.level-변경권고{border-color:#f59e0b;background:#fffbeb}.axis-card.level-주의{border-color:#93c5fd;background:#eff6ff}.axis-card.level-정상{border-color:#86efac;background:#f0fdf4}

/* Real-time weather market board */
.map-card{background:linear-gradient(180deg,#081b14,#103c2b 55%,#0f5135);color:#eafff2;border-color:#103c2b;overflow:hidden}.map-card h2{color:#fff}.map-card .muted{color:#b8e6cc}.market-board{display:grid;gap:14px;margin-top:12px}.market-main{border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:18px;background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04));box-shadow:inset 0 0 28px rgba(255,255,255,.05)}.market-label{display:block;font-size:13px;color:#9df4bd;font-weight:900}.market-main strong{display:block;font-size:46px;line-height:1.05;letter-spacing:-.06em;color:#fff}.market-main em{display:block;margin-top:8px;font-style:normal;font-weight:900;color:#fef08a}.market-board.danger .market-main{background:linear-gradient(135deg,#7f1d1d,#dc2626)}.market-board.warn .market-main{background:linear-gradient(135deg,#78350f,#f59e0b)}.ticker-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.ticker-row span{padding:12px 10px;border-radius:15px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);font-size:12px;color:#d8ffe5}.ticker-row b{display:block;color:white;font-size:20px;margin-top:3px}.ticker-row small{display:block;margin-top:5px;color:#b8e6cc;line-height:1.35}.ops-row{grid-template-columns:repeat(5,minmax(0,1fr))}.ticker-strip{display:grid;gap:7px;padding:12px;border-radius:16px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.12)}.ticker-strip span{font-size:13px;color:#dfffea;font-weight:800;line-height:1.5}.human-strip span{padding-bottom:3px;border-bottom:1px solid rgba(255,255,255,.08)}.live-clock{font-weight:900;color:#14532d}.live-source{padding:13px;border-radius:16px;background:#ecfdf5;border:1px solid #bbf7d0;line-height:1.6}.api-live-grid{display:grid;gap:10px;margin-top:12px}.api-live-grid div{padding:12px;border-radius:15px;border:1px solid #dbeafe;background:#f8fbff}.api-live-grid b{display:block;color:#1d4ed8;margin-bottom:4px}.api-live-grid span{color:#334155;line-height:1.45}.aq-good{background:#ecfdf5!important}.aq-normal{background:#f8fafc!important}.aq-bad{background:#fff7ed!important}.aq-danger{background:#fef2f2!important}.aq-unknown{background:#f1f5f9!important}
@media(max-width:1050px){.top-dashboard,.decision-layout,.grid.two{grid-template-columns:1fr}.impact-grid,.axes-grid{grid-template-columns:1fr 1fr}.ticker-row{grid-template-columns:repeat(2,minmax(0,1fr))}.market-main strong{font-size:38px}}@media(max-width:650px){.shell{padding:12px}.compact-hero{padding:24px 18px}.hero h1{font-size:28px}.impact-grid,.axes-grid,.auto-profile{grid-template-columns:1fr}.ticker-row{grid-template-columns:1fr}.decision-title{font-size:24px}}

/* 72-hour advance operations forecast */
.forecast-row{grid-template-columns:repeat(4,minmax(0,1fr))}.forecast-card{min-height:116px;display:flex;flex-direction:column;justify-content:space-between}.forecast-card strong{font-size:13px;color:#eafff2}.forecast-card b{font-size:24px}.forecast-card.level-변경권고{background:rgba(245,158,11,.26);border-color:rgba(253,230,138,.75)}.forecast-card.level-주의{background:rgba(37,99,235,.20);border-color:rgba(191,219,254,.65)}.forecast-card.level-정상{background:rgba(34,197,94,.16);border-color:rgba(187,247,208,.55)}.decision-deadline{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:15px 16px;border-radius:18px;background:#fef3c7;color:#713f12;border:1px solid #fde68a;font-weight:900}.decision-deadline b{font-size:14px}.decision-deadline span{font-size:18px}.market-board.caution .market-main{background:linear-gradient(135deg,#1e3a8a,#2563eb)}.market-board.ok .market-main{background:linear-gradient(135deg,#14532d,#16a34a)}@media(max-width:1050px){.forecast-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.forecast-row{grid-template-columns:1fr}.decision-deadline{display:block}.decision-deadline span{display:block;margin-top:6px}}

/* Analog-style weather gauges */
.gauge-board{gap:16px}.insight-main strong{font-size:28px;line-height:1.35;letter-spacing:-.04em}.gauge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.gauge-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:14px;box-shadow:inset 0 0 24px rgba(255,255,255,.04)}.gauge-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.gauge-head strong{font-size:16px;color:#fff}.gauge-head span{font-size:22px;font-weight:950;color:#fff;white-space:nowrap}.thermo{position:relative;height:22px;margin:14px 0 10px;border-radius:999px;background:linear-gradient(90deg,#22c55e 0%,#84cc16 36%,#facc15 58%,#f97316 76%,#ef4444 100%);overflow:hidden;box-shadow:inset 0 2px 8px rgba(0,0,0,.35)}.thermo:before{content:'';position:absolute;inset:4px;border-radius:999px;background:rgba(6,30,20,.52)}.thermo b{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.86),rgba(255,255,255,.2));min-width:3px}.thermo .baseline{position:absolute;top:-3px;bottom:-3px;width:3px;background:#fff;border-radius:4px;z-index:3;box-shadow:0 0 0 2px rgba(0,0,0,.25)}.gauge-meta{display:flex;justify-content:space-between;gap:8px;align-items:center}.gauge-meta em{font-style:normal;font-size:14px;font-weight:950;color:#fff}.gauge-meta small{font-size:12px;color:#d9fff0;text-align:right}.gauge-card p{margin:10px 0 0;color:#bdebd2;font-size:13px;line-height:1.45}.tone-high{background:rgba(239,68,68,.18);border-color:rgba(252,165,165,.65)}.tone-up{background:rgba(245,158,11,.18);border-color:rgba(253,230,138,.65)}.tone-low,.tone-normal{background:rgba(34,197,94,.12);border-color:rgba(187,247,208,.45)}.tone-unknown{background:rgba(148,163,184,.13)}.ai-profile-card{border:2px solid #b7f0ce;background:linear-gradient(135deg,#f0fff6,#e8f8ff)}.ai-analysis-box{grid-column:1/-1;margin-top:8px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,#06351f,#075b37);color:#fff;box-shadow:0 14px 24px rgba(6,53,31,.25)}.ai-analysis-box p{margin:8px 0 0;color:#f0fff6;font-weight:900;line-height:1.75;font-size:17px}.human-weather-grid div{border-left:5px solid #bfdbfe}.human-weather-grid .aq-bad,.human-weather-grid .aq-danger{border-left-color:#fb923c}.action-headline{display:flex;align-items:center;gap:6px}.gauge-card[data-tone*="높음"],.gauge-card[data-tone*="강함"]{box-shadow:inset 0 0 24px rgba(255,255,255,.04),0 0 0 1px rgba(253,186,116,.18)}

/* 2026-06-02 feedback: left controls, center 72h warning, explicit forecast date labels */
.top-dashboard{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(620px,1.35fr) minmax(280px,.72fr);gap:18px;align-items:start}
#industryAiPanel{order:1}
#nationalWeatherMap{order:2}
#evidencePanel{order:3}
.gauge-basis{margin-top:6px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.13);color:#d7ffe8;font-size:12px;font-weight:850;line-height:1.25;display:inline-block}
.gauge-head+.gauge-basis+.thermo{margin-top:12px}
.visually-hidden-ai-duplicate,[hidden]{display:none!important}
.decision-layout{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1200px){.top-dashboard{grid-template-columns:1fr}.gauge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.gauge-grid,.decision-layout{grid-template-columns:1fr}.gauge-basis{font-size:11px}}

/* 2026-06-02 gauge QA fix: pointer-based gauge so text and visual direction match */
.gauge-pointer-track{position:relative;height:34px;margin:16px 0 22px;overflow:visible;border:1px solid rgba(255,255,255,.20);background:linear-gradient(90deg,#38c172 0%,#84cc16 34%,#facc15 52%,#fb923c 72%,#ef4444 100%);box-shadow:inset 0 2px 10px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.08)}
.gauge-pointer-track:before{content:'';position:absolute;inset:5px;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.04));pointer-events:none}
.gauge-pointer-track .baseline{position:absolute;top:-8px;bottom:-8px;width:3px;transform:translateX(-50%);background:#fff;border-radius:4px;z-index:4;box-shadow:0 0 0 2px rgba(0,0,0,.35),0 0 10px rgba(255,255,255,.55)}
.gauge-pointer-track .gauge-pointer{position:absolute;left:50%;top:50%;width:22px;height:22px;min-width:22px;bottom:auto;transform:translate(-50%,-50%);border-radius:50%;background:#ffffff;border:4px solid #111827;z-index:5;box-shadow:0 0 0 3px rgba(255,255,255,.75),0 8px 18px rgba(0,0,0,.40)}
.gauge-pointer-track .gauge-pointer:after{content:'';position:absolute;left:50%;top:100%;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid #111827}
.track-low,.track-high,.track-base{position:absolute;top:38px;font-size:10px;color:#dfffea;font-weight:800;opacity:.9;white-space:nowrap}
.track-low{left:2px}.track-high{right:2px}.track-base{transform:translateX(-50%);color:#fff}
.tone-up .gauge-pointer-track .gauge-pointer,.tone-high .gauge-pointer-track .gauge-pointer{border-color:#b91c1c;background:#fff7ed}
.tone-low .gauge-pointer-track .gauge-pointer,.tone-down .gauge-pointer-track .gauge-pointer{border-color:#15803d;background:#f0fdf4}
.tone-normal .gauge-pointer-track .gauge-pointer{border-color:#facc15;background:#fffbeb}

/* 2026-06-02 AI readability redesign */
.ai-visual-card{padding:0!important;background:#f7fffb!important;color:#123524!important;border:1px solid #bbf7d0!important;box-shadow:0 12px 28px rgba(20,122,76,.16)!important;overflow:hidden}
.ai-section-title{display:block;padding:14px 16px 6px;font-size:15px;color:#075b37;letter-spacing:-.02em}
.ai-insight-hero{margin:8px 12px 12px;padding:18px;border-radius:18px;background:linear-gradient(135deg,#064e3b,#0f766e);color:#fff;box-shadow:0 10px 20px rgba(6,78,59,.24)}
.ai-hero-kicker{display:inline-flex;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.18);font-size:12px;font-weight:950;color:#d9fff0}
.ai-insight-hero b{display:block;font-size:22px;line-height:1.45;letter-spacing:-.04em;color:#fff}
.ai-insight-hero em{display:inline-block;margin-top:10px;font-style:normal;font-weight:950;color:#fde68a}
.ai-subtitle{padding:2px 14px 8px;color:#075b37;font-size:13px;font-weight:950;letter-spacing:-.02em}.ai-risk-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 12px 12px}
.ai-risk-chip{display:grid;gap:3px;padding:12px;border-radius:15px;background:#fff;border:1px solid #d1fae5;color:#173022;min-height:92px}
.ai-risk-chip small{font-size:12px;font-weight:950;color:#047857}.ai-risk-chip b{font-size:20px;line-height:1.1;color:#111827}.ai-risk-chip em{font-style:normal;font-size:12px;font-weight:900;color:#475569}
.ai-risk-chip.tone-high,.ai-risk-chip.tone-up{border-color:#fdba74;background:#fff7ed}.ai-risk-chip.tone-high small,.ai-risk-chip.tone-up small{color:#c2410c}
.ai-action-cards{display:grid;gap:9px;padding:0 12px 12px}
.ai-action-card{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:10px;align-items:start;padding:13px;border-radius:15px;background:#ecfdf5;border:1px solid #bbf7d0;color:#123524}
.ai-action-card span{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:26px;height:26px;font-size:12px;border-radius:50%;background:#147a4c;color:#fff;font-weight:950}.ai-action-card b{grid-column:2;font-size:14px;color:#064e3b}.ai-action-card p{grid-column:2;margin:3px 0 0!important;color:#334155!important;font-size:13px!important;font-weight:850!important;line-height:1.42!important;word-break:keep-all;overflow-wrap:break-word;white-space:normal;display:block;overflow:visible}.ai-action-card b{word-break:keep-all;white-space:nowrap}
.ai-readable-note{margin:0!important;padding:12px 14px!important;background:#eefdf4;color:#476158!important;font-size:13px!important;font-weight:750!important;line-height:1.55!important;border-top:1px solid #bbf7d0}.ai-readable-note summary{cursor:pointer;font-weight:950;color:#075b37}.ai-readable-note p{margin:8px 0 0!important;color:#476158!important;font-size:13px!important;font-weight:750!important;line-height:1.55!important}
@media(max-width:650px){.ai-risk-chips{grid-template-columns:1fr}.ai-insight-hero b{font-size:20px}}


/* 2026-06-02 review 11: unknown data, location split, executable impact board */
.tone-unknown{background:rgba(148,163,184,.18)!important;border-color:rgba(203,213,225,.65)!important;filter:saturate(.35)}
.tone-unknown .gauge-pointer-track{background:linear-gradient(90deg,#94a3b8,#cbd5e1)!important;opacity:.72}
.tone-unknown .gauge-pointer-track .gauge-pointer{border-color:#64748b;background:#f8fafc}
.tone-unknown .gauge-meta em{color:#e2e8f0}.tone-unknown .gauge-meta small{color:#cbd5e1}
.location-split{display:grid;gap:8px;margin:8px 0 10px;padding:11px 12px;border-radius:15px;background:#f8fafc;border:1px solid #dbe7df;color:#334155;font-size:13px;line-height:1.45}
.location-split span{display:block}.location-split b{color:#14532d}
.impact-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.impact-actions button{border:1px solid #bbf7d0;border-radius:999px;background:#ecfdf5;color:#075b37;padding:7px 9px;font-size:12px;font-weight:950;cursor:pointer}
.impact-actions button:hover{background:#147a4c;color:#fff}
.axis-card .muted{display:block;margin-top:8px;font-size:13px;line-height:1.55;color:#475569;word-break:keep-all}
