:root{color:#111827;background:#eef8fb;--surface: #ffffff;--surface-soft: #f8fbfd;--line: #d7e8ef;--line-strong: #a9cfda;--ink: #102a43;--muted: #526b83;--accent: #0891a6;--accent-dark: #0f5367;--warm: #f59e0b;--success: #22a870;--danger: #d84b45;--shadow: 0 18px 44px rgba(15, 83, 103, .12);font-family:Noto Sans TC,Microsoft JhengHei,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(circle at 8% 8%,rgba(87,190,207,.28),transparent 32%),radial-gradient(circle at 100% 0%,rgba(245,158,11,.16),transparent 30%),linear-gradient(112deg,#e8f8fc,#f5fbfd 48%,#f7efe6);background-attachment:fixed}button,input,select{font:inherit}input:disabled{color:#475569;cursor:not-allowed;background:#e9f0f8}button{cursor:pointer}.risk-shell{width:min(1520px,100%);margin:0 auto;padding:28px 30px}.hero-band{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;align-items:stretch;padding:24px;color:var(--ink);background:#ffffffb3;border-radius:0;min-height:142px;border:0;border-bottom:1px solid rgba(169,207,218,.55);box-shadow:0 18px 45px #0f536714;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.eyebrow,.section-kicker{margin:0 0 8px;color:#64748b;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.hero-band .eyebrow{color:var(--accent)}.hero-band h1{max-width:820px;margin:0;font-size:clamp(1.75rem,2.4vw,2.55rem);line-height:1.12;letter-spacing:0}.hero-copy{max-width:720px;margin:14px 0 0;color:var(--muted);font-size:1rem;line-height:1.65}.risk-badge{display:flex;flex-direction:column;justify-content:flex-end;gap:10px;min-height:130px;padding:22px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 28px #0f536714}.risk-badge span{color:#66766c;font-size:.85rem;font-weight:800}.risk-badge strong{font-size:2rem;line-height:1.1}.risk-badge p{margin:0;color:#5a665e}.risk-badge.safe{border-top:5px solid var(--success)}.risk-badge.watch{border-top:5px solid var(--warm)}.risk-badge.high{border-top:5px solid #f97316}.risk-badge.critical{border-top:5px solid #cf3d45}.workspace-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:22px;align-items:stretch}.app-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 0;padding:6px;background:#ffffffc7;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #0f536714}.app-tabs button{min-height:48px;color:#526b83;background:transparent;border:0;border-radius:8px;font-weight:900;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.app-tabs button:hover,.app-tabs button.active{color:#075f71;background:#fff;box-shadow:0 10px 24px #0891a621}.lower-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;margin-top:22px}.lower-grid.single{grid-template-columns:1fr}.panel,.warning-box{background:#fffffff5;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.panel{padding:22px}.workspace-grid>.panel,.workspace-grid>.results-area{min-height:auto;max-height:none;overflow:visible}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}h2{margin:0;color:var(--ink);font-size:1.28rem}.ghost-button{min-height:40px;padding:0 16px;color:#075f71;background:#fff;border:1px solid #c8e4ec;border-radius:999px;font-weight:800;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.ghost-button:hover{background:#e6f7fb;box-shadow:0 8px 20px #0891a626;transform:translateY(-1px)}.button-pair{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.segmented-control{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#e8f8fcbf;border:1px solid #c8e4ec;border-radius:10px;margin-bottom:18px}.segmented-control button,.chip{min-height:40px;color:#52635a;background:transparent;border:0;border-radius:7px;font-weight:800}.segmented-control button.active,.chip.active{color:#075f71;background:#fff;box-shadow:0 8px 22px #0891a624}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.wide-field{margin-top:14px}label{display:grid;gap:7px;color:#475569;font-size:.88rem;font-weight:800}input,select{width:100%;min-height:44px;padding:0 12px;color:var(--ink);background:#fcfeff;border:1px solid var(--line-strong);border-radius:8px;outline:none}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0891a624}.stress-row{display:grid;gap:10px;margin-top:18px}.stress-row>span{color:#59685f;font-size:.88rem;font-weight:800}.chip-row{display:grid;grid-template-columns:repeat(6,minmax(72px,1fr));gap:6px}.chip{background:#edf7fb;border:1px solid var(--line)}.contract-strip{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.contract-strip span{padding:7px 10px;color:#075f71;background:#e7f7fb;border-radius:7px;font-size:.84rem;font-weight:800}.source-note{margin:12px 0 0;color:#6b746e;font-size:.9rem;line-height:1.6}.strong-note{color:#0891a6;font-weight:800}.results-area{display:grid;align-content:start;gap:14px}.tracker-panel{border-color:var(--line-strong)}.tracker-heading{align-items:start}.ghost-button:disabled{cursor:not-allowed;opacity:.48}.tracker-controls{display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) minmax(220px,.8fr);gap:12px}.toggle-label{align-content:center;grid-template-columns:18px 1fr;grid-column:auto;min-height:48px;padding:12px;color:#334155;background:#f7fbfd;border:1px solid var(--line);border-radius:8px}.quote-toggle{min-height:44px}.toggle-label input{width:18px;min-height:18px;margin:2px 0 0;padding:0}.tracker-status{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tracker-status span{padding:7px 10px;color:#475569;background:#f7fbfd;border:1px solid var(--line);border-radius:7px;font-size:.84rem;font-weight:800}.tolerance-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.tolerance-grid.compact{margin-top:16px}.tolerance-grid article{min-height:112px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:10px;border-top:4px solid var(--accent)}.tolerance-grid article:nth-child(2),.tolerance-grid article:nth-child(5){border-top-color:var(--warm);background:linear-gradient(180deg,#fffdf8,#fff)}.tolerance-grid article:nth-child(4),.tolerance-grid article:nth-child(6){border-top-color:#f97316}.tolerance-grid span{color:#64748b;font-size:.82rem;font-weight:900}.tolerance-grid strong{display:block;margin:10px 0 8px;color:#14231b;font-size:1.14rem;line-height:1.25;overflow-wrap:anywhere}.tolerance-grid small{color:#65736b;line-height:1.5}.positive{color:var(--success)!important}.negative{color:var(--danger)!important}.result-summary{margin:-22px -22px 8px;padding:18px 22px;color:#fff;background:linear-gradient(95deg,var(--accent-dark),#0f93a7);border-radius:12px 12px 0 0;border:0;box-shadow:none}.result-summary .section-kicker,.result-summary h2,.result-summary p:last-child{color:#fff}.result-summary p:last-child{margin:10px 0 0;line-height:1.7}.warning-box{display:grid;gap:8px;padding:14px 16px;color:#835116;background:#fff8e7;border-color:#f1d69a}.card-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.subsection{display:grid;gap:12px}.subsection+.subsection{margin-top:8px}.subsection-heading h3{margin:0;color:var(--ink);font-size:1.05rem}.split-section{grid-template-columns:minmax(340px,.75fr) minmax(0,1.25fr);gap:16px;align-items:start}.check-grid{display:grid;gap:8px}.check-card{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;min-height:74px;padding:12px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:10px}.check-card span{color:#68756d;font-size:.78rem;font-weight:900}.check-card strong{color:var(--ink)}.check-card small{grid-column:1 / -1;color:var(--muted);line-height:1.45}.check-card.pass{border-left-color:var(--success)}.check-card.watch{border-left-color:var(--warm)}.check-card.fail{border-left-color:var(--danger)}.metric-card{display:grid;align-content:space-between;min-height:112px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:10px;border-top:4px solid var(--accent);box-shadow:none}.metric-card:nth-child(2n){border-top-color:var(--warm);background:linear-gradient(180deg,#fffdf7,#fff)}.metric-card:nth-child(4n){border-top-color:#f97316}.scenario-panel{margin-top:16px;padding:0;overflow:hidden}.scenario-panel .section-kicker,.scenario-panel h2{color:#fff}.scenario-header{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:18px;align-items:stretch;padding:24px;background:linear-gradient(95deg,var(--accent-dark),#0f93a7);border-bottom:1px solid #d7e8ef}.scenario-note{margin:10px 0 0;color:#ffffffd1;font-size:.9rem;line-height:1.65}.recommendation-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.recommendation-row article{min-height:92px;padding:14px;background:#f8fcfb;border:1px solid #cfe7df;border-radius:10px;border-top:4px solid #22a870}.recommendation-row .primary-recommendation{border-top-color:var(--warm);background:linear-gradient(180deg,#fffdf7,#fff)}.recommendation-row span{color:#5f6f66;font-size:.82rem;font-weight:900}.recommendation-row strong{display:block;margin:8px 0 4px;color:#173023;font-size:1.45rem}.recommendation-row small{color:#68766d}.table-wrap{overflow-x:auto}table{width:100%;min-width:980px;border-collapse:collapse}.compact-table table{min-width:760px}th,td{padding:13px 14px;text-align:right;border-bottom:1px solid #e4ebe5;white-space:nowrap}th:first-child,td:first-child{text-align:left}th{color:#526b83;background:#f4f9fb;font-size:.82rem}td{color:#223028;font-size:.92rem}tr.selected td{background:#eaf8f4;font-weight:900}tr.critical td{color:#9f2730}tr.high td{color:#9a4f13}.metric-card span{color:#68756d;font-size:.78rem;font-weight:800}.metric-card strong{margin:8px 0 6px;color:#15231c;font-size:1.08rem;line-height:1.2;overflow-wrap:anywhere}.metric-card small{color:#637169;line-height:1.4;font-size:.8rem}.notes-panel dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0}.notes-panel div{padding:14px;background:#f7faf7;border:1px solid #e1e9e3;border-radius:8px}.notes-panel dt{color:#243e31;font-weight:900}.notes-panel dd{margin:7px 0 0;color:#5f6c64;line-height:1.6}.disclaimer-panel p:last-child{margin:18px 0 0;color:#5f6c64;line-height:1.8}.technical-shell{display:grid;gap:16px;margin-top:16px}.technical-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.46fr);gap:18px;align-items:end}.technical-hero p:not(.section-kicker){max-width:760px;margin:10px 0 0;color:var(--muted);line-height:1.7}.technical-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.technical-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:16px}.compact-heading{align-items:start}.data-pill{max-width:520px;padding:8px 12px;color:#075f71;background:#e7f7fb;border:1px solid #c8e4ec;border-radius:999px;font-size:.82rem;font-weight:800;line-height:1.45}.data-pill.loading{color:#835116;background:#fff8e7;border-color:#f1d69a}.candle-chart{display:block;width:100%;min-height:570px;background:#fff;border:1px solid var(--line);border-radius:12px}.candle-chart rect:first-child{fill:transparent}.candle-chart text{fill:#667085;font-size:13px;font-weight:800}.chart-pane-title{fill:#475569;font-size:13px;font-weight:900}.price-axis-label,.level-label{fill:#475569;font-size:12px;font-weight:800}.level-label.resistance{fill:#c53f3f}.level-label.support{fill:#0f9f7a}.axis-line{stroke:#d9e9ef;stroke-width:1}.grid-line{stroke:#e7eef2;stroke-width:1}.grid-line.vertical{stroke:#eef4f6}.candle line{stroke-width:1.25;vector-effect:non-scaling-stroke}.candle.up line,.candle.up rect{stroke:#089981;fill:#089981}.candle.down line,.candle.down rect{stroke:#f23645;fill:#f23645}.ma-line{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.ma5{stroke:#0891a6}.ma10{stroke:#f59e0b}.ma20{stroke:#ec4899}.ma60{stroke:#65a30d}.ma120{stroke:#f59e0b}.ma240{stroke:#596bdb}.indicator-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 12px;align-items:center}.toolbar-label{padding:7px 10px;color:#526b83;background:transparent;border:0;font-size:.78rem;font-weight:900}.indicator-toggle{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;color:#526b83;background:#fff;border:1px solid var(--line);border-radius:7px;font-size:.78rem;font-weight:900;transition:border-color .16s ease,background .16s ease,color .16s ease}.indicator-toggle span{width:12px;height:12px;border:2px solid #b8cbd4;border-radius:3px;background:#fff}.indicator-toggle.active{color:var(--ink);background:#f7fcfe;border-color:#b9dfe8}.indicator-toggle.active span{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 2px #fff}.indicator-toggle.ma5.active span{background:#0891a6;border-color:#0891a6}.indicator-toggle.ma10.active span,.indicator-toggle.ma120.active span,.indicator-toggle.tradePlan.active span{background:#f59e0b;border-color:#f59e0b}.indicator-toggle.ma20.active span,.indicator-toggle.sr.active span{background:#ec4899;border-color:#ec4899}.indicator-toggle.ma60.active span{background:#65a30d;border-color:#65a30d}.indicator-toggle.ma240.active span{background:#596bdb;border-color:#596bdb}.subchart-tabs{display:inline-grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:6px;padding:5px;margin:0 0 12px;background:#edf7fb;border:1px solid var(--line);border-radius:10px}.subchart-tabs button{min-height:34px;color:#526b83;background:transparent;border:0;border-radius:7px;font-weight:900}.subchart-tabs button.active{color:#075f71;background:#fff;box-shadow:0 8px 18px #0891a61f}.bb-fill{fill:#0891a60f}.bb-line{fill:none;stroke:#0891a661;stroke-width:1.2;stroke-dasharray:4 5}.support-line,.resistance-line{stroke-width:1.8;stroke-dasharray:7 7}.support-line{stroke:#22a870c7}.resistance-line{stroke:#d84b45c7}.stop-line,.target-line{stroke-width:2;stroke-dasharray:8 7}.stop-line{stroke:#d84b45}.target-line{stroke:#22a870}.pane-divider{stroke:#cfe3ea;stroke-width:1.2}.volume-bar{opacity:.56}.volume-bar.up{fill:#22a870}.volume-bar.down{fill:#d84b45}.rsi-guide{stroke:#f59e0b8c;stroke-width:1;stroke-dasharray:5 6}.rsi-line{fill:none;stroke:#596bdb;stroke-width:2}.macd-zero{stroke:#cbd9e2;stroke-width:1}.macd-bar{opacity:.62}.macd-bar.positive{fill:#22a870}.macd-bar.negative{fill:#d84b45}.macd-line{fill:none;stroke-width:1.9}.macd-line.main{stroke:#0891a6}.macd-line.signal{stroke:#f59e0b}.chart-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.chart-legend span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;color:#526b83;background:#f7fbfd;border:1px solid var(--line);border-radius:999px;font-size:.78rem;font-weight:900}.chart-legend span:before{content:"";width:10px;height:10px;border-radius:999px;background:var(--accent)}.legend-up:before{background:#22a870!important}.legend-down:before{background:#d84b45!important}.legend-ma20:before,.legend-stop:before{background:var(--warm)!important}.legend-ma10:before{background:#f59e0b!important}.legend-ma20:before{background:#ec4899!important}.legend-ma60:before{background:#65a30d!important}.legend-ma120:before{background:#f59e0b!important}.legend-ma240:before{background:#596bdb!important}.legend-bb:before{background:#0891a673!important}.legend-volume:before{background:#8aa1b4!important}.legend-rsi:before{background:#596bdb!important}.legend-sr:before{background:#d84b45!important}.signal-panel{display:grid;align-content:start;gap:14px}.direction-score{min-height:162px;padding:22px;color:#fff;background:linear-gradient(95deg,var(--accent-dark),#0f93a7);border-radius:12px}.direction-score.bearish{background:linear-gradient(95deg,#8a2e35,#d84b45)}.direction-score.neutral{background:linear-gradient(95deg,#56657a,#8190a7)}.direction-score span,.direction-score small{display:block;color:#ffffffd6;font-weight:900}.direction-score strong{display:block;margin:10px 0 6px;font-size:3rem;line-height:1}.analysis-summary{margin:0;color:var(--muted);line-height:1.75}.quick-levels{display:grid;gap:10px}.quick-levels article{padding:14px;background:#f8fcfb;border:1px solid var(--line);border-radius:10px}.quick-levels span,.quick-levels small{color:#65736b;font-size:.82rem;font-weight:800}.quick-levels strong{display:block;margin:8px 0 4px;color:var(--ink);font-size:1.26rem}.technical-risk-card{display:grid;gap:7px;padding:16px;background:#f8fcfb;border:1px solid var(--line);border-left:5px solid var(--success);border-radius:10px}.technical-risk-card.watch{border-left-color:var(--warm);background:linear-gradient(180deg,#fffdf7,#fff)}.technical-risk-card.danger{border-left-color:var(--danger);background:linear-gradient(180deg,#fff7f7,#fff)}.technical-risk-card span,.technical-risk-card small{color:#65736b;font-size:.82rem;font-weight:800}.technical-risk-card strong{color:var(--ink);font-size:1.32rem}.technical-risk-card p{margin:0;color:var(--muted);line-height:1.6}.apply-feedback{margin:0;padding:10px 12px;color:#075f71;background:#e7f7fb;border:1px solid #c8e4ec;border-radius:10px;font-size:.88rem;font-weight:800}.indicator-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.technical-metric{min-height:128px}.technical-bottom-grid{display:grid;grid-template-columns:minmax(360px,.65fr) minmax(0,1.35fr);gap:16px}.signal-list{display:grid;gap:10px;margin-top:14px}.signal-row{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:14px;background:#fff;border:1px solid var(--line);border-left:5px solid #8aa1b4;border-radius:10px}.signal-row.bullish{border-left-color:var(--success)}.signal-row.bearish{border-left-color:var(--danger)}.signal-row.neutral{border-left-color:#8aa1b4}.signal-row span{color:#475569;font-weight:900}.signal-row strong{color:var(--ink)}.signal-row p{grid-column:1 / -1;margin:0;color:var(--muted);line-height:1.6}.forecast-panel table{min-width:860px}.technical-note{margin:14px 0 0;padding:12px 14px;color:#64748b;background:#f7fbfd;border:1px solid var(--line);border-radius:10px;line-height:1.7}@media(max-width:1100px){.workspace-grid,.scenario-header,.lower-grid,.hero-band,.technical-hero,.technical-grid,.technical-bottom-grid{grid-template-columns:1fr}.workspace-grid>.panel,.workspace-grid>.results-area{min-height:auto;max-height:none;overflow:visible}.risk-badge{min-height:150px}.form-grid,.tolerance-grid,.card-grid,.split-section,.indicator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tracker-controls{grid-template-columns:1fr 1fr}.toggle-label{grid-column:1 / -1}}@media(max-width:760px){.risk-shell{padding:14px}.hero-band,.panel,.result-summary{padding:20px}.form-grid,.card-grid,.tracker-controls,.tolerance-grid,.recommendation-row,.split-section,.notes-panel dl,.technical-controls,.indicator-grid,.app-tabs,.subchart-tabs{grid-template-columns:1fr}.chip-row{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-grid{grid-template-columns:1fr}}
