.header-ticker[data-v-11cdec29]{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#e8e8e8;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:13px}.ticker-inner[data-v-11cdec29]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.ticker-label[data-v-11cdec29]{flex-shrink:0;font-weight:600;color:#a0aec0;margin-right:8px}.ticker-news[data-v-11cdec29]{flex:1;min-width:0;display:flex;align-items:center;overflow:hidden}.news-track-wrap[data-v-11cdec29]{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,black 5%,black 95%,transparent 100%)}.news-track[data-v-11cdec29]{display:flex;gap:24px;animation:scroll-news-11cdec29 60s linear infinite;width:max-content}.news-track--empty[data-v-11cdec29]{animation:none}@keyframes scroll-news-11cdec29{0%{transform:translate(0)}to{transform:translate(-50%)}}.news-item[data-v-11cdec29]{flex-shrink:0;color:#e8e8e8;text-decoration:none;white-space:nowrap;padding:2px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.news-item[data-v-11cdec29]:hover{color:#667eea;border-bottom-color:#667eea}.news-source[data-v-11cdec29]{margin-left:6px;font-size:11px;color:#718096}.news-placeholder[data-v-11cdec29],.commodity-placeholder[data-v-11cdec29]{color:#718096}.ticker-commodities[data-v-11cdec29]{display:flex;align-items:center;flex-shrink:0;flex-wrap:wrap;gap:8px}.commodity-list[data-v-11cdec29]{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px}.commodity-item[data-v-11cdec29]{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.commodity-name[data-v-11cdec29]{color:#a0aec0}.commodity-price[data-v-11cdec29]{font-weight:600;color:#e8e8e8}.commodity-change.up[data-v-11cdec29]{color:#48bb78;font-size:12px}.commodity-change.down[data-v-11cdec29]{color:#f56565;font-size:12px}.commodity-unit[data-v-11cdec29]{font-size:11px;color:#718096}.commodity-sep[data-v-11cdec29]{color:#4a5568;-webkit-user-select:none;user-select:none}.commodity-item--na .commodity-na[data-v-11cdec29]{color:#718096}@media (max-width: 768px){.ticker-inner[data-v-11cdec29]{flex-direction:column;align-items:stretch;gap:12px}.ticker-news[data-v-11cdec29]{order:1}.ticker-commodities[data-v-11cdec29]{order:2}.news-track[data-v-11cdec29]{animation-duration:90s}}.app-footer[data-v-0186378b]{margin-top:auto;padding:20px 0;background:linear-gradient(180deg,#2d3748,#1a202c);color:#ffffffd9;font-size:14px}.footer-inner[data-v-0186378b]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px}.footer-seo-desc[data-v-0186378b]{margin:0;font-size:12px;line-height:1.5;color:#ffffffb3;text-align:center;max-width:640px}.footer-seo-desc strong[data-v-0186378b]{color:#ffffffe6;font-weight:600}.footer-revisit[data-v-0186378b]{margin:0;font-size:13px;color:#fffc}.footer-revisit strong[data-v-0186378b]{color:#fff;font-weight:600}.footer-cat-label[data-v-0186378b]{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;width:100%;margin-top:8px}.footer-cat-label[data-v-0186378b]:first-child{margin-top:0}.footer-info-links[data-v-0186378b]{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;align-items:center}.footer-info-links .footer-link[data-v-0186378b]{font-size:13px;color:#ffffffd9}.footer-links[data-v-0186378b]{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}.footer-link[data-v-0186378b]{color:#ffffffe6;text-decoration:none;transition:color .2s}.footer-link[data-v-0186378b]:hover{color:#fff;text-decoration:underline}.footer-copyright[data-v-0186378b]:hover{text-decoration:none;opacity:.95}.footer-sep[data-v-0186378b]{color:#fff6;-webkit-user-select:none;user-select:none}@media (max-width: 480px){.app-footer[data-v-0186378b]{padding:16px 0;font-size:13px}.footer-links[data-v-0186378b]{gap:8px}.footer-sep[data-v-0186378b]{display:none}.footer-links[data-v-0186378b]{flex-direction:column}}.app-logo[data-v-58cf2d06]{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:700;letter-spacing:-.03em}.app-logo.compact[data-v-58cf2d06]{gap:8px}.app-logo-icon[data-v-58cf2d06]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;color:currentColor}.app-logo.compact .app-logo-icon[data-v-58cf2d06]{width:28px;height:28px}.app-logo-icon svg[data-v-58cf2d06]{width:100%;height:100%;display:block}.app-logo-text[data-v-58cf2d06]{font-size:1.25rem;line-height:1.2;white-space:nowrap}.app-logo:not(.compact) .app-logo-text[data-v-58cf2d06]{font-size:1.375rem}@media (max-width: 600px){.app-logo:not(.compact) .app-logo-text[data-v-58cf2d06]{font-size:1.15rem}}.app-layout[data-v-7c221465]{display:flex;flex-direction:column;min-height:100vh}.kakao-ad-wrap[data-v-7c221465]{display:flex;justify-content:center;align-items:center;width:100%;min-height:90px;background:transparent;margin:0 auto}.kakao-ad-wrap-mobile[data-v-7c221465]{min-height:100px}.navbar[data-v-7c221465]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 0;box-shadow:0 4px 12px #00000026;position:sticky;top:0;z-index:100}.navbar-mobile[data-v-7c221465]{padding:12px 0}.navbar-mobile .logo[data-v-7c221465]{font-size:1.25rem}.navbar-mobile .nav-link[data-v-7c221465]{font-size:14px;padding:6px 12px}.nav-content[data-v-7c221465]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.logo-wrap[data-v-7c221465]{color:inherit;text-decoration:none}.logo[data-v-7c221465]{font-size:28px;font-weight:700;letter-spacing:-.5px;margin:0}.nav-links[data-v-7c221465]{display:flex;gap:32px;align-items:center}.nav-link[data-v-7c221465]{color:#fff;text-decoration:none;font-size:16px;font-weight:500;padding:8px 16px;border-radius:8px;transition:all .3s}.nav-link[data-v-7c221465]:hover{background:#ffffff1a}.nav-link.router-link-active[data-v-7c221465]{background:#fff3;font-weight:600}.nav-btn-download[data-v-7c221465]{padding:8px 16px;border:1px solid rgba(255,255,255,.6);border-radius:8px;background:#ffffff26;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}.nav-btn-download[data-v-7c221465]:hover:not(:disabled){background:#ffffff40;border-color:#fff}.nav-btn-download[data-v-7c221465]:disabled{opacity:.7;cursor:not-allowed}.navbar-mobile .nav-btn-download[data-v-7c221465]{font-size:13px;padding:6px 12px}.main-content[data-v-7c221465]{flex:1;min-height:calc(100vh - 80px)}.app-mobile .main-content[data-v-7c221465]{min-height:100vh}.smp-chart[data-v-68ad2c4b]{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.chart-header[data-v-68ad2c4b]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-header h3[data-v-68ad2c4b]{font-size:20px;font-weight:600}.chart-controls select[data-v-68ad2c4b]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.chart-container[data-v-68ad2c4b]{position:relative;height:400px}.prediction-chart[data-v-18578452]{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.chart-header[data-v-18578452]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-header.header-minimal[data-v-18578452]{margin-bottom:12px}.chart-header.header-minimal h3[data-v-18578452]{display:none}.chart-header h3[data-v-18578452]{font-size:20px;font-weight:600}.chart-legend[data-v-18578452]{display:flex;gap:20px}.legend-item[data-v-18578452]{display:flex;align-items:center;gap:8px;font-size:14px}.legend-color[data-v-18578452]{width:16px;height:16px;border-radius:2px}.legend-color.actual[data-v-18578452]{background-color:#36a2eb}.legend-color.predicted[data-v-18578452]{background-color:#ff6384}.chart-container[data-v-18578452]{position:relative;height:400px}.statistics-panel[data-v-df31a3bb]{background:#fff;border-radius:16px;padding:24px;box-shadow:0 8px 24px #0000001f}.statistics-region-badge[data-v-df31a3bb]{margin:0 0 16px;font-size:14px;font-weight:600;color:#667eea}.stats-tabs[data-v-df31a3bb]{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #f0f0f0}.tab-btn[data-v-df31a3bb]{padding:12px 24px;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:#666;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s}.tab-btn[data-v-df31a3bb]:hover{color:#667eea}.tab-btn.active[data-v-df31a3bb]{color:#667eea;border-bottom-color:#667eea}.stats-content[data-v-df31a3bb]{min-height:400px}.stats-section h3[data-v-df31a3bb]{font-size:20px;font-weight:600;margin-bottom:20px;color:#2c3e50}.section-desc[data-v-df31a3bb]{font-size:14px;color:#666;margin-bottom:16px}.no-data[data-v-df31a3bb]{color:#999;padding:24px;text-align:center}.summary-grid[data-v-df31a3bb]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.summary-card[data-v-df31a3bb]{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px}.summary-label[data-v-df31a3bb]{font-size:13px;color:#666}.summary-value[data-v-df31a3bb]{font-size:18px;font-weight:600;color:#2c3e50}.volatility-chart[data-v-df31a3bb],.hourly-chart[data-v-df31a3bb],.daily-chart[data-v-df31a3bb]{height:300px;margin-bottom:24px}.hourly-table[data-v-df31a3bb]{overflow-x:auto}.hourly-table table[data-v-df31a3bb]{width:100%;border-collapse:collapse}.hourly-table th[data-v-df31a3bb],.hourly-table td[data-v-df31a3bb]{padding:12px;text-align:left;border-bottom:1px solid #eee}.hourly-table th[data-v-df31a3bb]{background:#f8f9fa;font-weight:600;color:#333}.hourly-table tr[data-v-df31a3bb]:hover{background:#f8f9fa}.seasonal-insight[data-v-df31a3bb]{background:linear-gradient(135deg,#f0f4ff,#e8eeff);border-left:4px solid #667eea;padding:14px 18px;border-radius:8px;margin-bottom:24px;font-size:14px;color:#333;line-height:1.5}.seasonal-comparison-chart[data-v-df31a3bb],.seasonal-hourly-chart[data-v-df31a3bb]{margin-bottom:28px}.seasonal-comparison-chart h4[data-v-df31a3bb],.seasonal-hourly-chart h4[data-v-df31a3bb]{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:12px}.seasonal-comparison-chart canvas[data-v-df31a3bb]{height:260px!important}.seasonal-hourly-chart canvas[data-v-df31a3bb]{height:280px!important}.seasonal-grid[data-v-df31a3bb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.seasonal-card[data-v-df31a3bb]{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:24px;color:#fff;text-align:center}.season-icon[data-v-df31a3bb]{font-size:48px;margin-bottom:12px}.seasonal-card h4[data-v-df31a3bb]{font-size:24px;font-weight:600;margin-bottom:20px}.season-no-data[data-v-df31a3bb]{font-size:14px;opacity:.9;margin:0}.season-stats[data-v-df31a3bb]{display:flex;flex-direction:column;gap:12px}.stat-item[data-v-df31a3bb]{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-top:1px solid rgba(255,255,255,.2)}.stat-item[data-v-df31a3bb]:first-child{border-top:none}.stat-label[data-v-df31a3bb]{font-size:14px;opacity:.9}.stat-value[data-v-df31a3bb]{font-size:18px;font-weight:600}.monthly-comparison-chart[data-v-df31a3bb]{margin-bottom:28px}.monthly-comparison-chart h4[data-v-df31a3bb]{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:12px}.monthly-comparison-chart canvas[data-v-df31a3bb]{height:260px!important}.monthly-grid[data-v-df31a3bb]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.monthly-card[data-v-df31a3bb]{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:20px;border:1px solid #eee}.monthly-card h4[data-v-df31a3bb]{font-size:18px;font-weight:600;color:#2c3e50;margin-bottom:16px;text-align:center}.month-no-data[data-v-df31a3bb]{font-size:14px;color:#999;margin:0;text-align:center}.month-stats[data-v-df31a3bb]{display:flex;flex-direction:column;gap:10px}.month-stats .stat-item[data-v-df31a3bb]{border-top:1px solid #eee}.month-stats .stat-label[data-v-df31a3bb]{color:#666}.month-stats .stat-value[data-v-df31a3bb]{color:#2c3e50}.annual-monthly-smp[data-v-4b858747]{margin-top:24px;padding:20px;background:#fff;border-radius:12px;border:1px solid #e2e8f0}.annual-title[data-v-4b858747]{font-size:1.1rem;margin:0 0 8px;color:#2d3748}.annual-desc[data-v-4b858747]{font-size:13px;color:#718096;margin:0 0 16px}.annual-chart-wrap[data-v-4b858747]{height:280px;margin-bottom:16px}.annual-chart-wrap canvas[data-v-4b858747]{max-width:100%}.annual-actions[data-v-4b858747]{margin-bottom:16px}.btn-download-csv[data-v-4b858747]{padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer}.btn-download-csv[data-v-4b858747]:hover{opacity:.9}.annual-table-wrap[data-v-4b858747]{overflow-x:auto}.annual-table[data-v-4b858747]{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}.annual-table th[data-v-4b858747],.annual-table td[data-v-4b858747]{border:1px solid #e2e8f0;padding:6px 10px;text-align:right}.annual-table th[data-v-4b858747]{background:#f7fafc;font-weight:600;color:#2d3748}.annual-table .col-year[data-v-4b858747]{text-align:center;font-weight:500}.annual-table .col-avg[data-v-4b858747]{font-weight:600;background:#f0f4ff}.annual-table tbody tr[data-v-4b858747]:nth-child(2n){background:#fafafa}@media (max-width: 640px){.annual-table[data-v-4b858747]{font-size:12px}.annual-table th[data-v-4b858747],.annual-table td[data-v-4b858747]{padding:4px 6px}}.site-intro-wrap[data-v-d016495f]{position:relative;display:inline-flex;align-items:center;justify-content:center}.site-intro-trigger[data-v-d016495f]{width:22px;height:22px;border-radius:50%;border:1px solid currentColor;background:transparent;color:inherit;font-size:.8125rem;font-weight:700;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;opacity:.85}.site-intro-trigger[data-v-d016495f]:hover{opacity:1;background:#ffffff26}.site-intro-popover[data-v-d016495f]{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;z-index:100;min-width:260px;max-width:320px;padding:14px 16px;background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000026,0 0 1px #0000001a;border:1px solid rgba(0,0,0,.08)}.site-intro-desc[data-v-d016495f]{font-size:.8125rem;color:#475569;line-height:1.5;margin:0 0 10px}.site-intro-desc strong[data-v-d016495f]{color:#334155}.site-intro-desc-sub[data-v-d016495f]{margin-top:6px;font-size:.75rem;color:#64748b}.site-intro-features[data-v-d016495f]{list-style:none;padding:0;margin:0;font-size:.75rem;color:#64748b;line-height:1.6}.site-intro-features li[data-v-d016495f]{margin-bottom:2px}.site-intro-features li[data-v-d016495f]:last-child{margin-bottom:0}.site-intro-pop-enter-active[data-v-d016495f],.site-intro-pop-leave-active[data-v-d016495f]{transition:opacity .2s ease,transform .2s ease}.site-intro-pop-enter-from[data-v-d016495f],.site-intro-pop-leave-to[data-v-d016495f]{opacity:0;transform:translate(-50%) translateY(-4px)}.smp-revenue-calculator[data-v-cb700313]{margin-top:24px;background:#fff;border-radius:12px;padding:16px;box-shadow:0 4px 12px #00000014}.calc-header[data-v-cb700313]{margin-bottom:12px}.smp-revenue-calculator .section-title[data-v-cb700313]{font-size:17px;font-weight:600;color:#1a202c;margin:0 0 2px}.smp-revenue-calculator .section-desc[data-v-cb700313]{font-size:12px;color:#64748b;margin:0;line-height:1.3}.calc-controls[data-v-cb700313]{margin-bottom:12px}.control-row[data-v-cb700313]{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ctrl-label[data-v-cb700313]{font-size:12px;color:#475569;font-weight:500}.date-input[data-v-cb700313]{padding:6px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;min-width:168px;width:168px;box-sizing:border-box}.date-input[data-v-cb700313]:focus{outline:none;border-color:#6366f1}.region-badge[data-v-cb700313]{padding:6px 10px;background:#f1f5f9;border-radius:6px;font-size:12px;font-weight:500;color:#334155}.ctrl-sep[data-v-cb700313]{color:#cbd5e1;font-size:12px;margin:0 2px}.btn-load[data-v-cb700313]{padding:6px 12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer}.btn-load[data-v-cb700313]:hover:not(:disabled){opacity:.95}.btn-load[data-v-cb700313]:disabled{opacity:.7;cursor:not-allowed}.quick-fill-input[data-v-cb700313]{width:64px;padding:5px 8px;border:1px solid #e2e8f0;border-radius:5px;font-size:12px;text-align:right}.btn-quick[data-v-cb700313]{padding:5px 10px;background:#e2e8f0;color:#334155;border:none;border-radius:5px;font-size:11px;cursor:pointer}.btn-quick[data-v-cb700313]:hover{background:#cbd5e1}.smp-error[data-v-cb700313]{margin-top:6px;color:#dc2626;font-size:11px}.calc-table-wrap[data-v-cb700313]{overflow:auto;margin-bottom:12px;max-height:280px;border:1px solid #e2e8f0;border-radius:8px}.calc-table[data-v-cb700313]{width:100%;border-collapse:collapse;font-size:12px}.calc-table th[data-v-cb700313],.calc-table td[data-v-cb700313]{padding:4px 8px;text-align:right;border-bottom:1px solid #f1f5f9}.calc-table th[data-v-cb700313]:first-child,.calc-table td[data-v-cb700313]:first-child{text-align:left;font-weight:500;color:#334155;min-width:44px;width:44px;white-space:nowrap}.hour-cell[data-v-cb700313]{white-space:nowrap}.calc-table th[data-v-cb700313]{background:#f8fafc;color:#475569;font-weight:600;position:sticky;top:0;z-index:1}.smp-cell[data-v-cb700313]{color:#64748b}.gen-input[data-v-cb700313]{width:100%;min-width:52px;max-width:72px;padding:3px 6px;border:1px solid #e2e8f0;border-radius:4px;font-size:11px;text-align:right}.gen-input[data-v-cb700313]:focus{outline:none;border-color:#6366f1}.amount-cell[data-v-cb700313]{font-weight:500;color:#0f172a;min-width:56px}.calc-total[data-v-cb700313]{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:10px 14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:8px}.total-label[data-v-cb700313]{font-size:13px;font-weight:600}.total-value[data-v-cb700313]{font-size:17px;font-weight:700}@media (max-width: 768px){.smp-revenue-calculator[data-v-cb700313]{padding:12px}.calc-table-wrap[data-v-cb700313]{max-height:240px}.calc-table th[data-v-cb700313],.calc-table td[data-v-cb700313]{padding:3px 6px;font-size:11px}.gen-input[data-v-cb700313]{min-width:44px;font-size:11px}}.today-smp-summary[data-v-25c902dc]{background:#fff;border-radius:8px;padding:18px 22px;margin-bottom:24px;border:1px solid #e6e8f1;box-shadow:0 14px 34px #2225380f;min-height:56px}.summary-line[data-v-25c902dc]{margin:0 0 6px;font-size:1rem;color:#2d3147;line-height:1.5}.summary-label[data-v-25c902dc]{font-weight:800;margin-right:6px}.summary-value[data-v-25c902dc]{font-weight:800}.summary-sep[data-v-25c902dc]{color:#a0a5b6;margin:0 6px}.summary-interp[data-v-25c902dc]{color:#7b8195;font-size:.95em;font-weight:700;margin-left:4px}.summary-sub[data-v-25c902dc]{margin:0 0 10px;font-size:.9rem;color:#7b8195;font-weight:700}.summary-cta[data-v-25c902dc]{display:inline-block;font-size:.9rem;font-weight:800;color:#6a45e8;text-decoration:none;padding:6px 14px;background:#f2f1ff;border-radius:8px;border:1px solid #e3defe;transition:background .2s}.summary-cta[data-v-25c902dc]:hover{background:#ebe7ff}.rec-brief-card[data-v-163d6bb3]{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:14px;padding:20px 24px;margin-top:24px}.rec-title[data-v-163d6bb3]{font-size:1rem;font-weight:700;color:#065f46;margin:0 0 12px}.rec-loading[data-v-163d6bb3],.rec-placeholder[data-v-163d6bb3],.rec-data[data-v-163d6bb3]{font-size:.9rem;color:#047857}.rec-message[data-v-163d6bb3]{margin:0 0 12px;line-height:1.5}.rec-summary[data-v-163d6bb3]{margin:0 0 12px}.rec-link[data-v-163d6bb3]{display:inline-block;font-weight:600;color:#047857;text-decoration:none}.rec-link[data-v-163d6bb3]:hover{text-decoration:underline}.dashboard[data-v-69b3844d]{padding:0;background:radial-gradient(circle at 25% 0%,rgba(40,124,255,.18),transparent 32%),linear-gradient(180deg,#05070b,#0a0d13 42%,#eef4ff 42%,#f4f8ff);min-height:100vh}.container[data-v-69b3844d]{max-width:1360px;margin:0 auto;padding:34px 24px 48px}.market-hero[data-v-69b3844d]{position:relative;overflow:hidden;margin-bottom:18px;padding:22px;border:1px solid rgba(167,194,255,.46);border-radius:26px;background:linear-gradient(135deg,#fffffff5,#ebf3fffa 52%,#f2f7fff0);box-shadow:0 30px 90px #00000052}.market-hero[data-v-69b3844d]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 82% 12%,rgba(69,146,255,.22),transparent 28%),linear-gradient(90deg,rgba(255,255,255,.36),transparent 62%)}.market-hero[data-v-69b3844d]>*{position:relative;z-index:1}.hero-nav[data-v-69b3844d]{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.brand-mark[data-v-69b3844d],.hero-tabs[data-v-69b3844d],.hero-tools[data-v-69b3844d]{display:inline-flex;align-items:center}.brand-mark[data-v-69b3844d]{gap:9px;color:#121826;font-size:18px;font-weight:800}.brand-symbol[data-v-69b3844d]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(135deg,#1f8fff,#5f7cff);color:#fff;font-size:15px}.hero-tabs[data-v-69b3844d]{gap:6px;padding:5px;border:1px solid rgba(180,196,220,.7);border-radius:999px;background:#ffffffc7}.hero-tab[data-v-69b3844d]{min-width:76px;padding:8px 14px;border-radius:999px;color:#526071;font-size:13px;font-weight:700;text-align:center;text-decoration:none}.hero-tab.active[data-v-69b3844d],.hero-tab[data-v-69b3844d]:hover{background:#2f86ff;color:#fff}.hero-tools[data-v-69b3844d]{gap:10px}.tool-chip[data-v-69b3844d]{padding:8px 12px;border:1px solid rgba(180,196,220,.7);border-radius:999px;background:#ffffffc2;color:#526071;font-size:12px;font-weight:700}.tool-dot[data-v-69b3844d]{width:12px;height:12px;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 6px #94a3b829}.tool-dot.status-ok[data-v-69b3844d]{background:#22c55e;box-shadow:0 0 0 6px #22c55e29}.tool-dot.status-warn[data-v-69b3844d]{background:#f59e0b;box-shadow:0 0 0 6px #f59e0b29}.tool-dot.status-err[data-v-69b3844d]{background:#ef4444;box-shadow:0 0 0 6px #ef444429}.hero-grid[data-v-69b3844d]{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:24px;align-items:stretch}.hero-copy[data-v-69b3844d]{display:flex;min-height:500px;flex-direction:column;justify-content:space-between;padding:18px 6px 10px 0}.eyebrow[data-v-69b3844d]{margin-bottom:12px;color:#2f86ff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.page-title[data-v-69b3844d]{margin:0 0 12px;color:#101828;font-size:42px;font-weight:800;line-height:1.02;letter-spacing:0}.page-title-with-intro .site-intro-trigger[data-v-69b3844d]{color:#4c5d73;border-color:#8299b880}.page-subtitle[data-v-69b3844d]{max-width:460px;margin:0;color:#506177;font-size:16px;font-weight:600;line-height:1.55}.page-vision[data-v-69b3844d],.page-desc[data-v-69b3844d]{display:none}.region-toggle[data-v-69b3844d]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:28px}.region-label[data-v-69b3844d]{width:100%;color:#8b9ab0;font-size:12px;font-weight:800;text-transform:uppercase}.region-btn[data-v-69b3844d]{padding:10px 18px;border:1px solid rgba(179,197,224,.86);border-radius:999px;background:#ffffffc2;color:#44556b;cursor:pointer;font-size:14px;font-weight:800}.region-btn[data-v-69b3844d]:hover{background:#eef6ff}.region-btn.active[data-v-69b3844d]{background:#2f86ff;border-color:#2f86ff;color:#fff;box-shadow:0 10px 24px #2f86ff47}.hero-condition-row[data-v-69b3844d]{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.condition-pill[data-v-69b3844d]{min-width:126px;padding:12px 14px;border:1px solid rgba(179,197,224,.7);border-radius:18px;background:#ffffffb8}.condition-label[data-v-69b3844d]{display:block;margin-bottom:5px;color:#8b9ab0;font-size:11px;font-weight:800}.condition-pill strong[data-v-69b3844d]{display:block;min-width:0;color:#152133;font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-board[data-v-69b3844d]{display:grid;grid-template-columns:1.1fr .68fr .68fr;grid-auto-rows:minmax(132px,auto);gap:14px}.feature-card[data-v-69b3844d],.metric-tile[data-v-69b3844d]{border:1px solid rgba(190,206,229,.72);border-radius:24px;background:#ffffffe0;box-shadow:0 18px 44px #5b7ca524}.feature-card[data-v-69b3844d]{padding:20px}.feature-card-top[data-v-69b3844d]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.feature-card-top span[data-v-69b3844d]{color:#182438;font-size:15px;font-weight:800}.feature-card-top small[data-v-69b3844d]{padding:6px 9px;border-radius:999px;background:#f2f6fb;color:#75849a;font-size:11px;font-weight:800}.smp-main-card[data-v-69b3844d]{grid-row:span 3;min-height:430px;color:#fff;background:linear-gradient(180deg,#1c7cff61,#0e3681b8),linear-gradient(135deg,#2087ff,#0d3e9a)}.smp-main-card .feature-card-top span[data-v-69b3844d],.smp-main-card .feature-card-top small[data-v-69b3844d],.smp-main-card p[data-v-69b3844d]{color:#ffffffe6}.smp-main-card .feature-card-top small[data-v-69b3844d]{background:#ffffff29}.smp-price-line[data-v-69b3844d]{margin-top:58px}.smp-price-line strong[data-v-69b3844d]{display:block;font-size:clamp(52px,7vw,88px);font-weight:800;line-height:.95;letter-spacing:0}.smp-price-line span[data-v-69b3844d]{display:block;margin-top:10px;font-size:16px;font-weight:800;opacity:.84}.smp-wave[data-v-69b3844d]{display:flex;align-items:end;gap:7px;height:92px;margin:46px 0 24px}.smp-wave span[data-v-69b3844d]{flex:1;max-width:12px;border-radius:999px;background:#ffffff6b}.smp-main-card p[data-v-69b3844d]{margin:0;font-size:14px;font-weight:700;line-height:1.5}.metric-tile[data-v-69b3844d]{display:flex;flex-direction:column;justify-content:center;min-height:132px;padding:18px}.metric-label[data-v-69b3844d]{color:#7c8da4;font-size:12px;font-weight:800}.metric-tile strong[data-v-69b3844d]{margin-top:12px;color:#172133;font-size:34px;font-weight:800;line-height:1}.metric-tile small[data-v-69b3844d]{margin-top:8px;color:#91a0b4;font-size:12px;font-weight:700}.forecast-card[data-v-69b3844d]{grid-column:span 2}.forecast-metrics[data-v-69b3844d]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.forecast-metrics div[data-v-69b3844d]{min-width:0;padding:14px;border-radius:18px;background:#f5f8fd}.forecast-metrics span[data-v-69b3844d]{display:block;color:#8a99ae;font-size:11px;font-weight:800}.forecast-metrics strong[data-v-69b3844d]{display:block;margin-top:8px;color:#1f84ff;font-size:24px;font-weight:800;line-height:1}.forecast-empty[data-v-69b3844d]{padding:24px 0;color:#8090a6;font-size:14px;font-weight:700}.supply-card[data-v-69b3844d]{grid-column:span 2;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px}.supply-card .feature-card-top[data-v-69b3844d]{grid-column:1 / -1;margin-bottom:0}.reserve-ring[data-v-69b3844d]{width:108px;height:108px;border-radius:50%;background:radial-gradient(circle at center,#ffffff 58%,transparent 60%),conic-gradient(#2f86ff 0,#2f86ff 72%,#dce8f8 72%,#dce8f8);display:flex;flex-direction:column;align-items:center;justify-content:center}.reserve-ring strong[data-v-69b3844d]{color:#142033;font-size:24px;font-weight:800}.reserve-ring span[data-v-69b3844d]{color:#8393aa;font-size:11px;font-weight:800}.mini-supply-list[data-v-69b3844d]{display:flex;flex-direction:column;gap:10px}.mini-supply-list span[data-v-69b3844d]{color:#526178;font-size:13px;font-weight:800}.today-summary-card[data-v-69b3844d]{margin-bottom:18px}.power-supply-section[data-v-69b3844d]{margin-top:40px}.power-supply-card[data-v-69b3844d]{background:linear-gradient(180deg,#fff,#f8fafc);border-radius:20px;padding:36px 40px;box-shadow:0 4px 24px #00000014,0 0 0 1px #0000000a}.power-supply-header[data-v-69b3844d]{margin-bottom:28px}.power-supply-header .section-title[data-v-69b3844d]{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0 0 8px;letter-spacing:-.02em}.power-supply-header .section-desc[data-v-69b3844d]{font-size:.9rem;color:#64748b;margin:0}.ps-loading[data-v-69b3844d]{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#64748b;font-size:15px}.ps-loading-spinner[data-v-69b3844d]{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;animation:ps-spin-69b3844d .8s linear infinite}@keyframes ps-spin-69b3844d{to{transform:rotate(360deg)}}.ps-empty[data-v-69b3844d]{padding:48px 24px;text-align:center;color:#64748b;font-size:15px}.ps-realtime-block[data-v-69b3844d]{margin-bottom:32px;padding:24px 0;border-bottom:1px solid #e2e8f0}.ps-subtitle[data-v-69b3844d]{font-size:1rem;font-weight:600;color:#475569;margin:0 0 16px;letter-spacing:-.01em}.ps-metrics-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 900px){.ps-metrics-grid[data-v-69b3844d]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.ps-metrics-grid[data-v-69b3844d]{grid-template-columns:1fr}}.ps-metric-card[data-v-69b3844d]{padding:20px;border-radius:14px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 8px #0000000f}.ps-metric-supply[data-v-69b3844d]{background:#f0f9ff;border-left:4px solid #0ea5e9}.ps-metric-demand[data-v-69b3844d]{background:#fef3c7;border-left:4px solid #f59e0b}.ps-metric-reserve[data-v-69b3844d]{background:#ecfdf5;border-left:4px solid #10b981}.ps-metric-ratio[data-v-69b3844d]{background:#f5f3ff;border-left:4px solid #8b5cf6}.ps-metric-label[data-v-69b3844d]{font-size:.8rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.ps-metric-value[data-v-69b3844d]{font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:-.02em;line-height:1.2}.ps-metric-value small[data-v-69b3844d]{font-size:.75rem;font-weight:500;color:#64748b;margin-left:2px}.ps-datetime[data-v-69b3844d]{margin:16px 0 0;font-size:.85rem;color:#94a3b8}.ps-history-block[data-v-69b3844d]{padding-top:24px}.ps-history-table-wrap[data-v-69b3844d]{overflow-x:auto;border-radius:12px;border:1px solid #e2e8f0}.ps-history-table[data-v-69b3844d]{width:100%;border-collapse:collapse;font-size:.9rem}.ps-history-table th[data-v-69b3844d],.ps-history-table td[data-v-69b3844d]{padding:14px 16px;text-align:left;border-bottom:1px solid #f1f5f9}.ps-history-table thead th[data-v-69b3844d]{background:#f8fafc;font-weight:600;color:#475569;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.ps-history-table tbody tr[data-v-69b3844d]:hover{background:#f8fafc}.ps-history-table tbody tr:last-child td[data-v-69b3844d]{border-bottom:none}.ps-history-date[data-v-69b3844d]{font-weight:500;color:#334155;white-space:nowrap}.pillar-quick-links[data-v-69b3844d]{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 16px;margin-top:32px}.pillar-quick-links .pillar-link[data-v-69b3844d]{display:inline-block;padding:10px 18px;border-radius:10px;background:#fff3;color:#fff;text-decoration:none;font-size:14px;font-weight:500;border:1px solid rgba(255,255,255,.3);transition:background .2s,border-color .2s}.pillar-quick-links .pillar-link[data-v-69b3844d]:hover{background:#ffffff4d;border-color:#ffffff80}.smp-info-section[data-v-69b3844d]{margin-top:40px;padding:28px 24px 32px;border-radius:20px;background:#0f172aeb;box-shadow:0 18px 45px #0f172ab3;color:#e5e7eb}.smp-info-section .section-title[data-v-69b3844d]{margin:0 0 10px;color:#e5e7eb}.smp-info-section .section-desc[data-v-69b3844d]{margin:0 0 18px;color:#cbd5f5;font-size:.95rem;line-height:1.6}.smp-info-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.smp-info-card[data-v-69b3844d]{background:#0f172ad9;border-radius:14px;padding:14px 16px 16px;border:1px solid rgba(148,163,184,.4)}.smp-info-card h3[data-v-69b3844d]{margin:0 0 8px;font-size:1rem;color:#e5e7eb}.smp-info-card p[data-v-69b3844d]{margin:0;font-size:.9rem}.smp-info-section .smp-info-more[data-v-69b3844d]{margin:18px 0 0;font-size:.9rem;color:#cbd5f5;line-height:1.5}.smp-info-section .smp-info-more a[data-v-69b3844d]{color:#a5b4fc;text-decoration:none}.smp-info-section .smp-info-more a[data-v-69b3844d]:hover{text-decoration:underline;color:#cbd5f5}@media (max-width: 768px){.smp-info-section[data-v-69b3844d]{padding:20px 16px 24px}}.page-title[data-v-69b3844d]{font-size:34px;font-weight:700;margin-bottom:8px;color:#0f172a;text-shadow:none;letter-spacing:0}.page-title-with-intro[data-v-69b3844d]{display:inline-flex;align-items:center;gap:10px}.page-title-with-intro .site-intro-wrap[data-v-69b3844d]{vertical-align:middle}.page-title-with-intro .site-intro-trigger[data-v-69b3844d]{color:#475569;border-color:#cbd5e1}.page-subtitle[data-v-69b3844d]{font-size:16px;color:#334155;font-weight:500}.page-vision[data-v-69b3844d]{font-size:13px;color:#475569;font-weight:400;margin:4px 0 0;padding:0;display:inline-block;background:transparent;border-radius:0}.page-desc[data-v-69b3844d]{font-size:14px;color:#64748b;font-weight:400;margin:4px 0 0;max-width:560px}.stats-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:24px;min-height:140px}.stat-card[data-v-69b3844d]{background:#fff;border-radius:8px;padding:20px;box-shadow:none;border:1px solid #dbe1e8;display:flex;align-items:center;gap:20px;transition:transform .3s,box-shadow .3s}.stat-card[data-v-69b3844d]:hover{transform:none;box-shadow:0 2px 8px #0f172a0f}.stat-icon[data-v-69b3844d]{font-size:24px;line-height:1;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:#f1f5f9}.stat-content[data-v-69b3844d]{flex:1}.stat-label[data-v-69b3844d]{font-size:14px;color:#64748b;margin-bottom:8px;font-weight:500}.stat-value[data-v-69b3844d]{font-size:28px;font-weight:700;color:#0f172a;line-height:1.2}.stat-unit[data-v-69b3844d]{font-size:12px;color:#999;margin-top:4px}.rating-section[data-v-69b3844d]{margin-bottom:40px}.rating-section .section-title[data-v-69b3844d]{color:#0f172a;margin-bottom:16px}.rating-card[data-v-69b3844d]{background:#fff;border-radius:8px;padding:24px 28px;box-shadow:none;border:1px solid #dbe1e8;border-left:6px solid #94a3b8}.rating-card.rating-level-5[data-v-69b3844d]{border-left-color:#16a34a;background:#f0fdf4}.rating-card.rating-level-4[data-v-69b3844d]{border-left-color:#65a30d;background:#f7fee7}.rating-card.rating-level-3[data-v-69b3844d]{border-left-color:#ca8a04;background:#fefce8}.rating-card.rating-level-2[data-v-69b3844d]{border-left-color:#ea580c;background:#fff7ed}.rating-card.rating-level-1[data-v-69b3844d]{border-left-color:#dc2626;background:#fef2f2}.rating-badge[data-v-69b3844d]{display:flex;align-items:center;gap:12px;margin-bottom:12px}.rating-level-num[data-v-69b3844d]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;font-size:1.25rem;font-weight:800;color:#fff;background:#64748b}.rating-level-5 .rating-level-num[data-v-69b3844d]{background:#22c55e}.rating-level-4 .rating-level-num[data-v-69b3844d]{background:#84cc16}.rating-level-3 .rating-level-num[data-v-69b3844d]{background:#eab308}.rating-level-2 .rating-level-num[data-v-69b3844d]{background:#f97316}.rating-level-1 .rating-level-num[data-v-69b3844d]{background:#ef4444}.rating-label[data-v-69b3844d]{font-size:1.25rem;font-weight:700;color:#1e293b}.rating-desc[data-v-69b3844d]{font-size:.95rem;color:#475569;margin:0 0 12px;line-height:1.5}.rating-details[data-v-69b3844d]{display:flex;flex-wrap:wrap;gap:16px;font-size:.8125rem;color:#64748b}.rating-detail[data-v-69b3844d]{padding:4px 10px;background:#0000000d;border-radius:8px}.rating-analysis[data-v-69b3844d]{margin-top:20px;padding-top:20px;border-top:1px solid rgba(0,0,0,.08)}.rating-analysis-title[data-v-69b3844d]{font-size:.9375rem;font-weight:600;color:#334155;margin:0 0 12px}.rating-analysis-table[data-v-69b3844d]{width:100%;border-collapse:collapse;font-size:.875rem}.rating-analysis-table th[data-v-69b3844d],.rating-analysis-table td[data-v-69b3844d]{padding:8px 12px;text-align:left;border-bottom:1px solid rgba(0,0,0,.06)}.rating-analysis-table th[data-v-69b3844d]{color:#64748b;font-weight:600}.rating-analysis-table td[data-v-69b3844d]{color:#1e293b}.rating-analysis-note[data-v-69b3844d]{font-size:.8125rem;color:#64748b;margin:12px 0 0;line-height:1.5}.stat-primary .stat-value[data-v-69b3844d]{color:#667eea}.stat-info .stat-value[data-v-69b3844d]{color:#17a2b8}.stat-success .stat-value[data-v-69b3844d]{color:#28a745}.stat-warning .stat-value[data-v-69b3844d]{color:#ffc107}.stat-forecast .stat-value[data-v-69b3844d]{color:#9f7aea}.comparison-chart-wrap[data-v-69b3844d]{margin-top:8px}.comparison-chart-wrap .chart-desc[data-v-69b3844d]{font-size:.9rem;color:#64748b;margin:0 0 16px}.comparison-loading[data-v-69b3844d]{padding:48px 24px;text-align:center;color:#64748b;font-size:.95rem}.comparison-empty[data-v-69b3844d]{padding:32px 24px;background:#f8fafc;border-radius:12px;color:#64748b}.comparison-empty-content[data-v-69b3844d]{max-width:480px;margin:0 auto;text-align:center}.comparison-empty-main[data-v-69b3844d]{margin:0 0 8px;font-size:1rem;font-weight:500;color:#475569}.comparison-empty-hint[data-v-69b3844d]{font-size:.875rem!important;color:#94a3b8!important;margin:0 0 20px!important}.comparison-quick-stats[data-v-69b3844d]{margin:20px 0;padding:16px 20px;background:#fff;border-radius:10px;border:1px solid #e2e8f0;text-align:left}.comparison-quick-stats h4[data-v-69b3844d]{margin:0 0 12px;font-size:.9rem;color:#64748b;font-weight:600}.quick-stats-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 400px){.quick-stats-grid[data-v-69b3844d]{grid-template-columns:1fr}}.quick-stat[data-v-69b3844d]{display:flex;flex-direction:column;gap:4px}.quick-stat-label[data-v-69b3844d]{font-size:.75rem;color:#94a3b8;text-transform:uppercase}.quick-stat-value[data-v-69b3844d]{font-size:1rem;font-weight:600;color:#1e293b}.comparison-empty-link[data-v-69b3844d]{display:inline-block;margin-top:16px;font-size:.9rem;font-weight:600;color:#667eea;text-decoration:none}.comparison-empty-link[data-v-69b3844d]:hover{text-decoration:underline}.forecast-price-table-wrap[data-v-69b3844d]{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.forecast-price-table-wrap h4[data-v-69b3844d]{font-size:14px;color:#64748b;margin:0 0 12px;font-weight:600}.forecast-price-scroll[data-v-69b3844d]{overflow-x:auto;max-height:240px;overflow-y:auto}.forecast-price-table[data-v-69b3844d]{width:100%;border-collapse:collapse;font-size:13px}.forecast-price-table th[data-v-69b3844d],.forecast-price-table td[data-v-69b3844d]{padding:8px 12px;text-align:left;border-bottom:1px solid #e2e8f0}.forecast-price-table th[data-v-69b3844d]{background:#f8fafc;color:#64748b;font-weight:600}.forecast-price-table td[data-v-69b3844d]:last-child{font-weight:500;color:#1e293b}.charts-section[data-v-69b3844d]{display:flex;flex-direction:column;gap:24px;margin-bottom:24px;min-height:380px}@media (min-width: 1200px){.charts-section[data-v-69b3844d]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:24px}.charts-section .chart-container[data-v-69b3844d]{min-width:0}.charts-section .chart-container[data-v-69b3844d]:first-child,.charts-section .chart-container[data-v-69b3844d]:nth-child(2){min-height:420px}.charts-section .comparison-chart-wrap[data-v-69b3844d]{grid-column:1 / -1;min-height:320px}}.chart-container[data-v-69b3844d]{background:#fff;border-radius:8px;padding:24px;box-shadow:none;border:1px solid #dbe1e8;min-height:280px;width:100%}.chart-container.full-width[data-v-69b3844d]{grid-column:unset}.chart-header-simple[data-v-69b3844d]{display:block;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.chart-header-simple .chart-title-full[data-v-69b3844d]{width:100%;margin-bottom:12px}.chart-header-simple .chart-controls[data-v-69b3844d]{display:flex;gap:8px;flex-wrap:wrap}.chart-header-stacked[data-v-69b3844d]{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.chart-title-full[data-v-69b3844d]{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0 0 12px;width:100%;word-break:keep-all;overflow-wrap:break-word;letter-spacing:0}.chart-header-stacked .chart-title-full[data-v-69b3844d]{margin-bottom:12px}.chart-meta-row[data-v-69b3844d]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.chart-canvas-wrap[data-v-69b3844d]{position:relative;width:100%;min-height:320px}.chart-canvas-wrap[data-v-69b3844d] .smp-chart,.chart-canvas-wrap[data-v-69b3844d] .prediction-chart{width:100%}.chart-canvas-wrap[data-v-69b3844d] .chart-container{height:360px}.chart-header-right[data-v-69b3844d]{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.btn-download-forecast[data-v-69b3844d]{padding:8px 16px;background:#0f172a;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;white-space:nowrap;box-shadow:none}.btn-download-forecast[data-v-69b3844d]:hover:not(:disabled){transform:none;background:#1e293b;box-shadow:none}.btn-download-forecast[data-v-69b3844d]:disabled{opacity:.6;cursor:not-allowed}.forecast-download-group[data-v-69b3844d]{display:flex;align-items:center;gap:8px}.format-select[data-v-69b3844d]{padding:8px 12px;border-radius:8px;border:1px solid #e2e8f0;font-size:.9rem;background:#fff}.confidence-badge[data-v-69b3844d]{background:#10b98133;color:#047857}.chart-controls[data-v-69b3844d]{display:flex;gap:8px}.period-btn[data-v-69b3844d]{padding:8px 16px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;font-size:14px;transition:all .3s}.period-btn[data-v-69b3844d]:hover{background:#f8f9fa}.period-btn.active[data-v-69b3844d]{background:#0f172a;color:#fff;border-color:#0f172a}.chart-info[data-v-69b3844d]{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;min-width:0}.info-badge[data-v-69b3844d]{padding:6px 12px;background:#f0f0f0;border-radius:6px;font-size:12px;color:#666}.info-badge.forecast-target[data-v-69b3844d]{font-weight:600;color:#333}.forecast-caption[data-v-69b3844d]{margin:6px 0 0;font-size:12px;color:#666;flex-basis:100%}.statistics-section[data-v-69b3844d]{margin-top:40px}.statistics-section .section-desc[data-v-69b3844d]{font-size:14px;color:#ffffffe6;margin-top:4px;margin-bottom:16px}.calculator-section[data-v-69b3844d],.weekly-reports-section[data-v-69b3844d]{margin-top:40px}.weekly-reports-card[data-v-69b3844d]{background:linear-gradient(180deg,#fff,#f8fafc);border-radius:20px;padding:28px 32px;box-shadow:0 4px 24px #00000014,0 0 0 1px #0000000a}.weekly-reports-header[data-v-69b3844d]{margin-bottom:16px}.weekly-reports-title-row[data-v-69b3844d]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.weekly-reports-header .section-title[data-v-69b3844d]{font-size:1.35rem;font-weight:700;color:#1e293b;margin:0}.weekly-reports-header .section-desc[data-v-69b3844d]{font-size:.9rem;color:#64748b;margin:0}.revisit-hint[data-v-69b3844d]{color:#6366f1;font-weight:500}.weekly-reports-more[data-v-69b3844d]{font-size:.9rem;font-weight:500;color:#6366f1;text-decoration:none;white-space:nowrap}.weekly-reports-more[data-v-69b3844d]:hover{text-decoration:underline}.weekly-reports-loading[data-v-69b3844d],.weekly-reports-empty[data-v-69b3844d]{color:#64748b;font-size:.95rem;padding:12px 0}.weekly-reports-list[data-v-69b3844d]{list-style:none;margin:0;padding:0}.weekly-report-item[data-v-69b3844d]{border-bottom:1px solid #e2e8f0}.weekly-report-item[data-v-69b3844d]:last-child{border-bottom:none}.weekly-report-link[data-v-69b3844d]{display:block;text-decoration:none;color:inherit;transition:background .15s;border-radius:8px;margin:0 -8px;padding:12px 8px}.weekly-report-link[data-v-69b3844d]:hover{background:#6366f114}.weekly-report-title[data-v-69b3844d]{display:block;font-weight:600;color:#1e293b;margin-bottom:4px}.weekly-report-meta[data-v-69b3844d]{font-size:.85rem;color:#64748b}.download-section[data-v-69b3844d]{margin-top:40px}.section-title[data-v-69b3844d]{font-size:24px;font-weight:600;color:#fff;margin-bottom:8px}.download-card[data-v-69b3844d]{background:#fff;border-radius:16px;padding:32px;box-shadow:0 8px 24px #0000001f}.download-header[data-v-69b3844d]{margin-bottom:24px;text-align:center}.download-description[data-v-69b3844d]{font-size:14px;color:#666;margin-top:8px}.download-controls[data-v-69b3844d]{max-width:800px;margin:0 auto}.download-controls .date-range-selector[data-v-69b3844d]{display:flex;gap:16px;align-items:flex-end;margin-bottom:16px;flex-wrap:wrap}.download-controls .date-input-group[data-v-69b3844d]{flex:1;min-width:200px}.download-controls .date-input-group label[data-v-69b3844d]{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.download-controls .date-input[data-v-69b3844d]{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;box-sizing:border-box}.download-controls .date-input[data-v-69b3844d]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-download[data-v-69b3844d]{padding:12px 24px;background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;white-space:nowrap}.btn-download[data-v-69b3844d]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #11998e66}.btn-download[data-v-69b3844d]:disabled{opacity:.6;cursor:not-allowed}.download-info[data-v-69b3844d]{text-align:center;margin-top:16px}.download-info p[data-v-69b3844d]{font-size:12px;color:#999;margin:0}.loading-overlay[data-v-69b3844d]{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;color:#fff}.loading-spinner[data-v-69b3844d]{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-69b3844d 1s linear infinite;margin-bottom:16px}@keyframes spin-69b3844d{to{transform:rotate(360deg)}}.error-message[data-v-69b3844d]{background:#f8d7da;color:#721c24;padding:16px 20px;border-radius:8px;margin-top:24px;display:flex;align-items:center;gap:12px}.error-icon[data-v-69b3844d]{font-size:20px}.dashboard[data-v-69b3844d]{background:#f6f6fa}.container[data-v-69b3844d]{max-width:1220px}.dataviz-hero[data-v-69b3844d]{padding:0 0 26px;border:0;border-radius:0;background:transparent;box-shadow:none}.dataviz-hero[data-v-69b3844d]:before{display:none}.dataviz-topbar[data-v-69b3844d]{min-height:56px;margin:0 0 28px;padding:0 18px;border-radius:0 0 10px 10px;background:linear-gradient(135deg,#6a40f6,#7747f5 52%,#6240db);box-shadow:0 12px 30px #6741e638}.dataviz-topbar .brand-mark[data-v-69b3844d],.dataviz-topbar .hero-tab[data-v-69b3844d],.dataviz-topbar .tool-chip[data-v-69b3844d]{color:#fff}.dataviz-topbar .brand-symbol[data-v-69b3844d]{background:#ffffff2e;box-shadow:inset 0 0 0 1px #fff3}.dataviz-topbar .hero-tabs[data-v-69b3844d]{border:0;background:#ffffff1a}.dataviz-topbar .hero-tab[data-v-69b3844d]{min-width:88px;opacity:.78}.dataviz-topbar .hero-tab.active[data-v-69b3844d],.dataviz-topbar .hero-tab[data-v-69b3844d]:hover{background:#fff3;opacity:1}.dataviz-topbar .tool-chip[data-v-69b3844d]{border-color:#fff3;background:#ffffff1f}.dashboard-command[data-v-69b3844d]{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px;padding:28px 30px;border:1px solid #eeeef5;border-radius:10px;background:#fff;box-shadow:0 14px 34px #2225380f}.dashboard-command .eyebrow[data-v-69b3844d]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;color:#8b8fa3;font-size:12px;font-weight:700;text-transform:none}.dashboard-meta[data-v-69b3844d],.dashboard-status[data-v-69b3844d]{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:#f6f5ff;color:#6a45e8;font-size:11px;font-weight:800}.dashboard-status[data-v-69b3844d]:before{content:"";width:7px;height:7px;margin-right:6px;border-radius:50%;background:#94a3b8}.dashboard-status.status-ok[data-v-69b3844d]:before{background:#22c55e}.dashboard-status.status-warn[data-v-69b3844d]:before{background:#f59e0b}.dashboard-status.status-err[data-v-69b3844d]:before{background:#ef4444}.dashboard-command .page-title[data-v-69b3844d]{margin-bottom:8px;color:#232538;font-size:26px;font-weight:800}.dashboard-command .page-subtitle[data-v-69b3844d]{max-width:640px;color:#8d91a3;font-size:13px;font-weight:600}.data-status-line[data-v-69b3844d]{margin:10px 0 0;color:#6f45ed;font-size:12px;font-weight:800}.dashboard-actions[data-v-69b3844d]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.dashboard-actions .region-toggle[data-v-69b3844d]{width:auto;margin-top:0;padding:5px;border-radius:8px;background:#f7f7fb;box-shadow:none}.dashboard-actions .region-label[data-v-69b3844d]{width:auto;padding:9px 8px 9px 10px;color:#989caf;text-transform:none}.dashboard-actions .region-btn[data-v-69b3844d]{padding:9px 14px;border:0;border-radius:7px;background:transparent;color:#656b80}.dashboard-actions .region-btn.active[data-v-69b3844d]{background:#6b45ee;color:#fff;box-shadow:0 8px 18px #6b45ee38}.report-button[data-v-69b3844d]{min-height:44px;padding:0 18px;border:0;border-radius:7px;background:#f7f7fb;color:#34384f;font-size:13px;font-weight:800;box-shadow:none;cursor:pointer}.report-button[data-v-69b3844d]:disabled{opacity:.55;cursor:not-allowed}.kpi-strip[data-v-69b3844d]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-bottom:26px}.kpi-card[data-v-69b3844d]{min-height:118px;padding:20px 22px;border-radius:8px;color:#fff;box-shadow:0 18px 36px #262c461f}.kpi-card small[data-v-69b3844d],.kpi-card em[data-v-69b3844d]{display:block;font-style:normal;opacity:.82}.kpi-card small[data-v-69b3844d]{margin-top:12px;font-size:12px;font-weight:700}.kpi-card strong[data-v-69b3844d]{display:block;margin-top:10px;font-size:30px;font-weight:800;line-height:1}.kpi-card em[data-v-69b3844d]{margin-top:10px;font-size:11px;font-weight:700}.kpi-icon[data-v-69b3844d]{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:26px;padding:0 8px;border-radius:999px;background:#ffffff29;font-size:10px;font-weight:900}.kpi-purple[data-v-69b3844d]{background:linear-gradient(135deg,#7b47f4,#633ee2)}.kpi-mint[data-v-69b3844d]{background:linear-gradient(135deg,#5fd3c2,#43b9aa)}.kpi-blue[data-v-69b3844d]{background:linear-gradient(135deg,#316ef4,#2458dc)}.kpi-dark[data-v-69b3844d]{background:linear-gradient(135deg,#202437,#161a2d)}.infographic-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px}.info-panel[data-v-69b3844d]{position:relative;min-height:230px;padding:22px;border:1px solid #eeeef5;border-radius:8px;background:#fff;box-shadow:0 14px 34px #2225380f}.value-panel[data-v-69b3844d],.forecast-panel[data-v-69b3844d],.revenue-panel[data-v-69b3844d],.donut-panel[data-v-69b3844d]{grid-column:span 2}.info-panel.wide[data-v-69b3844d]{grid-column:span 4}.panel-menu[data-v-69b3844d]{position:absolute;top:18px;right:20px;color:#999eaf;font-weight:900}.panel-kicker[data-v-69b3844d]{display:block;margin-bottom:12px;color:#34384f;font-size:13px;font-weight:800}.hero-number[data-v-69b3844d]{display:inline-block;margin-top:12px;color:#2c3045;font-size:clamp(42px,5vw,58px);font-weight:800;line-height:1}.hero-unit[data-v-69b3844d]{display:block;margin-top:6px;color:#8d91a3;font-size:12px;font-weight:800}.mini-column-chart[data-v-69b3844d]{display:flex;align-items:end;gap:9px;height:92px;margin-top:26px}.mini-column-chart span[data-v-69b3844d]{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(180deg,#7b47f4,#5d38df)}.panel-empty[data-v-69b3844d]{display:flex;align-items:center;justify-content:center;min-height:92px;margin-top:20px;border:1px dashed #d8dce8;border-radius:8px;color:#9ca1b2;font-size:12px;font-weight:800}.value-panel p[data-v-69b3844d]{margin:12px 0 0;color:#7c8297;font-size:12px;font-weight:700}.range-bars[data-v-69b3844d]{display:grid;gap:18px;margin-top:28px}.range-bars div[data-v-69b3844d]{position:relative;display:grid;grid-template-columns:42px 66px 1fr;align-items:center;gap:12px}.range-bars label[data-v-69b3844d]{color:#8e93a6;font-size:12px;font-weight:800}.range-bars strong[data-v-69b3844d]{color:#2d3147;font-size:18px;font-weight:800}.range-bars span[data-v-69b3844d]{height:14px;border-radius:999px;background:linear-gradient(90deg,#ffd25f,#ffb72e)}.smooth-line[data-v-69b3844d],.trend-area[data-v-69b3844d]{position:relative;overflow:hidden;border-radius:6px;background:linear-gradient(180deg,#ed4b8433,#ed4b840a),repeating-linear-gradient(0deg,transparent 0 42px,rgba(141,145,163,.08) 42px 43px)}.smooth-line[data-v-69b3844d]{height:124px;margin-top:26px}.smooth-line svg[data-v-69b3844d],.trend-area svg[data-v-69b3844d]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.smooth-line polyline[data-v-69b3844d],.trend-area polyline[data-v-69b3844d]{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.smooth-line polyline[data-v-69b3844d]{stroke:#ee4b87;stroke-width:3}.movement-copy[data-v-69b3844d]{margin-top:18px}.movement-copy strong[data-v-69b3844d]{display:block;color:#2d3147;font-size:28px;font-weight:800}.movement-copy span[data-v-69b3844d]{color:#8d91a3;font-size:12px;font-weight:800}.trend-legend[data-v-69b3844d]{display:flex;justify-content:flex-end;gap:14px;color:#8d91a3;font-size:11px;font-weight:800}.trend-legend span[data-v-69b3844d]:before{content:"";display:inline-block;width:9px;height:9px;margin-right:6px;border-radius:50%}.legend-purple[data-v-69b3844d]:before{background:#7b47f4}.legend-mint[data-v-69b3844d]:before{background:#50d3c0}.trend-area[data-v-69b3844d]{height:230px;margin-top:12px;background:linear-gradient(180deg,#7b47f424,#50d3c00d),repeating-linear-gradient(0deg,transparent 0 45px,rgba(141,145,163,.08) 45px 46px)}.trend-line-primary[data-v-69b3844d]{stroke:#7b47f4;stroke-width:3}.trend-line-secondary[data-v-69b3844d]{stroke:#50d3c0;stroke-width:3}.trend-axis[data-v-69b3844d]{display:flex;justify-content:space-between;margin-top:12px;color:#9ca1b2;font-size:11px;font-weight:800}.donut-visual[data-v-69b3844d]{width:156px;height:156px;margin:28px auto 22px;border-radius:50%;display:flex;align-items:center;justify-content:center}.donut-visual strong[data-v-69b3844d]{color:#2d3147;font-size:27px;font-weight:800}.donut-stats[data-v-69b3844d]{display:flex;justify-content:center;gap:22px;color:#70778e;font-size:12px;font-weight:800}.screen-table[data-v-69b3844d]{display:grid;gap:0;margin-top:10px}.screen-table a[data-v-69b3844d]{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr) 92px;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #f0f1f7;color:inherit;text-decoration:none}.screen-table a[data-v-69b3844d]:last-child{border-bottom:0}.screen-table span[data-v-69b3844d]{color:#34384f;font-size:13px;font-weight:800}.screen-table em[data-v-69b3844d]{color:#9297aa;font-size:12px;font-style:normal;font-weight:700}.screen-table strong[data-v-69b3844d]{justify-self:end;padding:6px 10px;border-radius:999px;background:#f2f1ff;color:#6a45e8;font-size:11px}.feature-definition-section[data-v-69b3844d]{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px;margin:24px 0;padding:24px;border-radius:8px;background:#fff;box-shadow:0 14px 34px #2225380f}.feature-definition-header span[data-v-69b3844d]{color:#7447ef;font-size:12px;font-weight:900}.feature-definition-header h2[data-v-69b3844d]{margin:8px 0;color:#2d3147;font-size:24px;font-weight:800}.feature-definition-header p[data-v-69b3844d]{margin:0;color:#8d91a3;font-size:13px;font-weight:700;line-height:1.55}.feature-definition-grid[data-v-69b3844d]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.feature-definition-grid article[data-v-69b3844d]{padding:18px;border:1px solid #eeeef5;border-radius:8px;background:#fbfbfe}.feature-definition-grid strong[data-v-69b3844d]{color:#7447ef;font-size:12px;font-weight:900}.feature-definition-grid h3[data-v-69b3844d]{margin:12px 0 8px;color:#34384f;font-size:15px;font-weight:800}.feature-definition-grid p[data-v-69b3844d]{margin:0;color:#8d91a3;font-size:12px;font-weight:700;line-height:1.55}.market-hero .page-title[data-v-69b3844d]{margin:0 0 12px;color:#101828;font-size:42px;font-weight:800;line-height:1.02}.market-hero .page-subtitle[data-v-69b3844d]{max-width:460px;margin:0;color:#506177;font-size:16px;font-weight:600;line-height:1.55}.power-supply-card[data-v-69b3844d],.weekly-reports-card[data-v-69b3844d],.download-card[data-v-69b3844d],.chart-container[data-v-69b3844d],.rating-card[data-v-69b3844d],.comparison-empty[data-v-69b3844d],.comparison-quick-stats[data-v-69b3844d]{border:1px solid rgba(196,211,232,.9);border-radius:24px;background:#ffffffeb;box-shadow:0 18px 42px #5b7ca51f}.power-supply-card[data-v-69b3844d],.weekly-reports-card[data-v-69b3844d],.download-card[data-v-69b3844d]{padding:28px}.chart-container[data-v-69b3844d]{padding:22px}.section-title[data-v-69b3844d],.rating-section .section-title[data-v-69b3844d],.power-supply-header .section-title[data-v-69b3844d],.weekly-reports-header .section-title[data-v-69b3844d],.smp-info-section .section-title[data-v-69b3844d]{color:#172133;font-size:21px;font-weight:800;letter-spacing:0}.statistics-section .section-desc[data-v-69b3844d],.power-supply-header .section-desc[data-v-69b3844d],.weekly-reports-header .section-desc[data-v-69b3844d],.download-description[data-v-69b3844d]{color:#6a7890}.charts-section[data-v-69b3844d]{gap:18px;margin-top:18px}.chart-header-simple[data-v-69b3844d],.chart-header-stacked[data-v-69b3844d]{border-bottom:1px solid #e7eef8}.chart-title-full[data-v-69b3844d]{color:#172133;font-size:18px;font-weight:800}.period-btn[data-v-69b3844d],.format-select[data-v-69b3844d]{border:1px solid #d5e1f0;border-radius:999px;background:#fff;color:#54647a;font-weight:800}.period-btn.active[data-v-69b3844d],.btn-download-forecast[data-v-69b3844d],.btn-download[data-v-69b3844d]{border-color:#2f86ff;background:#2f86ff;color:#fff;box-shadow:0 12px 24px #2f86ff38}.btn-download[data-v-69b3844d]:hover:not(:disabled),.btn-download-forecast[data-v-69b3844d]:hover:not(:disabled){background:#1976ed;transform:none;box-shadow:0 12px 24px #2f86ff42}.info-badge[data-v-69b3844d],.rating-detail[data-v-69b3844d]{border:1px solid #dbe6f3;border-radius:999px;background:#f4f8fd;color:#5f6f86;font-weight:800}.ps-metric-card[data-v-69b3844d]{border:1px solid rgba(207,220,238,.9);border-left:0;border-radius:20px;box-shadow:none}.ps-metric-supply[data-v-69b3844d],.ps-metric-demand[data-v-69b3844d],.ps-metric-reserve[data-v-69b3844d],.ps-metric-ratio[data-v-69b3844d]{background:#f6f9fe}.ps-metric-supply .ps-metric-value[data-v-69b3844d],.ps-metric-demand .ps-metric-value[data-v-69b3844d],.ps-metric-reserve .ps-metric-value[data-v-69b3844d],.ps-metric-ratio .ps-metric-value[data-v-69b3844d]{color:#172133}.pillar-quick-links .pillar-link[data-v-69b3844d]{border:1px solid #d5e1f0;background:#ffffffeb;color:#43546a;font-weight:800}.pillar-quick-links .pillar-link[data-v-69b3844d]:hover{border-color:#2f86ff;background:#eef6ff;color:#1f73d7}.smp-info-section[data-v-69b3844d]{border:1px solid rgba(196,211,232,.9);background:#fff;box-shadow:0 18px 42px #5b7ca51f;color:#46566d}.smp-info-section .section-desc[data-v-69b3844d],.smp-info-section .smp-info-more[data-v-69b3844d]{color:#607188}.smp-info-card[data-v-69b3844d]{border:1px solid #dce7f4;background:#f7faff}.smp-info-card h3[data-v-69b3844d]{color:#172133}.smp-info-section .smp-info-more a[data-v-69b3844d]{color:#1f73d7;font-weight:800}@media (max-width: 1024px){.dashboard-command[data-v-69b3844d],.feature-definition-section[data-v-69b3844d]{grid-template-columns:1fr}.dashboard-command[data-v-69b3844d]{align-items:start}.dashboard-actions[data-v-69b3844d]{justify-content:flex-start}.kpi-strip[data-v-69b3844d],.feature-definition-grid[data-v-69b3844d],.infographic-grid[data-v-69b3844d]{grid-template-columns:repeat(2,minmax(0,1fr))}.value-panel[data-v-69b3844d],.forecast-panel[data-v-69b3844d],.revenue-panel[data-v-69b3844d],.donut-panel[data-v-69b3844d],.info-panel.wide[data-v-69b3844d]{grid-column:span 1}.hero-grid[data-v-69b3844d]{grid-template-columns:1fr}.hero-copy[data-v-69b3844d]{min-height:auto}.hero-board[data-v-69b3844d]{grid-template-columns:repeat(2,minmax(0,1fr))}.smp-main-card[data-v-69b3844d]{grid-column:1 / -1;grid-row:auto;min-height:320px}.charts-section[data-v-69b3844d]{grid-template-columns:1fr}.stats-grid[data-v-69b3844d]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dataviz-topbar[data-v-69b3844d]{border-radius:10px;padding:14px}.dashboard-actions[data-v-69b3844d],.dashboard-actions .region-toggle[data-v-69b3844d]{width:100%}.kpi-strip[data-v-69b3844d],.infographic-grid[data-v-69b3844d],.feature-definition-grid[data-v-69b3844d],.screen-table a[data-v-69b3844d]{grid-template-columns:1fr}.screen-table strong[data-v-69b3844d]{justify-self:start}.container[data-v-69b3844d]{padding:18px 12px 36px}.market-hero[data-v-69b3844d]{padding:16px;border-radius:22px}.hero-nav[data-v-69b3844d],.hero-tabs[data-v-69b3844d],.hero-tools[data-v-69b3844d]{align-items:stretch;width:100%}.hero-nav[data-v-69b3844d]{flex-direction:column}.hero-tabs[data-v-69b3844d]{justify-content:space-between}.hero-tab[data-v-69b3844d]{min-width:0;flex:1}.market-hero .page-title[data-v-69b3844d]{font-size:34px}.hero-board[data-v-69b3844d],.forecast-metrics[data-v-69b3844d]{grid-template-columns:1fr}.forecast-card[data-v-69b3844d],.supply-card[data-v-69b3844d]{grid-column:1}.supply-card[data-v-69b3844d],.stats-grid[data-v-69b3844d]{grid-template-columns:1fr}.page-title[data-v-69b3844d]{font-size:32px}}.dataviz-hero.market-hero[data-v-69b3844d]{padding:0 0 26px;border:0;border-radius:0;background:transparent;box-shadow:none}.dataviz-hero.market-hero .page-title[data-v-69b3844d]{margin-bottom:8px;color:#232538;font-size:26px;font-weight:800;line-height:1.18}.dataviz-hero.market-hero .page-subtitle[data-v-69b3844d]{max-width:640px;color:#8d91a3;font-size:13px;font-weight:600}.dataviz-hero .hero-nav[data-v-69b3844d]{display:none}@media (max-width: 768px){.dataviz-hero.market-hero[data-v-69b3844d]{padding:0 0 18px}.dataviz-hero.market-hero .page-title[data-v-69b3844d]{font-size:24px}}.mobile-app[data-v-89f4afe2]{--bg: #f1f5f9;--surface: #ffffff;--primary: #6366f1;--primary-dark: #4f46e5;--text: #0f172a;--text-secondary: #64748b;--border: #e2e8f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans KR,sans-serif;min-height:100vh;min-height:100dvh;background:var(--bg);padding-top:env(safe-area-inset-top,0);padding-bottom:max(16px,env(safe-area-inset-bottom,0));-webkit-tap-highlight-color:transparent}.app-header[data-v-89f4afe2]{position:sticky;top:0;z-index:10;background:linear-gradient(160deg,var(--primary-dark) 0%,var(--primary) 100%);color:#fff;padding:14px 20px;padding-top:max(14px,env(safe-area-inset-top));box-shadow:0 2px 8px #4f46e540}.app-header-inner[data-v-89f4afe2]{display:flex;justify-content:space-between;align-items:center;max-width:420px;margin:0 auto}.app-brand[data-v-89f4afe2]{font-size:1.375rem;font-weight:800;letter-spacing:-.04em;margin:0}.app-time[data-v-89f4afe2]{font-size:.8125rem;opacity:.92;font-variant-numeric:tabular-nums}.app-header-inner[data-v-89f4afe2] .site-intro-wrap{margin:0 6px}.app-header-inner[data-v-89f4afe2] .site-intro-trigger{color:#fff;border-color:#fffc}.app-header-inner[data-v-89f4afe2] .site-intro-trigger:hover{background:#fff3}.app-body[data-v-89f4afe2]{max-width:420px;margin:0 auto;padding:16px}.card[data-v-89f4afe2]{background:var(--surface);border-radius:16px;padding:16px;margin-bottom:14px;box-shadow:0 1px 3px #0000000f}.card-heading[data-v-89f4afe2]{font-size:1rem;font-weight:600;color:var(--text);margin:0 0 12px}.segmented[data-v-89f4afe2]{display:flex;gap:6px;padding:5px;background:var(--bg);border-radius:12px}.segmented-btn[data-v-89f4afe2]{flex:1;min-height:44px;padding:10px 14px;border:none;border-radius:10px;background:transparent;font-size:.9375rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:background .2s,color .2s}.segmented-btn.active[data-v-89f4afe2]{background:var(--surface);color:var(--primary);box-shadow:0 1px 2px #0000000f}.segmented-btn[data-v-89f4afe2]:active{opacity:.9}.region-card[data-v-89f4afe2]{margin-bottom:14px}.region-card-desc[data-v-89f4afe2]{margin:10px 0 0;font-size:12px;color:var(--text-secondary);text-align:center;line-height:1.4}.info-strip-card[data-v-89f4afe2]{margin-bottom:14px;padding:14px 16px}.info-strip-row[data-v-89f4afe2]{display:flex;flex-wrap:wrap;gap:16px;align-items:stretch}.info-block[data-v-89f4afe2]{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.info-block[data-v-89f4afe2]:only-child{max-width:100%}.info-block[data-v-89f4afe2]:not(:first-child){padding-left:16px;border-left:1px solid var(--border)}.info-icon[data-v-89f4afe2]{font-size:1.5rem;line-height:1;flex-shrink:0}.info-content[data-v-89f4afe2]{display:flex;flex-direction:column;gap:2px;min-width:0}.info-label[data-v-89f4afe2]{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.02em}.info-value[data-v-89f4afe2]{font-size:.9375rem;font-weight:600;color:var(--text);line-height:1.35}.info-value-power[data-v-89f4afe2]{font-variant-numeric:tabular-nums;color:var(--primary)}.info-meta[data-v-89f4afe2]{font-size:.6875rem;color:var(--text-secondary);margin-top:2px}.stats-card[data-v-89f4afe2]{padding:12px}.stats-grid[data-v-89f4afe2]{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-height:100px}.stat[data-v-89f4afe2]{background:var(--bg);border-radius:12px;padding:14px 12px;display:flex;flex-direction:column;gap:2px;min-height:70px;justify-content:center}.stat.primary[data-v-89f4afe2]{background:linear-gradient(135deg,#6366f11a,#4f46e514)}.stat.primary .stat-value[data-v-89f4afe2]{color:var(--primary);font-weight:700}.stat-label[data-v-89f4afe2]{font-size:.75rem;color:var(--text-secondary);font-weight:500}.stat-value[data-v-89f4afe2]{font-size:1.2rem;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.stat-unit[data-v-89f4afe2]{font-size:.6875rem;color:var(--text-secondary)}.stats-summary[data-v-89f4afe2]{font-size:.8125rem;color:var(--text-secondary);margin:10px 0 0;line-height:1.4}.rating-strip[data-v-89f4afe2]{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.rating-strip-label[data-v-89f4afe2]{font-size:.75rem;color:var(--text-secondary);font-weight:600}.rating-strip-badge[data-v-89f4afe2]{font-size:.8125rem;font-weight:700;padding:4px 10px;border-radius:8px;color:#fff}.rating-strip-badge.rating-5[data-v-89f4afe2]{background:#22c55e}.rating-strip-badge.rating-4[data-v-89f4afe2]{background:#84cc16}.rating-strip-badge.rating-3[data-v-89f4afe2]{background:#eab308;color:#1e293b}.rating-strip-badge.rating-2[data-v-89f4afe2]{background:#f97316}.rating-strip-badge.rating-1[data-v-89f4afe2]{background:#ef4444}.rating-strip-detail[data-v-89f4afe2]{font-size:.6875rem;color:var(--text-secondary);padding:2px 6px;background:var(--bg);border-radius:6px}.chart-card[data-v-89f4afe2]{padding:16px}.chart-segmented[data-v-89f4afe2]{margin-bottom:14px}.chart-body[data-v-89f4afe2]{min-height:180px}.period-row[data-v-89f4afe2]{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.pill[data-v-89f4afe2]{min-height:36px;padding:8px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:.8125rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s}.pill.active[data-v-89f4afe2]{background:var(--primary);color:#fff;border-color:var(--primary)}.pill[data-v-89f4afe2]:active{opacity:.9}.forecast-model[data-v-89f4afe2]{font-size:.8125rem;color:var(--text-secondary);margin:0 0 10px}.btn-outline[data-v-89f4afe2]{width:100%;min-height:44px;padding:12px 16px;margin-bottom:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:.9375rem;font-weight:600;color:var(--text);cursor:pointer}.btn-outline[data-v-89f4afe2]:disabled{opacity:.5;cursor:not-allowed}.btn-outline[data-v-89f4afe2]:active:not(:disabled){background:var(--bg)}.chart-area[data-v-89f4afe2] .chart-container{height:200px}.chart-area-mobile[data-v-89f4afe2] .chart-container{height:280px}.comparison-tab .comparison-loading[data-v-89f4afe2],.comparison-tab .comparison-empty[data-v-89f4afe2]{padding:32px 16px;text-align:center;font-size:.9rem;color:var(--text-secondary)}.comparison-tab .comparison-empty p[data-v-89f4afe2]{margin:0}.power-card[data-v-89f4afe2]{padding:0;overflow:hidden}.accordion-head[data-v-89f4afe2]{width:100%;min-height:52px;padding:16px 18px;border:none;background:var(--surface);font-size:.9375rem;font-weight:600;color:var(--text);display:flex;justify-content:space-between;align-items:center;cursor:pointer;text-align:left}.accordion-head[data-v-89f4afe2]:active{background:var(--bg)}.accordion-chevron[data-v-89f4afe2]{font-size:1.25rem;color:var(--text-secondary);transition:transform .25s ease}.accordion-chevron.open[data-v-89f4afe2]{transform:rotate(90deg)}.accordion-panel[data-v-89f4afe2]{padding:0 18px 16px;border-top:1px solid var(--border)}.accordion-enter-active[data-v-89f4afe2],.accordion-leave-active[data-v-89f4afe2]{transition:opacity .2s ease}.accordion-enter-from[data-v-89f4afe2],.accordion-leave-to[data-v-89f4afe2]{opacity:0}.ps-loading[data-v-89f4afe2],.ps-empty[data-v-89f4afe2]{font-size:.875rem;color:var(--text-secondary);text-align:center;padding:12px;margin:0}.ps-list[data-v-89f4afe2]{display:flex;flex-direction:column;gap:8px}.ps-row[data-v-89f4afe2]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--bg);border-radius:8px;font-size:.875rem}.ps-label[data-v-89f4afe2]{color:var(--text-secondary)}.ps-val[data-v-89f4afe2]{font-weight:600;color:var(--text)}.ps-time[data-v-89f4afe2]{margin:10px 0 0;font-size:.75rem;color:var(--text-secondary)}.date-range[data-v-89f4afe2]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.date-inp[data-v-89f4afe2]{flex:1;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:1rem;font-family:inherit}.date-sep[data-v-89f4afe2]{color:var(--text-secondary);font-size:.9rem}.btn-primary[data-v-89f4afe2]{width:100%;min-height:48px;padding:14px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary) 100%);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #6366f159}.btn-primary[data-v-89f4afe2]:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-primary[data-v-89f4afe2]:active:not(:disabled){opacity:.95}.btn-full[data-v-89f4afe2]{display:block;width:100%}.loading-layer[data-v-89f4afe2]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172a8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.loading-spinner[data-v-89f4afe2]{width:44px;height:44px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin-89f4afe2 .7s linear infinite;margin-bottom:12px}@keyframes spin-89f4afe2{to{transform:rotate(360deg)}}.loading-msg[data-v-89f4afe2]{font-size:.9375rem;margin:0;opacity:.95}.toast-error[data-v-89f4afe2]{position:fixed;bottom:calc(16px + env(safe-area-inset-bottom,0));left:50%;transform:translate(-50%);z-index:150;max-width:calc(100% - 32px);padding:12px 20px;background:#0f172a;color:#f8fafc;border-radius:12px;font-size:.875rem;box-shadow:0 4px 20px #0003}.admin-panel[data-v-8cd3d2d4]{padding:24px;max-width:1400px;margin:0 auto;background:#f3f5f7;min-height:100vh}.admin-header[data-v-8cd3d2d4]{text-align:left;color:#111827;margin-bottom:20px;padding:20px 0 8px}.admin-header h1[data-v-8cd3d2d4]{font-size:2rem;margin-bottom:8px;font-weight:700;letter-spacing:0}.header-subtitle[data-v-8cd3d2d4]{font-size:.95rem;color:#64748b;opacity:1}.admin-tabs[data-v-8cd3d2d4]{display:flex;gap:6px;margin-bottom:20px;justify-content:flex-start;flex-wrap:wrap;padding:6px;background:#e7ebf0;border-radius:8px;border:1px solid #d8dee6}.tab-button[data-v-8cd3d2d4]{flex:0 0 auto;max-width:none;padding:10px 14px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;font-size:.92rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s,border-color .2s,color .2s;box-shadow:none;color:#475569}.tab-button[data-v-8cd3d2d4]:hover{transform:none;background:#ffffff8c;box-shadow:none}.tab-button.active[data-v-8cd3d2d4]{background:#fff;color:#0f172a;border-color:#cbd5e1;box-shadow:0 1px 2px #0f172a14}.tab-icon[data-v-8cd3d2d4]{font-size:.72rem;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.admin-content[data-v-8cd3d2d4]{animation:fadeIn-8cd3d2d4 .3s}@keyframes fadeIn-8cd3d2d4{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.admin-card[data-v-8cd3d2d4]{background:#fff;border-radius:8px;padding:24px;box-shadow:none;border:1px solid #dbe1e8}.card-header[data-v-8cd3d2d4]{margin-bottom:32px}.card-header h2[data-v-8cd3d2d4]{font-size:1.35rem;margin-bottom:8px;color:#0f172a;letter-spacing:0}.card-description[data-v-8cd3d2d4]{color:#64748b;font-size:.94rem}.date-range-selector[data-v-8cd3d2d4]{display:flex;gap:16px;align-items:flex-end;margin-bottom:32px;flex-wrap:wrap}.date-input-group[data-v-8cd3d2d4]{flex:1;min-width:200px}.date-input-group label[data-v-8cd3d2d4]{display:block;margin-bottom:8px;font-weight:600;color:#333}.date-input[data-v-8cd3d2d4]{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem}.regions-overview[data-v-8cd3d2d4]{margin-bottom:24px}.regions-overview h3[data-v-8cd3d2d4]{margin-bottom:12px;color:#333;font-size:1.1rem}.regions-overview-grid[data-v-8cd3d2d4]{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.region-overview-card[data-v-8cd3d2d4]{background:linear-gradient(135deg,#f5f7fa,#e4e8ec);border:1px solid #e0e0e0;padding:16px 20px;border-radius:12px}.region-overview-card .region-name[data-v-8cd3d2d4]{font-weight:700;font-size:1.1rem;color:#333;margin-bottom:8px}.region-overview-card .region-meta[data-v-8cd3d2d4]{display:flex;gap:12px;color:#555;font-size:.95rem}.region-overview-card .region-dates[data-v-8cd3d2d4]{margin-top:8px;font-size:.85rem;color:#666}.data-summary-by-region[data-v-8cd3d2d4]{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.region-summary-group[data-v-8cd3d2d4]{background:#f9f9f9;padding:16px;border-radius:12px;border:1px solid #e0e0e0}.region-summary-title[data-v-8cd3d2d4]{font-weight:700;color:#333;margin-bottom:12px;font-size:1.05rem}.summary-cards-row[data-v-8cd3d2d4]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-card.small[data-v-8cd3d2d4]{padding:14px 18px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px}.summary-card.small .summary-label[data-v-8cd3d2d4]{font-size:.8rem;opacity:.9;margin-bottom:4px}.summary-card.small .summary-value[data-v-8cd3d2d4]{font-size:1.2rem}.charts-row[data-v-8cd3d2d4]{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.chart-wrapper[data-v-8cd3d2d4]{min-width:0}.chart-wrapper h4[data-v-8cd3d2d4]{margin-bottom:12px;color:#333;font-size:1rem}.data-tables-row[data-v-8cd3d2d4]{display:grid;grid-template-columns:1fr 1fr;gap:24px}.data-summary[data-v-8cd3d2d4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:32px}.summary-card[data-v-8cd3d2d4]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:12px;display:flex;align-items:center;gap:16px}.summary-icon[data-v-8cd3d2d4]{font-size:2.5rem}.summary-content[data-v-8cd3d2d4]{flex:1}.summary-label[data-v-8cd3d2d4]{font-size:.9rem;opacity:.9;margin-bottom:4px}.summary-value[data-v-8cd3d2d4]{font-size:1.5rem;font-weight:700}.chart-container[data-v-8cd3d2d4]{margin:32px 0;position:relative;height:400px}.chart-container-data[data-v-8cd3d2d4]{height:360px}.data-table-container[data-v-8cd3d2d4]{margin-top:32px}.data-table-container h3[data-v-8cd3d2d4]{margin-bottom:16px;color:#333}.data-table[data-v-8cd3d2d4]{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.data-table th[data-v-8cd3d2d4]{background:#667eea;color:#fff;padding:12px;text-align:left;font-weight:600}.data-table td[data-v-8cd3d2d4]{padding:12px;border-bottom:1px solid #e0e0e0}.data-table tr[data-v-8cd3d2d4]:hover{background:#f5f5f5}.model-selector[data-v-8cd3d2d4]{margin-bottom:32px}.form-label[data-v-8cd3d2d4]{display:block;margin-bottom:12px;font-weight:600;color:#333}.recommended-badge[data-v-8cd3d2d4]{margin-left:10px;padding:2px 8px;font-size:12px;font-weight:500;background:#e7f3ff;color:#0d6efd;border-radius:6px}.label-icon[data-v-8cd3d2d4]{font-size:1.2rem}.form-select[data-v-8cd3d2d4]{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fff;color:#333}.model-info[data-v-8cd3d2d4]{margin-top:16px;padding:16px;background:#f5f5f5;border-radius:8px}.prediction-quality-section[data-v-8cd3d2d4]{margin:16px 0;padding:12px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px}.prediction-quality-section summary[data-v-8cd3d2d4]{cursor:pointer;font-weight:600;color:#495057}.prediction-quality-section .quality-mae-result[data-v-8cd3d2d4]{margin-top:8px}.prediction-quality-section .quality-hint[data-v-8cd3d2d4]{font-size:12px;color:#6c757d;margin-top:4px}.prediction-quality-section .quality-mae-actions[data-v-8cd3d2d4]{margin-top:8px}.prediction-actions[data-v-8cd3d2d4]{margin:32px 0;text-align:center}.btn[data-v-8cd3d2d4]{padding:14px 28px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-primary[data-v-8cd3d2d4]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary[data-v-8cd3d2d4]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #667eea66}.btn-large[data-v-8cd3d2d4]{padding:18px 36px;font-size:1.1rem}.btn[data-v-8cd3d2d4]:disabled{opacity:.6;cursor:not-allowed}.prediction-result[data-v-8cd3d2d4]{margin-top:32px}.result-header[data-v-8cd3d2d4]{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e0e0e0}.result-header h3[data-v-8cd3d2d4]{margin-bottom:12px;color:#333}.result-meta[data-v-8cd3d2d4]{display:flex;gap:24px;flex-wrap:wrap;color:#666;font-size:.9rem}.prediction-stats[data-v-8cd3d2d4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:32px 0}.stat-card[data-v-8cd3d2d4]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:12px;text-align:center}.stat-label[data-v-8cd3d2d4]{font-size:.9rem;opacity:.9;margin-bottom:8px}.stat-value[data-v-8cd3d2d4]{font-size:1.8rem;font-weight:700}.deployment-summary-top[data-v-8cd3d2d4]{margin-bottom:20px;padding:14px 16px;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef}.deployment-summary-top .summary-title[data-v-8cd3d2d4]{margin:0 0 10px;font-size:14px;font-weight:600;color:#495057}.deployment-summary-top .summary-regions[data-v-8cd3d2d4]{display:flex;flex-wrap:wrap;gap:12px 20px}.deployment-summary-top .summary-region-item[data-v-8cd3d2d4]{font-size:13px;color:#6c757d}.deployment-summary-top .summary-region-item.deployed[data-v-8cd3d2d4]{color:#0d6efd}.deployment-summary-top .region-name[data-v-8cd3d2d4]{font-weight:600;margin-right:4px}.deployment-summary-top .region-detail[data-v-8cd3d2d4]{margin-right:4px}.deployment-summary-top .region-date[data-v-8cd3d2d4]{margin-right:6px}.deployment-summary-top .region-model[data-v-8cd3d2d4]{font-size:12px;color:#495057}.deploy-region-toggle[data-v-8cd3d2d4]{display:flex;align-items:center;gap:10px;margin-bottom:16px}.deploy-region-toggle .toggle-label[data-v-8cd3d2d4]{font-weight:600;color:#333}.deploy-region-toggle .region-btn[data-v-8cd3d2d4]{padding:8px 16px;border:1px solid #ccc;border-radius:8px;background:#f5f5f5;cursor:pointer;font-size:14px}.deploy-region-toggle .region-btn[data-v-8cd3d2d4]:hover{background:#eee}.deploy-region-toggle .region-btn.active[data-v-8cd3d2d4]{background:#667eea;color:#fff;border-color:#667eea}.prediction-region-toggle[data-v-8cd3d2d4]{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.prediction-region-toggle .toggle-label[data-v-8cd3d2d4]{font-weight:600;color:#333}.prediction-region-toggle .region-btn[data-v-8cd3d2d4]{padding:8px 16px;border:1px solid #ccc;border-radius:8px;background:#f5f5f5;cursor:pointer;font-size:14px}.prediction-region-toggle .region-btn[data-v-8cd3d2d4]:hover{background:#eee}.prediction-region-toggle .region-btn.active[data-v-8cd3d2d4]{background:#667eea;color:#fff;border-color:#667eea}.region-done-badge[data-v-8cd3d2d4]{margin-left:8px;padding:4px 10px;background:#11998e;color:#fff;border-radius:6px;font-size:12px;font-weight:600}.prediction-region-hint[data-v-8cd3d2d4]{color:#666}.monthly-forecast-actions[data-v-8cd3d2d4]{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}.monthly-forecast-why[data-v-8cd3d2d4]{margin-top:8px;margin-bottom:12px;font-size:13px;color:#555}.monthly-forecast-message[data-v-8cd3d2d4]{margin-bottom:12px;font-weight:500}.monthly-forecast-message.success[data-v-8cd3d2d4]{color:#0d8050}.monthly-forecast-message.error[data-v-8cd3d2d4]{color:#c53030}.monthly-forecast-error[data-v-8cd3d2d4]{color:#c53030;margin-bottom:12px}.monthly-forecast-failure-hint[data-v-8cd3d2d4]{margin-top:12px;padding:12px 14px;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;font-size:13px}.monthly-forecast-failure-hint summary[data-v-8cd3d2d4]{cursor:pointer;font-weight:600;color:#c53030}.monthly-forecast-failure-hint ul[data-v-8cd3d2d4]{margin:8px 0 0;padding-left:1.4em}.monthly-forecast-failure-hint li[data-v-8cd3d2d4]{margin-bottom:6px}.monthly-forecast-meta[data-v-8cd3d2d4]{color:#555;font-size:14px;margin-bottom:16px}.monthly-forecast-chart-wrap[data-v-8cd3d2d4]{margin-bottom:24px;max-width:100%;height:320px}.monthly-forecast-chart-wrap canvas[data-v-8cd3d2d4]{max-width:100%}.monthly-forecast-table-wrap[data-v-8cd3d2d4]{overflow-x:auto}.monthly-forecast-table[data-v-8cd3d2d4]{font-size:12px}.monthly-forecast-table th[data-v-8cd3d2d4],.monthly-forecast-table td[data-v-8cd3d2d4]{padding:6px 8px;text-align:right}.monthly-forecast-table .date-cell[data-v-8cd3d2d4]{text-align:left;min-width:96px}.monthly-forecast-table .hour-col[data-v-8cd3d2d4]{min-width:42px}.monthly-forecast-table .smp-cell[data-v-8cd3d2d4]{min-width:40px}.monthly-forecast-table .stat-cell[data-v-8cd3d2d4]{font-weight:500;min-width:52px}.deployment-status[data-v-8cd3d2d4]{margin-bottom:32px}.status-card[data-v-8cd3d2d4]{background:#f5f5f5;padding:24px;border-radius:12px;display:flex;align-items:center;gap:16px;margin-bottom:16px}.status-card.deployed[data-v-8cd3d2d4]{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.status-icon[data-v-8cd3d2d4]{font-size:2.5rem}.status-content[data-v-8cd3d2d4]{flex:1}.status-label[data-v-8cd3d2d4]{font-size:.9rem;opacity:.8;margin-bottom:4px}.status-value[data-v-8cd3d2d4]{font-size:1.5rem;font-weight:700}.deployment-info[data-v-8cd3d2d4]{background:#f9f9f9;padding:20px;border-radius:8px;margin-top:16px}.deployment-info p[data-v-8cd3d2d4]{margin:8px 0;color:#333}.deployment-actions[data-v-8cd3d2d4]{margin:32px 0;text-align:center}.btn-success[data-v-8cd3d2d4]{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.btn-success[data-v-8cd3d2d4]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #11998e66}.btn-danger[data-v-8cd3d2d4]{background:linear-gradient(135deg,#eb3349,#f45c43);color:#fff}.btn-danger[data-v-8cd3d2d4]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #eb334966}.deployed-preview[data-v-8cd3d2d4]{margin-top:32px;padding-top:32px;border-top:2px solid #e0e0e0}.deployed-preview h3[data-v-8cd3d2d4]{margin-bottom:24px;color:#333}.input-features-section[data-v-8cd3d2d4]{margin-top:32px;padding-top:32px;border-top:2px solid #e0e0e0}.input-features-section h3[data-v-8cd3d2d4]{margin-bottom:20px;color:#333;font-size:1.3rem}.features-info[data-v-8cd3d2d4]{background:#f9f9f9;border-radius:12px;padding:24px}.features-summary[data-v-8cd3d2d4]{display:flex;gap:24px;margin-bottom:20px;flex-wrap:wrap}.summary-item[data-v-8cd3d2d4]{font-size:.95rem;color:#666}.summary-item strong[data-v-8cd3d2d4]{color:#333;margin-right:8px}.features-grid[data-v-8cd3d2d4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.feature-item-card[data-v-8cd3d2d4]{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;transition:all .3s}.feature-item-card[data-v-8cd3d2d4]:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;transform:translateY(-2px)}.feature-name[data-v-8cd3d2d4]{font-size:.85rem;color:#666;margin-bottom:8px;font-weight:500;word-break:break-word}.feature-value[data-v-8cd3d2d4]{font-size:1.1rem;font-weight:700;color:#667eea}.apikey-actions[data-v-8cd3d2d4]{margin-bottom:24px}.apikey-issue-row[data-v-8cd3d2d4]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.apikey-name-input[data-v-8cd3d2d4]{padding:10px 14px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;min-width:200px}.apikey-name-input[data-v-8cd3d2d4]:focus{outline:none;border-color:#667eea}.apikey-new-box[data-v-8cd3d2d4]{background:#fff8e6;border:1px solid #ffc107;border-radius:12px;padding:20px;margin-bottom:24px}.apikey-warn[data-v-8cd3d2d4]{color:#856404;margin:0 0 12px;font-size:14px}.apikey-value[data-v-8cd3d2d4]{font-family:monospace;word-break:break-all;padding:12px;background:#fff;border-radius:8px;margin-bottom:12px;font-size:13px}.apikey-backend-url[data-v-8cd3d2d4]{margin-bottom:20px}.apikey-backend-url label[data-v-8cd3d2d4]{display:block;font-weight:600;margin-bottom:8px;font-size:14px}.apikey-backend-url-row[data-v-8cd3d2d4]{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.apikey-backend-input[data-v-8cd3d2d4]{flex:1;min-width:200px;padding:10px 12px;border:1px solid #dee2e6;border-radius:8px;font-size:14px}.apikey-backend-hint[data-v-8cd3d2d4]{font-size:12px;color:#666;margin-top:6px;margin-bottom:0}.apikey-test-links[data-v-8cd3d2d4]{background:#e8f4fd;border:1px solid #0d6efd;border-radius:12px;padding:20px;margin-bottom:24px}.apikey-test-links h3[data-v-8cd3d2d4]{margin-top:0;margin-bottom:8px;font-size:16px}.apikey-test-desc[data-v-8cd3d2d4]{color:#666;font-size:13px;margin-bottom:16px}.apikey-link-row[data-v-8cd3d2d4]{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px}.apikey-link-row[data-v-8cd3d2d4]:last-child{margin-bottom:0}.apikey-link-row label[data-v-8cd3d2d4]{flex:0 0 auto;font-weight:600;min-width:140px}.apikey-link-value[data-v-8cd3d2d4]{flex:1;min-width:0;font-family:monospace;font-size:12px;word-break:break-all;padding:8px 12px;background:#fff;border-radius:8px;border:1px solid #dee2e6}.apikey-link-anchor[data-v-8cd3d2d4]{color:#0d6efd;text-decoration:none;display:block}.apikey-link-anchor[data-v-8cd3d2d4]:hover{text-decoration:underline}.apikey-test-links code[data-v-8cd3d2d4]{font-size:12px;background:#eee;padding:2px 6px;border-radius:4px}.apikey-link-row .btn[data-v-8cd3d2d4]{flex-shrink:0}.apikey-list[data-v-8cd3d2d4]{margin-top:24px}.apikey-list h3[data-v-8cd3d2d4],.apikey-docs h3[data-v-8cd3d2d4]{margin-bottom:16px;color:#333}.apikey-loading[data-v-8cd3d2d4]{padding:24px;text-align:center;color:#666}.apikey-docs[data-v-8cd3d2d4]{margin-top:32px;padding-top:24px;border-top:1px solid #e0e0e0}.apikey-docs p[data-v-8cd3d2d4]{margin:8px 0;color:#555;font-size:14px}.apikey-docs code[data-v-8cd3d2d4]{background:#f0f0f0;padding:2px 8px;border-radius:4px;font-size:13px}.btn-sm[data-v-8cd3d2d4]{padding:6px 12px;font-size:13px}.btn-secondary[data-v-8cd3d2d4]{background:#6c757d;color:#fff}.btn-secondary[data-v-8cd3d2d4]:hover:not(:disabled){background:#5a6268}.badge[data-v-8cd3d2d4]{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500}.badge-active[data-v-8cd3d2d4]{background:#d4edda;color:#155724}.badge-revoked[data-v-8cd3d2d4]{background:#f8d7da;color:#721c24}.badge-warning[data-v-8cd3d2d4]{background:#fff3cd;color:#856404}.text-muted[data-v-8cd3d2d4]{color:#999;padding:16px;text-align:center}.api-status-actions[data-v-8cd3d2d4]{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.schedule-summary-section[data-v-8cd3d2d4]{margin-bottom:20px;padding:14px 16px;background:#e7f3ff;border:1px solid #b6d4fe;border-radius:8px}.schedule-summary-section h3[data-v-8cd3d2d4]{margin:0 0 10px;font-size:15px;color:#0d6efd}.schedule-summary-grid[data-v-8cd3d2d4]{display:flex;flex-direction:column;gap:6px}.schedule-summary-row[data-v-8cd3d2d4]{font-size:13px}.schedule-summary-row .label[data-v-8cd3d2d4]{font-weight:600;margin-right:8px;color:#333}.schedule-summary-row .value[data-v-8cd3d2d4]{color:#495057}.smp-cache-status-section[data-v-8cd3d2d4]{margin-bottom:24px;padding:16px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.smp-cache-status-section h3[data-v-8cd3d2d4]{margin:0 0 8px;font-size:16px;color:#333}.smp-cache-status-section .card-description[data-v-8cd3d2d4]{margin:0 0 12px;font-size:13px;color:#666}.smp-cache-status-section .btn-sm[data-v-8cd3d2d4]{margin-bottom:12px}.smp-cache-status-grid[data-v-8cd3d2d4]{display:flex;flex-direction:column;gap:8px}.smp-cache-status-row[data-v-8cd3d2d4]{display:flex;align-items:flex-start;gap:12px;font-size:13px}.smp-cache-status-row .label[data-v-8cd3d2d4]{min-width:180px;color:#555}.smp-cache-status-row .value[data-v-8cd3d2d4]{flex:1;word-break:break-word}.smp-cache-status-row .value .badge-sm[data-v-8cd3d2d4]{margin-right:6px;margin-bottom:4px}.smp-cache-status-row .error-chip[data-v-8cd3d2d4]{display:inline-block;margin-right:8px;margin-bottom:4px;padding:4px 8px;background:#f8d7da;color:#721c24;border-radius:4px;font-size:12px}.smp-cache-status-error[data-v-8cd3d2d4]{color:#c00;font-size:13px}.badge-sm[data-v-8cd3d2d4]{font-size:11px;padding:2px 8px}.api-status-table-wrap[data-v-8cd3d2d4],.api-logs-section[data-v-8cd3d2d4],.prediction-logs-section[data-v-8cd3d2d4],.api-list-doc[data-v-8cd3d2d4]{margin-top:24px}.api-status-table-wrap h3[data-v-8cd3d2d4],.api-logs-section h3[data-v-8cd3d2d4],.prediction-logs-section h3[data-v-8cd3d2d4],.api-list-doc h3[data-v-8cd3d2d4]{margin-bottom:12px;color:#333}.error-cell[data-v-8cd3d2d4]{color:#c00;font-size:13px;max-width:280px;word-break:break-all}.detail-cell[data-v-8cd3d2d4]{font-size:12px;color:#666;max-width:320px;word-break:break-all}.api-logs-hint[data-v-8cd3d2d4]{font-size:13px;color:#666;margin:-8px 0 12px}.api-logs-table .detail-cell[data-v-8cd3d2d4]{font-size:11px}.prediction-logs-section .error-type[data-v-8cd3d2d4]{background:#fee;padding:2px 6px;border-radius:4px;font-size:12px;color:#c33}.traceback-info[data-v-8cd3d2d4]{margin-bottom:16px;padding:12px;background:#f8f9fa;border-radius:6px;font-size:13px;line-height:1.6}.traceback-info div[data-v-8cd3d2d4]{margin-bottom:6px}.traceback-info code[data-v-8cd3d2d4]{background:#e9ecef;padding:2px 6px;border-radius:3px;font-size:12px}.modal-overlay[data-v-8cd3d2d4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}.modal-content[data-v-8cd3d2d4]{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0003;max-width:90vw;max-height:85vh;display:flex;flex-direction:column}.log-response-modal .modal-header[data-v-8cd3d2d4]{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.log-response-modal .modal-header h3[data-v-8cd3d2d4]{margin:0;font-size:18px}.modal-close[data-v-8cd3d2d4]{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#666;padding:0 8px}.modal-close[data-v-8cd3d2d4]:hover{color:#000}.log-response-modal .modal-body[data-v-8cd3d2d4]{padding:20px;overflow:auto;flex:1}.log-response-body[data-v-8cd3d2d4]{margin:0;padding:16px;background:#f8f9fa;border-radius:8px;font-size:13px;white-space:pre-wrap;word-break:break-all;max-height:60vh;overflow:auto}.btn-outline[data-v-8cd3d2d4]{background:transparent;border:2px solid #6c757d;color:#6c757d}.btn-outline[data-v-8cd3d2d4]:hover:not(:disabled){background:#6c757d;color:#fff}.modal-card[data-v-8cd3d2d4]{background:#fff;border-radius:12px;box-shadow:0 12px 40px #0003;max-width:560px;width:100%;padding:20px 24px}.modal-card h3[data-v-8cd3d2d4]{margin:0 0 8px;font-size:18px}.modal-desc[data-v-8cd3d2d4]{color:#666;font-size:13px;margin:0 0 16px}.modal-actions[data-v-8cd3d2d4]{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid #eee}.weekly-republish-modal .form-row[data-v-8cd3d2d4]{margin-bottom:12px}.weekly-republish-modal .form-row label[data-v-8cd3d2d4]{display:block;margin-bottom:4px;font-size:13px;font-weight:500}.summary-textarea[data-v-8cd3d2d4]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:13px;font-family:inherit;resize:vertical}.weekly-autopublish-note[data-v-8cd3d2d4]{margin-top:8px;padding:10px 12px;background:#f8f9fa;border-left:4px solid #0d6efd;font-size:13px;color:#333}.weekly-autopublish-note code[data-v-8cd3d2d4]{background:#e9ecef;padding:2px 6px;border-radius:4px}.weekly-checklist[data-v-8cd3d2d4]{margin-top:10px;padding:10px 12px;background:#fff;border:1px solid #dee2e6;border-radius:8px;font-size:13px}.weekly-checklist summary[data-v-8cd3d2d4]{cursor:pointer;font-weight:600;color:#0d6efd}.weekly-checklist ul[data-v-8cd3d2d4]{margin:8px 0 0;padding-left:20px}.weekly-checklist li[data-v-8cd3d2d4]{margin-bottom:4px}.weekly-readme-link[data-v-8cd3d2d4]{margin:8px 0 0;font-size:12px;color:#6c757d}.weekly-readme-link code[data-v-8cd3d2d4]{background:#e9ecef;padding:2px 6px;border-radius:4px}.weekly-toolbar[data-v-8cd3d2d4]{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.weekly-table-wrap[data-v-8cd3d2d4]{overflow-x:auto}.weekly-table-wrap .data-table[data-v-8cd3d2d4]{min-width:640px}.link-view[data-v-8cd3d2d4]{margin-right:8px}.btn-inline[data-v-8cd3d2d4]{margin-right:8px;padding:4px 10px;font-size:12px;border:1px solid #ddd;border-radius:6px;background:#f5f5f5;cursor:pointer}.btn-inline[data-v-8cd3d2d4]:hover{background:#eee}.btn-inline.btn-danger[data-v-8cd3d2d4]{border-color:#dc3545;background:#fff5f5;color:#c82333}.btn-inline.btn-danger[data-v-8cd3d2d4]:hover{background:#f8d7da}@media (max-width: 768px){.admin-panel[data-v-8cd3d2d4]{padding:12px 16px}.admin-header h1[data-v-8cd3d2d4]{font-size:1.4rem}.admin-header .header-subtitle[data-v-8cd3d2d4]{font-size:13px}.admin-tabs[data-v-8cd3d2d4]{flex-direction:row;flex-wrap:wrap;gap:8px}.tab-button[data-v-8cd3d2d4]{max-width:none;flex:1 1 auto;min-width:0;padding:12px 14px;min-height:44px;font-size:13px}.admin-card[data-v-8cd3d2d4]{padding:20px 16px}.card-header h2[data-v-8cd3d2d4]{font-size:1.1rem}.card-description[data-v-8cd3d2d4]{font-size:13px}.data-summary[data-v-8cd3d2d4],.prediction-stats[data-v-8cd3d2d4]{grid-template-columns:1fr}.date-range-selector[data-v-8cd3d2d4]{flex-direction:column}.date-input-group[data-v-8cd3d2d4]{width:100%}.regions-overview-grid[data-v-8cd3d2d4]{grid-template-columns:1fr}.summary-cards-row[data-v-8cd3d2d4]{grid-template-columns:repeat(2,1fr)}.charts-row[data-v-8cd3d2d4],.data-tables-row[data-v-8cd3d2d4]{grid-template-columns:1fr}.deploy-region-toggle[data-v-8cd3d2d4],.prediction-region-toggle[data-v-8cd3d2d4]{flex-wrap:wrap}.deployment-summary-top .summary-regions[data-v-8cd3d2d4]{flex-direction:column}.data-table[data-v-8cd3d2d4],.weekly-table-wrap .data-table[data-v-8cd3d2d4]{min-width:100%;font-size:12px}.table-wrap[data-v-8cd3d2d4]{overflow-x:auto;-webkit-overflow-scrolling:touch}.log-response-modal[data-v-8cd3d2d4],.modal-overlay .modal-card[data-v-8cd3d2d4]{max-width:95vw;width:95vw}.modal-overlay .modal-card[data-v-8cd3d2d4]{padding:16px 20px}.btn[data-v-8cd3d2d4],.btn-large[data-v-8cd3d2d4]{min-height:44px;padding:12px 16px}}@media (max-width: 480px){.admin-tabs[data-v-8cd3d2d4]{flex-direction:column}.tab-button .tab-label[data-v-8cd3d2d4]{display:inline}.tab-button .tab-icon[data-v-8cd3d2d4]{margin-right:6px}}.admin[data-v-b1d5c5a1]{padding:0;background:#f5f7fa;min-height:100vh}.admin-navbar[data-v-b1d5c5a1]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 0;box-shadow:0 2px 8px #0000001a;position:sticky;top:0;z-index:100}.admin-nav-content[data-v-b1d5c5a1]{max-width:1400px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center}.admin-logo[data-v-b1d5c5a1]{font-size:20px;font-weight:600;margin:0}.admin-nav-actions[data-v-b1d5c5a1]{display:flex;align-items:center;gap:16px}.admin-user[data-v-b1d5c5a1]{font-size:14px;opacity:.9}.logout-button[data-v-b1d5c5a1]{padding:8px 16px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s}.logout-button[data-v-b1d5c5a1]:hover{background:#ffffff4d}.container[data-v-b1d5c5a1]{max-width:1400px;margin:0 auto;padding:32px 24px}.admin-login[data-v-b9d4090d]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:24px}.login-container[data-v-b9d4090d]{width:100%;max-width:450px}.login-card[data-v-b9d4090d]{background:#fff;border-radius:16px;padding:48px;box-shadow:0 20px 60px #0000004d}.login-header[data-v-b9d4090d]{text-align:center;margin-bottom:40px}.login-header h1[data-v-b9d4090d]{font-size:28px;font-weight:700;color:#333;margin-bottom:12px}.login-header p[data-v-b9d4090d]{font-size:14px;color:#666}.login-form[data-v-b9d4090d],.form-group[data-v-b9d4090d]{margin-bottom:24px}.form-group label[data-v-b9d4090d]{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.form-input[data-v-b9d4090d]{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:all .3s;box-sizing:border-box}.form-input[data-v-b9d4090d]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.login-button[data-v-b9d4090d]{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:8px}.login-button[data-v-b9d4090d]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.login-button[data-v-b9d4090d]:disabled{opacity:.6;cursor:not-allowed}.error-message[data-v-b9d4090d]{background:#fee;color:#c33;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:16px;border:1px solid #fcc}.login-footer[data-v-b9d4090d]{text-align:center;padding-top:24px;border-top:1px solid #e0e0e0}.login-footer p[data-v-b9d4090d]{font-size:12px;color:#999}.info-meta-block[data-v-e418bfef]{font-size:13px;color:#64748b;margin-bottom:20px;padding:12px 16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.meta-row[data-v-e418bfef]{margin:0 0 4px}.meta-row[data-v-e418bfef]:last-child{margin-bottom:0}.meta-label[data-v-e418bfef]{font-weight:600;margin-right:6px}.info-page[data-v-a642d533]{max-width:800px;margin:0 auto;padding:24px 20px 48px}.info-page-inner[data-v-a642d533]{background:#fff;border-radius:12px;padding:32px 40px;box-shadow:0 4px 16px #0000000f}.info-header[data-v-a642d533]{margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.info-title[data-v-a642d533]{font-size:28px;font-weight:700;color:#1a202c;margin:0 0 8px;line-height:1.3}.info-subtitle[data-v-a642d533]{font-size:15px;color:#64748b;margin:0;line-height:1.5}.info-body[data-v-a642d533]{font-size:15px;line-height:1.75;color:#334155}.info-body[data-v-a642d533] h2{font-size:20px;font-weight:600;color:#1e293b;margin:28px 0 12px}.info-body[data-v-a642d533] h3{font-size:17px;font-weight:600;color:#334155;margin:20px 0 8px}.info-body[data-v-a642d533] p{margin:0 0 14px}.info-body[data-v-a642d533] ul{margin:0 0 14px;padding-left:1.5em}.info-body[data-v-a642d533] li{margin-bottom:6px}.info-body[data-v-a642d533] a{color:#6366f1;text-decoration:none}.info-body[data-v-a642d533] a:hover{text-decoration:underline}.info-footer[data-v-a642d533]{margin-top:36px;padding-top:24px;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:16px}.info-back[data-v-a642d533]{color:#6366f1;font-weight:500;text-decoration:none}.info-back[data-v-a642d533]:hover{text-decoration:underline}.info-nav[data-v-a642d533]{display:flex;flex-wrap:wrap;gap:12px}.info-nav a[data-v-a642d533]{color:#64748b;font-size:14px;text-decoration:none}.info-nav a[data-v-a642d533]:hover{color:#6366f1;text-decoration:underline}.info-nav-cat[data-v-a642d533]{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;width:100%;margin-top:8px}.info-nav-cat[data-v-a642d533]:first-child{margin-top:0}@media (max-width: 640px){.info-page[data-v-a642d533]{padding:16px 12px 32px}.info-page-inner[data-v-a642d533]{padding:24px 20px}.info-title[data-v-a642d533]{font-size:22px}.info-body[data-v-a642d533] h2{font-size:18px}}.faq-section[data-v-32a84f69]{margin-top:32px}.faq-list[data-v-32a84f69]{margin:0;padding:0;list-style:none}.faq-item[data-v-32a84f69]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.faq-item[data-v-32a84f69]:last-child{border-bottom:none}.faq-question[data-v-32a84f69]{font-weight:600;color:#1e293b;margin:0 0 8px;font-size:16px}.faq-answer[data-v-32a84f69]{margin:0;color:#475569;line-height:1.6}.weekly-list[data-v-1948e7c3]{list-style:none;padding:0;margin:0}.weekly-item[data-v-1948e7c3]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:20px}.weekly-item[data-v-1948e7c3]:last-child{border-bottom:none}.weekly-link[data-v-1948e7c3]{display:block;color:inherit;text-decoration:none}.weekly-link:hover .weekly-title[data-v-1948e7c3]{color:#6366f1}.weekly-title[data-v-1948e7c3]{font-size:18px;font-weight:600;color:#1e293b;display:block;margin-bottom:6px}.weekly-meta[data-v-1948e7c3]{font-size:13px;color:#64748b;display:block;margin-bottom:8px}.weekly-excerpt[data-v-1948e7c3]{font-size:14px;color:#64748b;margin:0;line-height:1.5}.error-msg[data-v-1948e7c3]{color:#dc2626}.weekly-article[data-v-cab94405]{max-width:720px;margin:0 auto}.article-header[data-v-cab94405]{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e2e8f0}.article-title[data-v-cab94405]{font-size:28px;font-weight:700;color:#1e293b;margin:0 0 12px;line-height:1.3}.article-meta[data-v-cab94405]{font-size:14px;color:#64748b;margin-bottom:16px}.meta-sep[data-v-cab94405]{margin:0 8px;color:#cbd5e1}.trend-badge[data-v-cab94405]{display:inline-block;padding:2px 10px;border-radius:6px;font-weight:600;font-size:13px}.trend-badge.trend-상승[data-v-cab94405],.trend-inline.trend-상승[data-v-cab94405]{color:#b91c1c;background:#fef2f2}.trend-badge.trend-하락[data-v-cab94405],.trend-inline.trend-하락[data-v-cab94405]{color:#166534;background:#f0fdf4}.trend-badge.trend-변동없음[data-v-cab94405],.trend-inline.trend-변동없음[data-v-cab94405]{color:#475569;background:#f1f5f9}.week-summary-section[data-v-cab94405]{background:#f8fafc;border-radius:10px;padding:20px 24px;border:1px solid #e2e8f0}.week-summary-head[data-v-cab94405]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:8px}.week-summary-head h2[data-v-cab94405]{margin:0}.btn-share[data-v-cab94405]{padding:6px 12px;font-size:13px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#475569;cursor:pointer}.btn-share[data-v-cab94405]:hover{background:#f1f5f9;border-color:#94a3b8}.week-summary-lead[data-v-cab94405]{margin:0}.article-lead[data-v-cab94405]{font-size:17px;line-height:1.65;color:#475569;margin:0}.article-section[data-v-cab94405]{margin-bottom:32px}.article-section h2[data-v-cab94405]{font-size:20px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.stats-grid[data-v-cab94405]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.stat-block[data-v-cab94405]{padding:16px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.stat-label[data-v-cab94405]{display:block;font-size:12px;color:#64748b;margin-bottom:6px;text-transform:uppercase;letter-spacing:.02em}.stat-value[data-v-cab94405]{font-size:18px;font-weight:700;color:#1e293b}.stat-value small[data-v-cab94405]{font-size:12px;font-weight:500;color:#64748b}.article-body[data-v-cab94405]{font-size:16px;line-height:1.75;color:#334155}.article-body[data-v-cab94405] br{display:block;content:"";margin:.4em 0}.article-body[data-v-cab94405] .body-h3{font-size:18px;font-weight:600;margin:20px 0 10px;color:#1e293b}.article-body[data-v-cab94405] .body-h4{font-size:16px;font-weight:600;margin:16px 0 8px;color:#334155}.article-body[data-v-cab94405] .body-ul{padding-left:1.5em;margin:12px 0}.article-body[data-v-cab94405] li{margin-bottom:6px}.article-notice[data-v-cab94405]{padding:14px 18px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px}.notice-text[data-v-cab94405]{margin:0;font-size:14px;color:#0369a1;line-height:1.5}.news-list[data-v-cab94405]{list-style:none;padding:0;margin:0}.news-item[data-v-cab94405]{padding:12px 0;border-bottom:1px solid #e2e8f0}.news-item[data-v-cab94405]:last-child{border-bottom:none}.news-title[data-v-cab94405]{display:block;font-weight:500;color:#1e293b;text-decoration:none;margin-bottom:4px;line-height:1.4}.news-title[data-v-cab94405]:hover{color:#6366f1;text-decoration:underline}.news-meta[data-v-cab94405]{font-size:13px;color:#64748b}.commodities-grid[data-v-cab94405]{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.commodity-card[data-v-cab94405]{padding:14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.commodity-name[data-v-cab94405]{display:block;font-size:13px;color:#64748b;margin-bottom:6px}.commodity-price[data-v-cab94405]{font-size:17px;font-weight:600;color:#1e293b}.commodity-price small[data-v-cab94405]{font-size:11px;font-weight:500;color:#64748b}.commodity-change[data-v-cab94405]{display:inline-block;margin-top:4px;font-size:12px;font-weight:500}.commodity-change.up[data-v-cab94405]{color:#b91c1c}.commodity-change.down[data-v-cab94405]{color:#166534}.article-footer[data-v-cab94405]{margin-top:40px;padding-top:24px;border-top:1px solid #e2e8f0}.article-note[data-v-cab94405]{font-size:14px;color:#64748b;line-height:1.6;margin:0}.article-related[data-v-cab94405]{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.article-related-label[data-v-cab94405]{font-size:13px;color:#94a3b8}.article-related a[data-v-cab94405]{font-size:14px;color:#6366f1;text-decoration:none}.article-related a[data-v-cab94405]:hover{text-decoration:underline}.weekly-content[data-v-cab94405]{font-size:16px;line-height:1.75}.weekly-content[data-v-cab94405] h2{font-size:20px;margin:24px 0 12px}.weekly-content[data-v-cab94405] h3{font-size:17px;margin:18px 0 8px}.weekly-content[data-v-cab94405] ul{padding-left:1.5em;margin:12px 0}.weekly-content[data-v-cab94405] li{margin-bottom:4px}.weekly-content[data-v-cab94405] br{display:block;content:"";margin:.35em 0}.error-msg[data-v-cab94405]{color:#dc2626}@media (max-width: 640px){.article-title[data-v-cab94405]{font-size:22px}.stats-grid[data-v-cab94405]{grid-template-columns:1fr 1fr}}.api-pre[data-v-ef59e812]{background:#1a202c;color:#e2e8f0;padding:14px 18px;border-radius:8px;overflow-x:auto;font-size:13px;line-height:1.5}.api-json[data-v-ef59e812]{white-space:pre-wrap;word-break:break-all}.api-table[data-v-ef59e812]{width:100%;border-collapse:collapse;font-size:14px}.api-table th[data-v-ef59e812],.api-table td[data-v-ef59e812]{border:1px solid #e2e8f0;padding:10px 12px;text-align:left}.api-table th[data-v-ef59e812]{background:#f7fafc;font-weight:600}.api-table code[data-v-ef59e812]{background:#edf2f7;padding:2px 6px;border-radius:4px;font-size:13px}.api-contact[data-v-ef59e812]{margin:12px 0 8px}.api-email[data-v-ef59e812]{color:#2b6cb0;text-decoration:none}.api-email[data-v-ef59e812]:hover{text-decoration:underline}.api-note[data-v-ef59e812]{color:#4a5568;font-size:14px;margin-top:8px}section[data-v-ef59e812]{margin-bottom:28px}section h2[data-v-ef59e812]{font-size:1.25rem;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}section h3[data-v-ef59e812]{font-size:1rem;margin:16px 0 8px}.monthly-form[data-v-db2e2472]{display:flex;flex-direction:column;gap:12px;max-width:480px}.form-row[data-v-db2e2472]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.form-row label[data-v-db2e2472]{min-width:52px;font-weight:500}.input-key[data-v-db2e2472]{flex:1;min-width:180px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px}.input-select[data-v-db2e2472]{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px}.label-month[data-v-db2e2472]{margin-left:8px}.btn-fetch[data-v-db2e2472]{align-self:flex-start;padding:10px 20px;background:#2b6cb0;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer}.btn-fetch[data-v-db2e2472]:hover:not(:disabled){background:#2c5282}.btn-fetch[data-v-db2e2472]:disabled{opacity:.6;cursor:not-allowed}.error-msg[data-v-db2e2472]{color:#c53030;margin-top:8px}.meta[data-v-db2e2472]{color:#4a5568;font-size:14px;margin-bottom:12px}.table-wrap[data-v-db2e2472]{overflow-x:auto}.monthly-table[data-v-db2e2472]{width:100%;border-collapse:collapse;font-size:12px}.monthly-table th[data-v-db2e2472],.monthly-table td[data-v-db2e2472]{border:1px solid #e2e8f0;padding:6px 8px;text-align:right}.monthly-table th[data-v-db2e2472]{background:#f7fafc;font-weight:600}.monthly-table .date-cell[data-v-db2e2472]{text-align:left;min-width:96px}.monthly-table .hour-col[data-v-db2e2472]{min-width:42px}.monthly-table .smp-cell[data-v-db2e2472]{min-width:40px}.monthly-table .stat-cell[data-v-db2e2472]{font-weight:500;min-width:52px}.api-pre[data-v-db2e2472]{background:#1a202c;color:#e2e8f0;padding:12px 14px;border-radius:8px;overflow-x:auto;font-size:13px}.api-note[data-v-db2e2472]{font-size:14px;color:#4a5568;margin-top:8px}section[data-v-db2e2472]{margin-bottom:28px}section h2[data-v-db2e2472]{font-size:1.25rem;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}section[data-v-8e86bffd]{margin-bottom:28px}section h2[data-v-8e86bffd]{font-size:1.25rem;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}section h3[data-v-8e86bffd]{font-size:1rem;margin:14px 0 8px;color:#2d3748}ul[data-v-8e86bffd]{margin:10px 0;padding-left:1.4em}li[data-v-8e86bffd]{margin-bottom:6px}section[data-v-209a48fc]{margin-bottom:28px}section h2[data-v-209a48fc]{font-size:1.25rem;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e2e8f0}.table-wrap[data-v-209a48fc]{overflow-x:auto;margin:12px 0}.terms-table[data-v-209a48fc]{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}.terms-table th[data-v-209a48fc],.terms-table td[data-v-209a48fc]{border:1px solid #e2e8f0;padding:10px 12px;text-align:left;vertical-align:top}.terms-table th[data-v-209a48fc]{background:#f7fafc;font-weight:600}.terms-table thead th[data-v-209a48fc]{white-space:nowrap}.th-sub[data-v-209a48fc]{display:block;font-size:11px;font-weight:500;color:#718096;margin-top:2px}.terms-table tbody tr[data-v-209a48fc]:nth-child(2n){background:#fafafa}@media (max-width: 640px){.terms-table[data-v-209a48fc]{font-size:13px}.terms-table th[data-v-209a48fc],.terms-table td[data-v-209a48fc]{padding:8px 10px}}.faq-section[data-v-d869d499]{margin-top:32px}.faq-list[data-v-d869d499]{margin:0;padding:0;list-style:none}.faq-item[data-v-d869d499]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.faq-item[data-v-d869d499]:last-child{border-bottom:none}.faq-question[data-v-d869d499]{font-weight:600;color:#1e293b;margin:0 0 8px;font-size:16px}.faq-answer[data-v-d869d499]{margin:0;color:#475569;line-height:1.6}.bill-calculator-section[data-v-5c7c92d3],.tou-calculator-section[data-v-5c7c92d3]{margin-top:24px}.calculator-desc[data-v-5c7c92d3]{font-size:13px;color:#64748b;margin-bottom:12px}.calculator-wrap[data-v-5c7c92d3]{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.calculator-input-row[data-v-5c7c92d3]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.calculator-input-row label[data-v-5c7c92d3]{font-weight:600;min-width:120px}.calculator-input-row input[data-v-5c7c92d3]{width:120px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:16px}.calculator-grid[data-v-5c7c92d3]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:12px}.calc-input label[data-v-5c7c92d3]{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.calc-input input[data-v-5c7c92d3]{width:100%;padding:8px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.calculator-result[data-v-5c7c92d3]{margin-top:12px;font-size:16px;color:#0f172a}.tou-result .breakdown[data-v-5c7c92d3]{font-size:12px;color:#64748b;font-weight:400;display:block;margin-top:4px}.faq-section[data-v-5c7c92d3]{margin-top:32px}.faq-list[data-v-5c7c92d3]{margin:0;padding:0;list-style:none}.faq-item[data-v-5c7c92d3]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.faq-item[data-v-5c7c92d3]:last-child{border-bottom:none}.faq-question[data-v-5c7c92d3]{font-weight:600;color:#1e293b;margin:0 0 8px;font-size:16px}.faq-answer[data-v-5c7c92d3]{margin:0;color:#475569;line-height:1.6}.solar-calculator-section[data-v-013681d0]{margin-top:24px}.calculator-desc[data-v-013681d0]{font-size:13px;color:#64748b;margin-bottom:12px}.calculator-wrap[data-v-013681d0]{background:#f8fafc;border-radius:8px;padding:16px}.calculator-grid[data-v-013681d0]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:12px}.calc-input label[data-v-013681d0]{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.calc-input input[data-v-013681d0]{width:100%;padding:8px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px}.calculator-result[data-v-013681d0]{font-size:15px;color:#1e293b}.calculator-result .breakdown[data-v-013681d0]{font-size:12px;color:#64748b;font-weight:400;display:block;margin-top:4px}.faq-section[data-v-013681d0]{margin-top:32px}.faq-list[data-v-013681d0]{margin:0;padding:0;list-style:none}.faq-item[data-v-013681d0]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.faq-item[data-v-013681d0]:last-child{border-bottom:none}.faq-question[data-v-013681d0]{font-weight:600;color:#1e293b;margin:0 0 8px;font-size:16px}.faq-answer[data-v-013681d0]{margin:0;color:#475569;line-height:1.6}.faq-section[data-v-3fc455c2]{margin-top:32px}.faq-list[data-v-3fc455c2]{margin:0;padding:0;list-style:none}.faq-item[data-v-3fc455c2]{margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.faq-item[data-v-3fc455c2]:last-child{border-bottom:none}.faq-question[data-v-3fc455c2]{font-weight:600;color:#1e293b;margin:0 0 8px;font-size:16px}.faq-answer[data-v-3fc455c2]{margin:0;color:#475569;line-height:1.6}.today-landing[data-v-20b39c2b]{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding:48px 24px}.today-container[data-v-20b39c2b]{max-width:720px;margin:0 auto}.today-header[data-v-20b39c2b]{text-align:center;color:#fff;margin-bottom:40px}.today-title[data-v-20b39c2b]{font-size:2rem;font-weight:700;margin:0 0 12px;letter-spacing:-.02em}.today-subtitle[data-v-20b39c2b]{font-size:1rem;opacity:.95;margin:0}.today-loading[data-v-20b39c2b]{text-align:center;color:#fff;padding:64px 24px}.loading-spinner[data-v-20b39c2b]{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-20b39c2b .8s linear infinite;margin:0 auto 16px}@keyframes spin-20b39c2b{to{transform:rotate(360deg)}}.today-content[data-v-20b39c2b]{background:#fffffff2;border-radius:20px;padding:32px 28px;box-shadow:0 8px 32px #0000001f}.today-summary-card[data-v-20b39c2b]{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:24px 28px;color:#fff;margin-bottom:24px}.summary-line[data-v-20b39c2b]{margin:0 0 8px;font-size:1.15rem;font-weight:500}.summary-label[data-v-20b39c2b]{font-weight:700;margin-right:8px}.summary-sep[data-v-20b39c2b]{opacity:.9;margin:0 8px}.summary-interp[data-v-20b39c2b]{font-size:.95em;opacity:.95}.summary-sub[data-v-20b39c2b]{margin:0;font-size:.95rem;opacity:.95}.today-stats[data-v-20b39c2b]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}@media (max-width: 600px){.today-stats[data-v-20b39c2b]{grid-template-columns:repeat(2,1fr)}}.stat-item[data-v-20b39c2b]{background:#f8fafc;border-radius:12px;padding:20px;text-align:center;border:1px solid #e2e8f0}.stat-label[data-v-20b39c2b]{display:block;font-size:.8rem;color:#64748b;margin-bottom:6px}.stat-value[data-v-20b39c2b]{font-size:1.5rem;font-weight:700;color:#1e293b}.stat-unit[data-v-20b39c2b]{font-size:.85rem;color:#64748b;margin-left:4px}.today-cta[data-v-20b39c2b]{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}.cta-btn[data-v-20b39c2b]{padding:14px 24px;border-radius:12px;font-weight:600;text-decoration:none;transition:all .2s}.cta-primary[data-v-20b39c2b]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cta-primary[data-v-20b39c2b]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #667eea66}.cta-secondary[data-v-20b39c2b]{background:#fff;color:#667eea;border:2px solid #667eea}.cta-secondary[data-v-20b39c2b]:hover{background:#f5f3ff}.today-info[data-v-20b39c2b]{padding-top:24px;border-top:1px solid #e2e8f0}.today-info h2[data-v-20b39c2b]{font-size:1.1rem;color:#334155;margin:0 0 12px}.today-info p[data-v-20b39c2b]{font-size:.95rem;color:#475569;line-height:1.6;margin:0}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f5f5f5;color:#333}#app{min-height:100vh}.container{max-width:1400px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.input-group{margin-bottom:16px}.input-group label{display:block;margin-bottom:8px;font-weight:500}.input-group input,.input-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.loading{text-align:center;padding:40px;color:#666}.error{background-color:#f8d7da;color:#721c24;padding:12px;border-radius:4px;margin-bottom:16px}.success{background-color:#d4edda;color:#155724;padding:12px;border-radius:4px;margin-bottom:16px}
