:root{font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#13211e;background:#f4f7f5;--green:#116b57;--mint:#e9f7f2;--yellow:#bd7a00;--yellowbg:#fff7df;--red:#b53c2f;--redbg:#fff0ed;--line:#dce5e1;--muted:#63726d}*{box-sizing:border-box}body{margin:0;background:#f4f7f5;color:#13211e}button,input,select{font:inherit}.app-shell{min-height:100vh;padding-bottom:82px}.topbar{height:72px;padding:12px 20px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20}.brand{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none}.brand-mark{width:38px;height:38px;border-radius:12px;background:#0d5f4d;color:white;display:grid;place-items:center;font-size:22px;box-shadow:0 8px 18px rgba(17,107,87,.18)}.brand strong{display:block;font-size:18px}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}.store-pill{font-size:13px;background:#edf3f0;border:1px solid var(--line);padding:8px 12px;border-radius:999px}.page{width:min(920px,100%);margin:0 auto;padding:22px 18px 36px}.status-card{border-radius:24px;padding:24px;box-shadow:0 14px 35px rgba(31,55,47,.09);border:1px solid transparent}.status-card.normal{background:linear-gradient(135deg,#effaf6,#fff);border-color:#cfe9df}.status-card.watch{background:linear-gradient(135deg,#fff8e6,#fff);border-color:#f0d899}.status-card.attention{background:linear-gradient(135deg,#fff0ed,#fff);border-color:#efc7c0}.eyebrow{text-transform:uppercase;font-weight:700;letter-spacing:.03em;color:var(--muted);font-size:12px}.status-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.status-row h1{font-size:42px;margin:8px 0 6px;letter-spacing:-.05em}.status-row p{margin:0;color:#40514b;font-size:16px;line-height:1.55}.status-orb{width:78px;height:78px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;background:#fff;border:8px solid rgba(17,107,87,.12)}.watch .status-orb{color:var(--yellow);border-color:rgba(189,122,0,.15)}.attention .status-orb{color:var(--red);border-color:rgba(181,60,47,.14)}.normal .status-orb{color:var(--green)}.loss-highlight{margin-top:20px;background:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.9);border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px}.loss-highlight span{font-size:13px;color:var(--muted)}.loss-highlight strong{font-size:28px}.loss-highlight small{grid-column:1/-1;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.metric,.panel{background:#fff;border:1px solid var(--line);border-radius:18px}.metric{padding:16px;min-height:112px}.metric span,.metric small{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:22px;margin:9px 0 5px;letter-spacing:-.03em}.panel{padding:20px;margin-top:14px}.panel h2{font-size:17px;margin:0 0 14px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start}.panel-head h2{margin-bottom:3px}.panel-head p{margin:0;color:var(--muted);font-size:13px}.panel-head a{color:var(--green);font-size:13px;text-decoration:none}.chart-wrap{overflow:hidden}.chart-wrap svg{width:100%;height:auto;min-height:190px}.range{fill:#e5f3ee;stroke:none}.expected{fill:none;stroke:#7a968d;stroke-width:2;stroke-dasharray:5 5}.actual{fill:none;stroke:#165d4e;stroke-width:3}.axis{stroke:#cad7d2;stroke-width:1}.anomaly-dot{fill:#b53c2f;stroke:white;stroke-width:1.5}.legend{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:11px}.lg{width:12px;height:4px;border-radius:4px;display:inline-block;margin-right:5px;vertical-align:middle}.range-lg{background:#d8eee6}.expected-lg{background:#7a968d}.actual-lg{background:#165d4e}.anomaly-lg{background:#b53c2f}.why-stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.why-stats span{background:#f4f7f5;border-radius:12px;padding:10px 12px;font-size:13px}.check-list{padding-left:22px;line-height:2}.primary,.ghost,.demo-flow button,.scenario{border:0;border-radius:12px;padding:12px 16px;cursor:pointer}.primary{background:#0d5f4d;color:#fff;font-weight:800}.ghost{background:#eef3f1;color:#24433a;margin-top:10px}.wide{width:100%}.source-note{font-size:11px;color:#7c8985;text-align:center;padding:16px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:68px;background:rgba(255,255,255,.97);border-top:1px solid var(--line);display:flex;justify-content:center;z-index:30}.bottom-nav a{width:min(150px,20%);text-decoration:none;color:#71817b;text-align:center;font-size:11px;padding:10px 4px}.bottom-nav a span{display:block;font-size:20px;line-height:24px}.bottom-nav a.active{color:var(--green);font-weight:800}.page-title{margin:8px 0 18px}.page-title h1{font-size:28px;margin:0 0 6px}.page-title p{margin:0;color:var(--muted)}.table-panel{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:11px;border-bottom:1px solid #edf1ef;text-align:right}th:first-child,td:first-child{text-align:left}.row-alert{background:#fff4f1}.stack{display:grid;gap:10px}.alert-item{background:#fff;border:1px solid var(--line);border-left:5px solid #9ba9a4;border-radius:14px;padding:16px}.alert-item.watch{border-left-color:#bd7a00}.alert-item.attention{border-left-color:#b53c2f}.alert-item div{display:flex;justify-content:space-between;gap:20px}.alert-item span,.alert-item small{font-size:12px;color:var(--muted)}.alert-item p{margin:10px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-weight:700;font-size:13px}.form-grid input,.form-grid select{width:100%;margin-top:7px;border:1px solid #cfdad6;background:#fff;border-radius:10px;padding:12px}.form-grid label small{display:block;color:var(--muted);font-weight:400;margin-top:5px}.full{grid-column:1/-1}.data-source{padding:12px 0;border-top:1px solid #edf1ef;display:flex;gap:20px}.data-source b{width:54px}.muted{color:var(--muted)}.scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.scenario{background:#f3f7f5;border:1px solid var(--line);text-align:left}.scenario.selected{outline:2px solid var(--green);background:#eef9f5}.scenario b,.scenario span{display:block}.scenario span{color:var(--muted);font-size:12px;margin-top:5px}.demo-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.demo-flow button{background:#eef3f1;color:#203d35;font-weight:700}.demo-result{margin-top:14px;border-radius:14px;padding:14px;display:grid;gap:4px}.demo-result.normal{background:var(--mint)}.demo-result.watch{background:var(--yellowbg)}.demo-result.attention{background:var(--redbg)}.demo-result span,.demo-result small{font-size:13px;color:#53645f}.progress-label{display:flex;justify-content:space-between;font-size:13px}.progress{height:10px;background:#edf1ef;border-radius:99px;overflow:hidden;margin:10px 0}.progress i{display:block;height:100%;background:#16755f}.onboarding{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top,#e6f6f0,#f5f7f6 50%)}.onboard-card{width:min(650px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:0 24px 70px rgba(35,68,57,.12)}.brand.intro{margin-bottom:26px}.onboard-card h1{font-size:32px;margin:0 0 12px}.onboard-card>p{color:var(--muted);line-height:1.65;margin-bottom:24px}.toast{position:fixed;left:50%;bottom:86px;transform:translate(-50%,15px);opacity:0;background:#172722;color:#fff;padding:11px 15px;border-radius:12px;transition:.2s;z-index:100;font-size:13px}.toast.show{transform:translate(-50%,0);opacity:1}.offline:before{content:'오프라인 · 저장된 데모 데이터로 작동 중';position:fixed;top:0;left:0;right:0;background:#273c35;color:#fff;text-align:center;font-size:11px;padding:5px;z-index:99}.offline .topbar{top:23px}.empty{text-align:center;color:var(--muted);padding:30px}
@media(max-width:720px){.page{padding:16px 12px 28px}.topbar{height:64px;padding:10px 14px}.store-pill{max-width:34%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-grid{grid-template-columns:1fr 1fr}.status-card{padding:18px;border-radius:20px}.status-row h1{font-size:36px}.status-orb{width:62px;height:62px}.loss-highlight{grid-template-columns:1fr}.loss-highlight strong{grid-row:auto}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.scenario-grid,.demo-flow{grid-template-columns:1fr}.panel{padding:16px}.onboard-card{padding:22px}.onboard-card h1{font-size:27px}}

.action-row{display:flex;gap:10px;margin-top:12px}.secondary{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:#eef3f1;color:#24433a;font-weight:800;border-radius:12px;padding:12px 16px}.action-row>*{flex:1}@media(max-width:520px){.action-row{flex-direction:column}}

/* Evidence system */
.top-actions{display:flex;align-items:center;gap:8px}.evidence-link{font-size:12px;font-weight:800;color:var(--green);text-decoration:none;padding:8px 10px;border:1px solid var(--line);border-radius:999px;background:#fff}.evidence-entry{display:flex;align-items:center;justify-content:space-between;gap:18px}.evidence-entry h2{margin-bottom:4px}.evidence-entry p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.decision-trace{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.decision-trace div{background:#f4f7f5;border:1px solid #e4ebe8;border-radius:12px;padding:11px}.decision-trace span,.decision-trace b{display:block}.decision-trace span{font-size:11px;color:var(--muted);margin-bottom:5px}.decision-trace b{font-size:13px}.rule-disclosure{font-size:12px}.evidence-inline{margin-top:18px;padding-top:16px;border-top:1px solid #edf1ef}.evidence-inline h3{font-size:14px;margin:0 0 10px}.evidence-mini-list{display:grid;gap:8px}.evidence-mini{display:grid;gap:4px;border:1px solid var(--line);border-radius:12px;padding:12px;text-decoration:none;color:inherit;background:#fbfcfc}.evidence-mini b{font-size:13px}.evidence-mini small{font-size:11px;color:var(--muted);line-height:1.45}.source-type{display:inline-flex;width:max-content;font-size:10px;font-weight:800;letter-spacing:.02em;color:#356257;background:#edf5f2;border-radius:999px;padding:4px 7px}.evidence-more{margin-top:10px;width:100%}.boundary-note{background:#fff7df;border:1px solid #f0d899;border-radius:12px;padding:12px 14px;font-size:12px;line-height:1.55}.boundary-note b{display:block;color:#815300;margin-bottom:4px}.evidence-title{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.evidence-title h1{font-size:38px;line-height:1.12;margin:8px 0 10px}.evidence-title p{max-width:650px;line-height:1.6}.evidence-summary{min-width:135px;background:#0d5f4d;color:#fff;border-radius:20px;padding:18px;text-align:center}.evidence-summary b,.evidence-summary span,.evidence-summary small{display:block}.evidence-summary b{font-size:36px}.evidence-summary span{font-weight:800}.evidence-summary small{font-size:10px;opacity:.7;margin-top:3px}.evidence-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.evidence-principles div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.evidence-principles b,.evidence-principles span{display:block}.evidence-principles b{font-size:13px}.evidence-principles span{font-size:11px;color:var(--muted);margin-top:5px;line-height:1.45}.evidence-filters{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.evidence-filter{border:1px solid var(--line);background:#fff;color:#48605a;border-radius:999px;padding:9px 12px;display:flex;gap:7px;align-items:center;cursor:pointer;font:inherit;font-size:12px}.evidence-filter b{font-size:10px;background:#edf3f0;border-radius:999px;padding:2px 6px}.evidence-filter.active{background:#0d5f4d;border-color:#0d5f4d;color:#fff}.evidence-filter.active b{background:rgba(255,255,255,.16)}.evidence-list{display:grid;gap:12px}.evidence-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;scroll-margin-top:92px}.evidence-card[hidden]{display:none}.evidence-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.evidence-card-head>div{display:flex;gap:6px;flex-wrap:wrap}.evidence-card-head code{font-size:10px;color:#74847e}.scope-badge{font-size:10px;font-weight:800;border-radius:999px;padding:4px 7px}.scope-badge.implemented{background:#e9f7f2;color:#0d5f4d}.scope-badge.future{background:#eef0fa;color:#4151a0}.scope-badge.reference{background:#f4f1ec;color:#6e5a3f}.evidence-card h2{font-size:19px;margin:12px 0 8px;letter-spacing:-.02em}.evidence-highlight{display:flex;align-items:baseline;gap:12px;margin:8px 0 14px;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#e9f7f2,#f8fbfa);border:1px solid #cfe8df}.evidence-highlight b{font-size:30px;line-height:1;color:#0d5f4d;letter-spacing:-.04em}.evidence-highlight span{font-size:12px;line-height:1.45;color:#4d625c;font-weight:700}.evidence-card .claim{line-height:1.65;margin:0 0 14px}.evidence-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;background:#f7f9f8;border-radius:12px;padding:12px;margin:0 0 12px}.evidence-meta div{display:grid;grid-template-columns:72px 1fr;gap:8px}.evidence-meta dt{font-size:11px;color:var(--muted)}.evidence-meta dd{font-size:11px;margin:0;word-break:break-word}.implication,.limitation{border-left:3px solid #74a698;padding:8px 12px;margin:8px 0}.limitation{border-left-color:#d4a643}.implication b,.limitation b{font-size:12px}.implication p,.limitation p{font-size:12px;line-height:1.55;margin:4px 0 0;color:#475c56}.source-button{display:inline-flex;margin-top:8px;text-decoration:none;color:var(--green);font-size:12px;font-weight:800}.source-button.disabled{color:#8c9995}.source-button:hover{text-decoration:underline}
@media(max-width:720px){.evidence-link{display:inline-flex;padding:7px 9px;font-size:11px}.evidence-title{align-items:stretch;flex-direction:column}.evidence-title h1{font-size:30px}.evidence-summary{min-width:0;width:100%;display:grid;grid-template-columns:auto 1fr;align-items:center;text-align:left}.evidence-summary b{grid-row:1/3;margin-right:12px}.evidence-principles{grid-template-columns:1fr}.decision-trace{grid-template-columns:1fr 1fr}.evidence-meta{grid-template-columns:1fr}.evidence-entry{align-items:flex-start;flex-direction:column}.evidence-entry .secondary{width:100%}}

/* WattGuard identity + submission live capture */
.brand-mark{overflow:hidden;padding:0;background:#063f35}.brand-icon{width:100%;height:100%;object-fit:contain;display:block}.learning-hero{display:grid;grid-template-columns:120px 1fr;gap:18px;align-items:center;background:linear-gradient(135deg,#edf9f5,#fff)}.learning-orbit{width:112px;height:112px;border-radius:30px;background:#073f35;display:grid;place-items:center;box-shadow:0 16px 35px rgba(13,95,77,.18)}.learning-icon{width:100%;height:100%;object-fit:contain}.learning-hero span,.learning-hero strong{display:block}.learning-hero span{font-size:12px;color:var(--muted);font-weight:800}.learning-hero strong{font-size:34px;margin:5px 0;letter-spacing:-.04em}.learning-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.learning-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.learning-rules div{padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8faf9}.learning-rules b,.learning-rules span{display:block}.learning-rules b{font-size:12px}.learning-rules span{font-size:11px;color:var(--muted);margin-top:4px}

.capture-ready-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 50% 15%,#e8f8f2,#f5f7f6 55%)}.capture-ready-card{width:min(390px,100%);text-align:center;background:#fff;border:1px solid var(--line);border-radius:28px;padding:32px 24px;box-shadow:0 24px 80px rgba(17,68,55,.12)}.capture-ready-icon{width:132px;height:132px;object-fit:contain;margin:0 auto 14px;display:block}.capture-ready-card h1{font-size:28px;margin:8px 0 8px;letter-spacing:-.04em}.capture-ready-card p{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 20px}.capture-ready-card .primary{min-width:180px}
.capture-splash{min-height:100vh;display:grid;place-items:center;padding:26px;overflow:hidden}.capture-splash.dark{background:#030807;color:#fff}.capture-splash.light{background:radial-gradient(circle at 80% 6%,#fff0ee,transparent 34%),radial-gradient(circle at 18% 92%,#ddf6ed,transparent 38%),#fbfdfc;color:#173a32}.capture-splash-inner{width:100%;text-align:center;display:grid;justify-items:center}.capture-splash-icon{width:min(72vw,330px);height:min(72vw,330px);object-fit:contain;display:block;filter:drop-shadow(0 22px 45px rgba(0,0,0,.22));animation:captureIconIn .30s ease-out both}.capture-splash-copy{min-height:108px;margin-top:16px}.capture-splash-copy h1{font-size:34px;line-height:1.08;letter-spacing:-.05em;margin:0 0 9px}.capture-splash-copy p{margin:0;font-size:16px;color:inherit;opacity:.72}.capture-splash.dark .capture-splash-copy p{color:#cbd8d3}.capture-splash-footer{margin-top:18px;padding:10px 16px;border-radius:999px;background:rgba(17,107,87,.08);font-size:13px;font-weight:850;letter-spacing:-.02em}.capture-splash.dark .capture-splash-footer{background:rgba(255,255,255,.08);color:#cfe7df}.capture-mode{background:#000}.capture-mode .toast{display:none}.capture-tour-active #app::after{content:attr(data-capture-caption);position:fixed;left:50%;bottom:78px;transform:translateX(-50%);z-index:90;width:calc(100% - 36px);max-width:414px;padding:10px 13px;border-radius:14px;background:rgba(10,34,28,.9);color:#fff;text-align:center;font-size:12px;font-weight:750;line-height:1.4;box-shadow:0 10px 28px rgba(0,0,0,.2);pointer-events:none}.capture-tour-active .topbar{position:sticky}.capture-tour-active .page{padding-bottom:118px}.capture-tour-active .bottom-nav{height:62px}.capture-tour-active .bottom-nav a{padding-top:7px}.capture-tour-active .bottom-nav a span{font-size:18px;line-height:22px}@keyframes captureIconIn{from{opacity:.15;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
@media(max-width:720px){.learning-hero{grid-template-columns:92px 1fr}.learning-orbit{width:88px;height:88px;border-radius:24px}.learning-hero strong{font-size:28px}.learning-rules{grid-template-columns:1fr 1fr}.capture-splash-copy h1{font-size:31px}.capture-splash-copy p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.capture-splash-icon{animation:none}}

@media(max-width:520px){.evidence-highlight{align-items:flex-start;flex-direction:column;gap:6px}.evidence-highlight b{font-size:27px}}

/* Evidence infographics: every key number gets a visual companion */
.evi-graphic{margin:10px 0 16px;border:1px solid #dbe7e2;border-radius:16px;background:linear-gradient(180deg,#fbfefd,#f3f8f6);padding:16px}
.evi-graphic small{display:block;margin-top:10px;color:#6b7b76;font-size:10px;line-height:1.45}
.evi-bars-grid{height:170px;display:flex;align-items:flex-end;justify-content:center;gap:28px;padding:4px 10px}
.evi-bar-col{width:min(150px,42%);height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:8px;text-align:center}
.evi-bar-col>b{font-size:24px;letter-spacing:-.04em;color:#0d5f4d}
.evi-bar-track{height:100%;min-height:85px;border-radius:14px 14px 8px 8px;background:#e9f0ed;display:flex;align-items:flex-end;overflow:hidden}
.evi-bar-track i{display:block;width:100%;border-radius:14px 14px 8px 8px;background:linear-gradient(180deg,#52a88f,#0d5f4d)}
.evi-bar-col span{font-size:11px;color:#5f716b;font-weight:700}
.evi-trend-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.evi-trend-head b{font-size:25px;color:#0d5f4d;letter-spacing:-.04em}
.evi-trend-head span{font-size:10px;color:#7a8984;text-align:right}
.evi-trend-row{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end}
.evi-trend-row>div{display:grid;gap:5px}
.evi-trend-row span{font-size:11px;color:#73817d}.evi-trend-row strong{font-size:18px}
.evi-trend-row i{display:block;height:10px;border-radius:99px;background:#1c7561}
.evi-trend-row em{font-style:normal;font-size:26px;color:#7d918a;padding-bottom:4px}
.evi-donut-wrap{display:grid;grid-template-columns:132px 1fr;align-items:center;gap:18px}
.evi-donut{--pct:50;width:126px;height:126px;border-radius:50%;background:conic-gradient(#0d5f4d calc(var(--pct)*1%),#e2ebe7 0);display:grid;place-items:center}
.evi-donut:before{content:"";grid-area:1/1;width:82px;height:82px;border-radius:50%;background:#fff}
.evi-donut>div{grid-area:1/1;z-index:1;text-align:center}.evi-donut b,.evi-donut span{display:block}
.evi-donut b{font-size:26px;color:#0d5f4d;letter-spacing:-.04em}.evi-donut span{font-size:10px;color:#65756f;margin-top:3px}
.evi-donut-wrap>p{font-size:13px;line-height:1.55;color:#41564f;margin:0}
.evi-stats>div{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.evi-stats article{background:#fff;border:1px solid #dbe7e2;border-radius:14px;padding:17px 14px}
.evi-stats article b,.evi-stats article span{display:block}.evi-stats article b{font-size:25px;color:#0d5f4d;letter-spacing:-.04em}.evi-stats article span{font-size:11px;color:#65756f;margin-top:6px}
.evi-saving{display:flex;align-items:center;gap:16px}.evi-saving-arrow{width:68px;height:68px;flex:0 0 auto;border-radius:22px;background:#e4f5ef;color:#0d5f4d;display:grid;place-items:center;font-size:42px;font-weight:900}
.evi-saving>div{min-width:0}.evi-saving b,.evi-saving strong{display:block}.evi-saving b{font-size:28px;color:#0d5f4d;letter-spacing:-.04em}.evi-saving b small{display:inline;margin:0 0 0 4px;font-size:13px;color:#5f716b}
.evi-saving strong{font-size:13px;margin-top:3px}.evi-saving p{font-size:11px;color:#6b7b76;margin:6px 0 0}
.evi-odds>div{display:grid;gap:9px}.evi-odds article{display:grid;grid-template-columns:74px 1fr 54px;gap:9px;align-items:center}
.evi-odds article span{font-size:11px;color:#5f716b}.evi-odds article b{font-size:14px;text-align:right;color:#0d5f4d}
.evi-odds-track{height:12px;border-radius:99px;background:#e6eeeb;overflow:hidden}.evi-odds-track i{display:block;height:100%;border-radius:99px;background:#1c7561}
.evi-timeline{display:flex;align-items:center;gap:14px}.evi-time-chip{width:76px;height:76px;border-radius:24px;background:#0d5f4d;color:#fff;display:grid;place-items:center;font-size:22px;font-weight:900;flex:0 0 auto}
.evi-timeline b{font-size:14px}.evi-timeline p{font-size:11px;color:#687872;line-height:1.5;margin:5px 0 0}
@media(max-width:520px){
  .evi-graphic{padding:14px}
  .evi-bars-grid{height:150px;gap:16px}
  .evi-bar-col>b{font-size:21px}
  .evi-trend-head{align-items:flex-start;flex-direction:column}.evi-trend-head span{text-align:left}
  .evi-trend-row{gap:8px}.evi-trend-row strong{font-size:15px}
  .evi-donut-wrap{grid-template-columns:108px 1fr;gap:13px}.evi-donut{width:104px;height:104px}.evi-donut:before{width:68px;height:68px}.evi-donut b{font-size:22px}
  .evi-stats article b{font-size:21px}
  .evi-saving-arrow{width:58px;height:58px;border-radius:18px;font-size:36px}.evi-saving b{font-size:24px}
  .evi-odds article{grid-template-columns:68px 1fr 48px}
}


/* WattGuard impact UX v2 · KIMSE-paced captions */
.status-card{
  position:relative;
  overflow:hidden;
  transition:border-color .35s ease,box-shadow .35s ease,background .35s ease;
}
.status-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:5px;
  background:#58a58f;
  opacity:.75;
}
.status-card.watch{
  border-color:#efd18e;
  background:linear-gradient(145deg,#fffaf0 0%,#fff 72%);
  box-shadow:0 12px 30px rgba(174,116,0,.09);
}
.status-card.watch::before{background:#e3a323;opacity:1}
.status-card.attention{
  border-color:#efb0a7;
  background:linear-gradient(145deg,#fff3f0 0%,#fff 72%);
  box-shadow:0 15px 34px rgba(181,60,47,.12);
}
.status-card.attention::before{background:#d95746;opacity:1}
.status-card.normal.recovered{
  border-color:#a9ddca;
  background:linear-gradient(145deg,#eaf9f3 0%,#fff 76%);
  box-shadow:0 14px 34px rgba(22,117,95,.12);
  animation:wattguardRecoveredCard 1.15s cubic-bezier(.2,.8,.2,1) 1;
}
.status-card .status-row h1{
  transition:color .25s ease,transform .25s ease;
}
.status-card.watch .status-row h1{color:#9a6500}
.status-card.attention .status-row h1{
  color:#b53c2f;
  font-size:clamp(30px,7vw,40px);
  letter-spacing:-.055em;
}
.status-orb{
  position:relative;
  overflow:visible;
  transform-origin:center;
}
.status-orb>span{position:relative;z-index:2}
.status-card.watch .status-orb{
  box-shadow:0 0 0 0 rgba(227,163,35,.34);
  animation:wattguardWarnPulse 1.55s ease-in-out infinite;
}
.status-card.attention .status-orb{
  box-shadow:0 0 0 0 rgba(217,87,70,.38);
  animation:wattguardAttentionPulse 1.2s ease-in-out infinite;
}
.status-card.normal.recovered .status-orb{
  animation:wattguardRecoveredOrb 1.05s cubic-bezier(.2,.8,.2,1) 1;
}
.impact-loss{
  position:relative;
  overflow:hidden;
  border-color:rgba(217,87,70,.2);
}
.attention .impact-loss{
  background:linear-gradient(110deg,rgba(255,255,255,.94),rgba(255,228,222,.92),rgba(255,255,255,.94));
  background-size:220% 100%;
  animation:wattguardLossSweep 2.2s ease-in-out infinite;
}
.impact-loss .impact-number{
  color:#b53c2f;
  font-size:clamp(30px,7vw,38px);
  letter-spacing:-.055em;
  text-shadow:0 1px 0 rgba(255,255,255,.8);
  animation:wattguardNumberPop .52s cubic-bezier(.18,.86,.32,1.25) both;
}
.metric{
  position:relative;
  overflow:hidden;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.metric strong{transition:color .25s ease,transform .25s ease}
.metric.baseline-metric{background:#fafcfb}
.metric.impact-current{
  border-color:#ecc0b8;
  background:linear-gradient(145deg,#fff8f6,#fff);
  box-shadow:0 9px 22px rgba(181,60,47,.07);
}
.metric.impact-delta{
  border-color:#e8b4ab;
  background:linear-gradient(145deg,#fff1ee,#fff);
  box-shadow:0 10px 24px rgba(181,60,47,.09);
}
.metric.impact-delta strong,
.metric.impact-current strong{color:#b53c2f}
.metric.impact-delta strong{
  font-size:clamp(25px,6vw,32px);
  animation:wattguardNumberPop .52s cubic-bezier(.18,.86,.32,1.25) both;
}
.metric.impact-cost{
  border-color:#f0cf99;
  background:linear-gradient(145deg,#fff8e9,#fff);
}
.metric.impact-cost strong{
  color:#9a6200;
  font-weight:950;
}
.metric.impact-cost.monthly{
  border-color:#e5a69c;
  background:linear-gradient(145deg,#fff0ed,#fff9f7);
}
.metric.impact-cost.monthly strong{color:#ad382c}
.metric.impact-normal{
  border-color:#bde4d5;
  background:linear-gradient(145deg,#edf9f5,#fff);
}
.metric.impact-normal strong{color:#116a55}
.metric-grid-alert .metric:nth-child(1),
.metric-grid-alert .metric:nth-child(3),
.metric-grid-alert .metric:nth-child(4){
  animation:wattguardMetricRise .48s ease both;
}
.metric-grid-alert .metric:nth-child(3){animation-delay:.08s}
.metric-grid-alert .metric:nth-child(4){animation-delay:.16s}
.why-alert .baseline-value{
  color:#45655c;
  background:#eef4f2;
  border-radius:7px;
  padding:1px 5px;
}
.why-alert .current-value,
.why-alert .duration-value{
  color:#b53c2f;
  background:#fff0ed;
  border-radius:7px;
  padding:1px 5px;
  box-shadow:inset 0 -2px 0 rgba(181,60,47,.12);
}
.why-stats .delta-value,
.why-stats .waste-value{
  color:#b53c2f;
  font-size:17px;
  letter-spacing:-.03em;
}
.why-normal .normal-word{
  color:#116a55;
  background:#e8f7f1;
  border-radius:7px;
  padding:1px 6px;
}
.chart-wrap.has-anomaly{
  border-radius:14px;
  background:linear-gradient(180deg,rgba(255,250,248,.65),rgba(255,255,255,0));
}
.chart-wrap.has-anomaly .actual{
  stroke:#a9362c;
  stroke-width:3.4;
}
.chart-wrap.has-anomaly .anomaly-dot{
  transform-box:fill-box;
  transform-origin:center;
  animation:wattguardDotPulse 1.35s ease-in-out infinite;
}
.check-list li:first-child{
  font-weight:850;
  color:#243c35;
  background:#fff8e9;
  border:1px solid #f1d8a8;
  border-radius:10px;
  padding:2px 9px 2px 5px;
}
.attention + .metric-grid .metric,
.detail-status.attention + .metric-grid .metric{
  will-change:transform;
}
.decision-trace>div:nth-child(2),
.decision-trace>div:nth-child(3),
.decision-trace>div:nth-child(5){
  background:#fff4f1;
  border-color:#edc3bc;
}
.decision-trace>div:nth-child(2) b,
.decision-trace>div:nth-child(3) b,
.decision-trace>div:nth-child(5) b{color:#b53c2f}

/* KIMSE submission-video caption timing:
   1.5s ease in, min 1.4s live, 1.5s ease out. */
.capture-tour-active #app::after{
  content:none;
}
.capture-tour-active #app.capture-caption-active::after{
  content:attr(data-capture-caption);
  position:fixed;
  top:var(--capture-caption-top);
  bottom:auto;
  left:50%;
  width:max-content;
  max-width:calc(100% - 36px);
  padding:9px 14px 10px;
  border-radius:10px;
  background:rgba(0,0,0,.86);
  color:#fff;
  box-shadow:0 4px 14px rgba(0,0,0,.24);
  font-size:18px;
  line-height:1.35;
  font-weight:850;
  text-align:center;
  letter-spacing:-.01em;
  white-space:normal;
  pointer-events:none;
  z-index:32000;
  opacity:0;
  transform:translateX(-50%) translateY(8px);
  transition:opacity 1.5s ease,transform 1.5s ease;
}
.capture-tour-active #app.capture-caption-active.capture-caption-show::after{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}
.capture-tour-active #app.caption-top::after{max-width:calc(100% - 42px)}
.capture-tour-active .status-card.attention .status-orb,
.capture-tour-active .metric.impact-delta strong,
.capture-tour-active .impact-loss .impact-number{
  animation-play-state:running;
}

@keyframes wattguardWarnPulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(227,163,35,.34)}
  50%{transform:scale(1.055);box-shadow:0 0 0 9px rgba(227,163,35,0)}
}
@keyframes wattguardAttentionPulse{
  0%,100%{transform:scale(1);filter:brightness(1);box-shadow:0 0 0 0 rgba(217,87,70,.40)}
  50%{transform:scale(1.08);filter:brightness(1.08);box-shadow:0 0 0 12px rgba(217,87,70,0)}
}
@keyframes wattguardRecoveredOrb{
  0%{transform:scale(.86);box-shadow:0 0 0 0 rgba(22,117,95,.34)}
  60%{transform:scale(1.08);box-shadow:0 0 0 13px rgba(22,117,95,0)}
  100%{transform:scale(1);box-shadow:0 0 0 0 rgba(22,117,95,0)}
}
@keyframes wattguardRecoveredCard{
  0%{transform:translateY(3px);filter:saturate(.85)}
  65%{transform:translateY(0);filter:saturate(1.08)}
  100%{filter:saturate(1)}
}
@keyframes wattguardLossSweep{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes wattguardNumberPop{
  0%{opacity:.25;transform:scale(.88) translateY(3px)}
  75%{opacity:1;transform:scale(1.055) translateY(0)}
  100%{opacity:1;transform:scale(1)}
}
@keyframes wattguardMetricRise{
  from{opacity:.55;transform:translateY(7px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes wattguardDotPulse{
  0%,100%{opacity:.7;transform:scale(.9)}
  50%{opacity:1;transform:scale(1.55)}
}
@media(prefers-reduced-motion:reduce){
  .status-card,.status-orb,.impact-loss,.impact-number,.metric,.metric strong,.anomaly-dot{
    animation:none!important;
    transition:none!important;
  }
  .capture-tour-active #app.capture-caption-active::after{
    transition:opacity .2s linear!important,transform .2s linear!important;
  }
}


/* WattGuard capture scene focus v1 */
.capture-tour-active #app[data-capture-scene="home-normal"] .metric.impact-normal,
.capture-tour-active #app[data-capture-scene="anomaly-start"] .metric.impact-current,
.capture-tour-active #app[data-capture-scene="anomaly-watch"] .metric.impact-delta,
.capture-tour-active #app[data-capture-scene="anomaly-attention"] .impact-loss,
.capture-tour-active #app[data-capture-scene="anomaly-attention"] .metric.impact-cost,
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace,
.capture-tour-active #app[data-capture-scene="detail-evidence"] .evidence-inline,
.capture-tour-active #app[data-capture-scene="evidence-registry"] .evidence-card,
.capture-tour-active #app[data-capture-scene="home-recovered"] .status-card.recovered{
  position:relative;
  z-index:3;
  animation:wattguardSceneSpot 1.65s cubic-bezier(.2,.72,.22,1) both;
}
.capture-tour-active #app[data-capture-scene="anomaly-start"] .metric-grid .metric:not(.impact-current),
.capture-tour-active #app[data-capture-scene="anomaly-watch"] .metric-grid .metric:not(.impact-delta){
  opacity:.58;
  filter:saturate(.7);
  transform:scale(.985);
}
.capture-tour-active #app[data-capture-scene="anomaly-attention"] .metric.baseline-metric{
  opacity:.62;
}
.capture-tour-active #app[data-capture-scene="anomaly-attention"] .status-card.attention .status-orb{
  animation:wattguardAttentionPulse 1.05s ease-in-out infinite;
}
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace>div:nth-child(2),
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace>div:nth-child(3),
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace>div:nth-child(5){
  animation:wattguardTracePop .5s ease both;
}
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace>div:nth-child(3){animation-delay:.1s}
.capture-tour-active #app[data-capture-scene="detail-top"] .decision-trace>div:nth-child(5){animation-delay:.2s}
@keyframes wattguardSceneSpot{
  0%{transform:scale(.985);box-shadow:0 0 0 0 rgba(181,60,47,0)}
  45%{transform:scale(1.012);box-shadow:0 0 0 4px rgba(181,60,47,.10),0 14px 34px rgba(35,65,55,.12)}
  100%{transform:scale(1);box-shadow:0 10px 28px rgba(35,65,55,.08)}
}
@keyframes wattguardTracePop{
  from{opacity:.55;transform:translateX(-5px)}
  to{opacity:1;transform:translateX(0)}
}
@media(prefers-reduced-motion:reduce){
  .capture-tour-active #app[data-capture-scene] .metric,
  .capture-tour-active #app[data-capture-scene] .impact-loss,
  .capture-tour-active #app[data-capture-scene] .decision-trace,
  .capture-tour-active #app[data-capture-scene] .evidence-inline,
  .capture-tour-active #app[data-capture-scene] .evidence-card{
    animation:none!important;transform:none!important;
  }
}


/* WattGuard intro crossfade v1 */
.capture-splash-inner.capture-stage-enter{
  opacity:0;
  transform:scale(.988);
  filter:brightness(.92);
  transition:
    opacity var(--capture-stage-in,600ms) ease,
    transform var(--capture-stage-in,600ms) cubic-bezier(.2,.7,.2,1),
    filter var(--capture-stage-in,600ms) ease;
}
.capture-splash-inner.capture-stage-enter.capture-stage-show{
  opacity:1;
  transform:scale(1);
  filter:brightness(1);
}
.capture-splash-inner.capture-stage-enter.capture-stage-leave{
  transition:
    opacity var(--capture-stage-out,350ms) ease,
    transform var(--capture-stage-out,350ms) ease,
    filter var(--capture-stage-out,350ms) ease;
  opacity:0;
  transform:scale(.995);
  filter:brightness(.82);
}
.capture-splash-inner.capture-stage-enter .capture-splash-icon{
  animation:none!important;
}
