:root {
  --bg: #11100e;
  --sidebar: #151310;
  --surface: #1b1916;
  --surface-2: #24211c;
  --line: #3a342b;
  --line-soft: rgba(194, 171, 128, .14);
  --text: #f3eee4;
  --muted: #9c9282;
  --cyan: #d7a84d;
  --cyan-soft: rgba(215, 168, 77, .11);
  --green: #42d28c;
  --red: #f05d70;
  --orange: #d7a84d;
  --purple: #b99262;
  --blue: #c6a66c;
  --radius: 16px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans TC", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--text); background: var(--bg); min-width: 320px; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
.app-shell { min-height: 100vh; }
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; width: 238px; padding: 26px 18px; background: linear-gradient(180deg, #181612 0%, #100f0d 100%); border-right: 1px solid var(--line-soft); display: flex; flex-direction: column; }
.brand { display: flex; align-items: center; gap: 11px; padding: 4px 10px 30px; color: var(--text); text-decoration: none; font-size: 20px; letter-spacing: -.4px; }
.brand strong { color: var(--cyan); letter-spacing:.6px; }
.brand>span:last-child { display:flex; flex-direction:column; line-height:1.05; }
.brand small { color:#8e8372; font-size:9px; letter-spacing:2.5px; margin-top:5px; }
.brand-mark { width: 31px; height: 31px; border-radius: 9px; background: linear-gradient(145deg, rgba(215,168,77,.2), rgba(255,255,255,.025)); border: 1px solid rgba(215,168,77,.28); display: flex; align-items: end; justify-content: center; gap: 3px; padding: 7px; }
.brand-mark i { display: block; width: 3px; border-radius: 4px; background: var(--cyan); box-shadow: 0 0 10px rgba(215,168,77,.35); }
.brand-mark i:nth-child(1) { height: 9px; }.brand-mark i:nth-child(2) { height: 17px; }.brand-mark i:nth-child(3) { height: 13px; }
.nav-label { margin: 5px 11px 10px; color: #506a81; font-size: 10px; font-weight: 700; letter-spacing: 1.4px; }
.nav-label-spaced { margin-top: 26px; }
.side-nav { display: flex; flex-direction: column; }
.nav-item { position: relative; display: flex; align-items: center; gap: 12px; min-height: 46px; padding: 0 13px; margin: 2px 0; color: #8299ad; text-decoration: none; font-size: 14px; font-weight: 600; border-radius: 10px; transition: .2s ease; }
.nav-item:hover { color: var(--text); background: rgba(255,255,255,.035); }
.nav-item.active { color: var(--cyan); background: linear-gradient(90deg, rgba(215,168,77,.13), rgba(215,168,77,.025)); }
.nav-item.active::before { content:""; position:absolute; left:-18px; width:3px; height:24px; border-radius:0 4px 4px 0; background:var(--cyan); box-shadow:0 0 12px rgba(215,168,77,.4); }
.admin-only-nav { display:none; }
body.admin-unlocked .admin-only-nav { display:flex; }
.nav-icon { display:grid; place-items:center; width:22px; color:currentColor; font-size:18px; }
.sidebar-foot { margin-top: auto; padding: 15px 10px 2px; border-top: 1px solid var(--line-soft); }
.sidebar-foot p { color:#4f667a; font-size:11px; line-height:1.65; margin:11px 0 0; }
.live-pill { display:flex; align-items:center; gap:8px; color:#83a0b6; font-size:11px; }
.live-dot { width:7px; height:7px; border-radius:50%; display:inline-block; background:var(--green); box-shadow:0 0 0 4px rgba(66,210,140,.09), 0 0 12px rgba(66,210,140,.5); }
.main { min-height: 100vh; margin-left: 238px; }
.topbar { position: sticky; top:0; z-index:15; height:64px; display:flex; align-items:center; justify-content:space-between; padding:0 30px; background:rgba(17,16,14,.9); border-bottom:1px solid var(--line-soft); backdrop-filter:blur(18px); }
.market-tape { display:flex; gap:25px; color:#91a8bb; font-size:12px; }
.tape-coin b { color:#d8e4ed; margin-right:5px; }
.tape-coin em { font-style:normal; margin-left:6px; }
.top-tabs { display:flex; align-items:center; gap:6px; margin-left:18px; padding:4px; border:1px solid rgba(194,171,128,.12); border-radius:999px; background:rgba(255,255,255,.018); overflow-x:auto; scrollbar-width:none; }
.top-tabs::-webkit-scrollbar { display:none; }
.top-tab,.mode-chip,.mode-lock { flex:0 0 auto; min-height:28px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; white-space:nowrap; font-size:10px; font-weight:750; text-decoration:none; }
.top-tab { padding:0 11px; color:#8f8474; transition:.2s ease; }
.top-tab:hover { color:#f0dfbd; background:rgba(215,168,77,.06); }
.top-tab.active { color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); box-shadow:0 0 18px rgba(215,168,77,.12); }
.mode-chip { padding:0 10px; color:#8ee6b9; border:1px solid rgba(66,210,140,.16); background:rgba(66,210,140,.06); }
.mode-lock { padding:0 10px; color:#d7a84d; border:1px solid rgba(215,168,77,.13); background:rgba(215,168,77,.045); }
.top-actions { display:flex; align-items:center; gap:13px; }
.clock { color:#607a90; font-size:11px; }
.login-button { min-height:34px; padding:0 13px; border:1px solid rgba(215,168,77,.2); border-radius:999px; color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); font-size:10px; font-weight:850; cursor:pointer; box-shadow:0 0 18px rgba(215,168,77,.1); }
.login-button:hover { filter:brightness(1.06); }
.full-mode .login-button { color:#d7a84d; background:rgba(215,168,77,.055); }
.icon-button,.menu-button { border:1px solid var(--line); background:#201d19; border-radius:9px; cursor:pointer; }
.icon-button { width:34px; height:34px; font-size:18px; color:#8fa7b9; }
.icon-button:hover { color:var(--cyan); border-color:rgba(46,211,199,.45); }
.menu-button { display:none; width:36px; height:36px; }
.content { max-width: 1480px; margin: 0 auto; padding: 34px 34px 60px; }
.demo-banner { display:flex; align-items:center; gap:13px; margin:0 0 18px; padding:14px 16px; border:1px solid rgba(215,168,77,.22); border-radius:14px; background:linear-gradient(135deg, rgba(215,168,77,.095), rgba(240,93,112,.035)); }
.demo-banner span { flex:0 0 auto; padding:6px 9px; border-radius:999px; color:#17130c; background:#d7a84d; font-size:9px; font-weight:900; letter-spacing:.8px; }
.demo-banner p { margin:0; color:#d3c4aa; font-size:11px; line-height:1.65; }
.demo-banner[hidden] { display:none; }
.access-status { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:18px; align-items:center; margin:0 0 18px; padding:17px 18px; border-color:rgba(215,168,77,.18); background:linear-gradient(145deg,rgba(31,29,25,.99),rgba(19,18,16,.99)); }
.access-status h2 { margin:0; font-size:18px; letter-spacing:-.35px; }
.access-status p:not(.eyebrow) { max-width:660px; margin:6px 0 0; color:#a99c88; font-size:11px; line-height:1.7; }
.data-mode-row { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:11px; }
.data-mode-pill { display:inline-flex; align-items:center; gap:6px; padding:6px 9px; border-radius:999px; font-size:9px; font-weight:950; letter-spacing:.6px; }
.data-mode-pill::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 10px currentColor; }
.data-mode-pill.demo { color:#d7a84d; background:rgba(215,168,77,.08); border:1px solid rgba(215,168,77,.16); }
.data-mode-pill.live { color:#8ee6b9; background:rgba(66,210,140,.08); border:1px solid rgba(66,210,140,.16); }
.data-mode-row small { color:#756b5d; font-size:9px; }
.access-progress { display:flex; gap:7px; padding:5px; border:1px solid rgba(194,171,128,.12); border-radius:999px; background:rgba(255,255,255,.018); }
.access-step { min-width:58px; padding:7px 9px; border-radius:999px; color:#756b5d; background:rgba(255,255,255,.018); text-align:center; font-size:9px; font-weight:900; letter-spacing:.5px; }
.access-step.done { color:#8ee6b9; border:1px solid rgba(66,210,140,.14); background:rgba(66,210,140,.055); }
.access-step.active { color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); box-shadow:0 0 18px rgba(215,168,77,.12); }
.access-action { white-space:nowrap; }
body[data-access="guest"] .access-status { border-color:rgba(215,168,77,.16); }
body[data-access="pending"] .access-status { border-color:rgba(66,210,140,.2); }
body[data-access="verified"] .access-status,body[data-access="vvip"] .access-status { border-color:rgba(215,168,77,.28); box-shadow:0 16px 42px rgba(215,168,77,.06); }
.page { display:none; animation:fadeIn .32s ease both; }
.page.active { display:block; }
@keyframes fadeIn { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }
.page-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:25px; }
.eyebrow,.card-kicker { margin:0 0 6px; color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:1.65px; }
h1 { margin:0; font-size:29px; letter-spacing:-.8px; }
.subheading { color:var(--muted); margin:8px 0 0; font-size:13px; }
.updated { display:flex; align-items:center; gap:9px; color:#617b91; font-size:11px; }
.updated b { color:#8ca4b7; font-weight:600; }
.card { background:linear-gradient(145deg, rgba(31,29,25,.99), rgba(23,21,18,.99)); border:1px solid var(--line); border-radius:var(--radius); box-shadow:0 14px 40px rgba(0,0,0,.18); }
.hero-grid { display:grid; grid-template-columns:minmax(0,1.75fr) minmax(300px,.75fr); gap:16px; }
.price-hero { padding:22px 24px 18px; overflow:hidden; }
.card-topline,.card-header { display:flex; align-items:flex-start; justify-content:space-between; }
.coin-title { display:flex; align-items:center; gap:11px; }
.coin-title div { display:flex; flex-direction:column; gap:2px; }
.coin-title strong { font-size:14px; }
.coin-title small { color:var(--muted); font-size:10px; }
.coin-logo { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; font-size:21px; font-weight:700; }
.coin-logo.btc { color:#101827; background:linear-gradient(145deg,#ffbd55,#f49128); box-shadow:0 0 23px rgba(244,170,83,.16); }
.source-tag { align-self:flex-start; padding:5px 7px; border:1px solid rgba(102,135,161,.22); border-radius:5px; color:#627f95; font-size:8px; font-weight:700; letter-spacing:.6px; background:rgba(255,255,255,.015); }
.price-row { display:flex; align-items:center; gap:17px; margin-top:18px; }
.currency { color:#b6c7d5; font-size:26px; vertical-align:7px; }
.hero-price { font-size:42px; font-weight:700; letter-spacing:-1.5px; }
.change-badge { padding:6px 9px; border-radius:6px; font-size:11px; font-weight:700; }
.change-badge.up { background:rgba(66,210,140,.11); border:1px solid rgba(66,210,140,.16); }
.sparkline-wrap { margin-top:-2px; }
.sparkline { display:block; width:100%; height:115px; overflow:visible; }
.spark-line { fill:none; stroke:var(--cyan); stroke-width:2; vector-effect:non-scaling-stroke; filter:drop-shadow(0 0 5px rgba(215,168,77,.2)); }
.spark-area { fill:url(#heroFill); }
.chart-labels { display:flex; justify-content:space-between; color:#405d74; font-size:8px; margin-top:-12px; }
.price-stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line-soft); margin-top:16px; padding-top:14px; }
.price-stats div { display:flex; flex-direction:column; gap:4px; }
.price-stats small { color:#60798f; font-size:9px; }
.price-stats strong { color:#cbd8e2; font-size:12px; }
.fear-card { padding:21px 22px; }
.card-header h2 { margin:0; font-size:15px; letter-spacing:-.2px; }
.gauge { position:relative; width:230px; height:119px; margin:28px auto 0; overflow:hidden; }
.gauge-ring { position:absolute; inset:0; width:230px; height:230px; border-radius:50%; background:conic-gradient(from 270deg, #f05d70 0 20%, #f4aa53 20% 35%, #e4cc41 35% 50%, #8fcf4e 50% 70%, #42d28c 70% 100%); -webkit-mask:radial-gradient(farthest-side, transparent 69%, #000 70%); mask:radial-gradient(farthest-side, transparent 69%, #000 70%); }
.gauge::after { content:""; position:absolute; inset:12px; width:206px; height:206px; border-radius:50%; border:1px solid rgba(255,255,255,.025); }
.gauge-needle { position:absolute; z-index:3; bottom:0; left:50%; width:75px; height:2px; transform-origin:left center; transform:rotate(221deg); background:#eaf3fb; box-shadow:0 0 7px rgba(255,255,255,.4); }
.gauge-needle::before { content:""; position:absolute; left:-5px; top:-4px; width:10px; height:10px; border-radius:50%; background:#dce7ef; }
.gauge-center { position:absolute; z-index:4; left:50%; bottom:0; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; }
.gauge-center strong { font-size:30px; line-height:1; }
.gauge-center span { color:#f2a05b; font-size:10px; margin-top:4px; }
.gauge-scale { display:flex; justify-content:space-between; color:#4f6b81; font-size:8px; padding:7px 15px 0; }
.sentiment-note { display:flex; align-items:center; gap:10px; margin-top:16px; padding:11px 12px; border-radius:9px; background:rgba(240,93,112,.055); border:1px solid rgba(240,93,112,.1); }
.sentiment-note>span { color:var(--red); font-size:18px; }
.sentiment-note div { display:flex; flex-direction:column; gap:2px; }
.sentiment-note strong { color:#d6e0e8; font-size:10px; }.sentiment-note small { color:#627a8f; font-size:8px; }
.metric-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:16px; }
.metric-card { position:relative; min-height:151px; padding:19px 19px 15px; overflow:hidden; }
.metric-icon { position:absolute; right:16px; top:15px; display:grid; place-items:center; width:29px; height:29px; border-radius:8px; font-size:13px; }
.metric-icon.purple { color:#a69eff;background:rgba(136,126,245,.12);}.metric-icon.blue{color:#70beff;background:rgba(74,169,255,.12)}.metric-icon.green{color:#63e0a4;background:rgba(66,210,140,.12)}.metric-icon.orange{color:#f7b96f;background:rgba(244,170,83,.12)}
.metric-head { display:flex; flex-direction:column; align-items:flex-start; gap:7px; color:#7e96aa; font-size:10px; }
.metric-value { display:block; margin:14px 0 10px; font-size:25px; letter-spacing:-.6px; }
.metric-footer { display:flex; align-items:center; justify-content:space-between; }
.metric-footer span { font-size:10px;font-weight:700}.metric-footer small{color:#526c81;font-size:8px}
.up { color:var(--green)!important; }.down{color:var(--red)!important}.neutral{color:var(--orange)!important}
.ratio-bar { height:4px; border-radius:8px; overflow:hidden; background:rgba(240,93,112,.55); }
.ratio-bar i { display:block;height:100%;background:var(--green); }
.ratio-labels { display:flex;justify-content:space-between;margin-top:7px;color:#6d879b;font-size:8px}
.lower-grid,.two-col { display:grid; grid-template-columns:1.15fr .85fr; gap:16px; margin-top:16px; }
.compact-table-card,.activity-card,.order-wall,.line-chart-card { padding:20px; }
.text-button { border:0;background:none;color:var(--cyan);font-size:9px;cursor:pointer}
.mini-table { margin-top:13px; }
.mini-row { display:grid; grid-template-columns:25px 29px 1.2fr .8fr .7fr; align-items:center; min-height:49px; border-top:1px solid var(--line-soft); font-size:10px; }
.mini-row:first-child { border-top:0; }
.rank { color:#546f84; }.token-icon{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;font-weight:800;font-size:10px}.token-icon.rif{background:#312741;color:#c79cf2}.token-icon.eigen{background:#18344b;color:#70c7ff}.token-icon.axs{background:#263759;color:#8caefb}
.mini-row div { display:flex;flex-direction:column;gap:2px}.mini-row small{color:#536e83;font-size:8px}.mini-row>span:nth-child(4){color:#9eb0be}.mini-row strong{text-align:right}
.pulse-ring { width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px rgba(46,211,199,.08),0 0 10px rgba(46,211,199,.5);margin:5px}
.activity-list { margin-top:10px; }
.activity-list>div { display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:50px;border-top:1px solid var(--line-soft); }
.activity-list>div:first-child{border-top:0}.side-badge{display:grid;place-items:center;width:27px;height:25px;border-radius:6px;font-size:9px;font-weight:700}.side-badge.sell{color:var(--red);background:rgba(240,93,112,.1)}.side-badge.buy{color:var(--green);background:rgba(66,210,140,.1)}
.activity-list p{display:flex;flex-direction:column;gap:3px;margin:0}.activity-list b{font-size:10px}.activity-list small{font-size:8px;color:#587287}.activity-list strong{font-size:10px}
.chart-card { padding:22px; }
.chart-toolbar { align-items:center; }
.segmented { display:flex; padding:3px; border:1px solid var(--line); background:#091625;border-radius:9px; }
.segmented button { min-width:44px;padding:6px 10px;border:0;border-radius:6px;background:none;color:#5d788e;font-size:10px;cursor:pointer}.segmented button.active{background:#173149;color:var(--cyan);box-shadow:inset 0 0 0 1px rgba(46,211,199,.16)}
.chart-summary { display:flex;align-items:center;gap:14px;margin-top:18px}.chart-summary strong{font-size:24px}.chart-summary span{font-size:10px}
.candle-chart { height:310px; margin-top:12px; }
.chart-svg { width:100%;height:100%;overflow:visible}.grid-line{stroke:#173048;stroke-width:1}.axis-text{fill:#506b81;font-size:9px}.chart-path{fill:none;stroke:var(--cyan);stroke-width:2}.chart-fill{fill:url(#lineFill)}.zero-line{stroke:#3e586c;stroke-dasharray:3 4}.candle-wick{stroke-width:1}.candle-body{rx:1}
.line-chart-card { min-height:250px; }.line-chart-card>.card-header>strong{font-size:13px}.line-chart,.bar-chart{height:175px;margin-top:13px}
.wall-columns { display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:15px}.wall-columns h3{font-size:10px;margin:0 0 8px}.wall-row{display:grid;grid-template-columns:70px 1fr 70px;align-items:center;gap:10px;min-height:42px;border-top:1px solid var(--line-soft);font-size:9px}.wall-row>span{height:5px;background:#11263a;border-radius:5px;overflow:hidden}.wall-row>span i{display:block;height:100%;background:var(--green);opacity:.6}.wall-row.ask>span i{background:var(--red)}.wall-row strong{text-align:right}.fine-print{color:#4f687c;font-size:8px;margin:12px 0 0}
.extended { max-height:190px;overflow:auto;padding-right:4px }
.ranking-card,.options-card { padding:20px 22px; }
.ranking-tools { display:flex;justify-content:space-between;gap:18px;margin-bottom:18px}.search-box{display:flex;align-items:center;gap:9px;flex:1;max-width:420px;height:38px;padding:0 13px;border:1px solid var(--line);background:#091624;border-radius:9px;color:#5d768a}.search-box input{width:100%;border:0;outline:0;background:none;color:var(--text);font-size:11px}.search-box input::placeholder{color:#486276}
.table-wrap { overflow-x:auto; }
table{width:100%;border-collapse:collapse;white-space:nowrap}th{padding:12px 11px;color:#506b80;text-align:right;font-size:8px;font-weight:700;letter-spacing:.5px;border-bottom:1px solid var(--line)}th:nth-child(1),th:nth-child(2){text-align:left}td{padding:14px 11px;text-align:right;font-size:10px;color:#9aafbf;border-bottom:1px solid var(--line-soft)}td:nth-child(1),td:nth-child(2){text-align:left}tbody tr:hover{background:rgba(255,255,255,.012)}tbody tr:last-child td{border-bottom:0}.coin-cell{display:flex;align-items:center;gap:9px}.coin-cell span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#152a3e;color:var(--cyan);font-size:9px;font-weight:800}.coin-cell div{display:flex;flex-direction:column;gap:2px}.coin-cell b{color:#dbe7ee;font-size:10px}.coin-cell small{color:#4d687e;font-size:8px}.change-cell{display:inline-block;min-width:62px;padding:5px 7px;border-radius:5px;background:rgba(66,210,140,.07);font-weight:700}.change-cell.down{background:rgba(240,93,112,.07)}.micro-chart{width:76px;height:24px}
.option-summary { display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.summary-tile{padding:18px 20px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.summary-tile small{grid-column:1/-1;color:#668096;font-size:9px}.summary-tile strong{font-size:22px}.summary-tile span{font-size:9px;color:#698398}
.options-card .card-header { margin-bottom:12px; }.pcr{padding:5px 8px;border-radius:5px;font-weight:700}.pcr.hot{color:var(--red);background:rgba(240,93,112,.1)}.pcr.warm{color:var(--orange);background:rgba(244,170,83,.1)}.pcr.cool{color:var(--green);background:rgba(66,210,140,.1)}.oi-balance{width:90px;height:5px;margin-left:auto;border-radius:6px;background:rgba(240,93,112,.5);overflow:hidden}.oi-balance i{display:block;height:100%;background:var(--green)}
.health-banner{display:flex;align-items:center;padding:23px 25px;margin-bottom:16px;background:linear-gradient(110deg,rgba(66,210,140,.09),rgba(15,31,50,.95) 42%)}.health-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;margin-right:15px;color:var(--green);background:rgba(66,210,140,.1);border:1px solid rgba(66,210,140,.25);font-size:20px}.health-banner h2{margin:0;font-size:15px}.health-banner p{margin:5px 0 0;color:#678196;font-size:9px}.uptime{margin-left:auto;text-align:right;display:flex;flex-direction:column}.uptime strong{color:var(--green);font-size:19px}.uptime span{color:#5b7488;font-size:8px;letter-spacing:1px}
.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.status-card{padding:20px}.status-head{display:flex;align-items:center;gap:12px}.service-logo{display:grid;place-items:center;width:37px;height:37px;border-radius:9px;font-weight:900}.service-logo.binance{color:#f4bd3c;background:rgba(244,189,60,.1)}.service-logo.deribit{color:#53d18d;background:rgba(83,209,141,.1)}.service-logo.alternative{color:#8e88ef;background:rgba(142,136,239,.1)}.status-head div{flex:1}.status-head h3{font-size:12px;margin:0}.status-head p{font-size:8px;color:#5d778b;margin:4px 0 0}.status-ok{color:var(--green);background:rgba(66,210,140,.09);padding:5px 8px;border-radius:5px;font-size:8px}.status-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0 0;padding-top:14px;border-top:1px solid var(--line-soft)}.status-card dl div{display:flex;flex-direction:column;gap:4px}.status-card dt{color:#526d82;font-size:8px}.status-card dd{margin:0;color:#b8c8d4;font-size:10px}
.disclaimer{display:flex;gap:12px;padding:18px 20px;margin-top:16px}.disclaimer>span{display:grid;place-items:center;flex:0 0 auto;width:25px;height:25px;border-radius:50%;color:var(--blue);border:1px solid rgba(74,169,255,.25);background:rgba(74,169,255,.08);font-size:11px}.disclaimer h3{font-size:10px;margin:0 0 5px}.disclaimer p{color:#607b91;font-size:9px;line-height:1.7;margin:0}
.toast{position:fixed;right:28px;bottom:28px;z-index:50;padding:11px 16px;border:1px solid rgba(46,211,199,.25);border-radius:9px;background:#10283a;color:var(--cyan);font-size:11px;box-shadow:0 12px 30px rgba(0,0,0,.3);opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}
.auth-modal { position:fixed; inset:0; z-index:80; display:none; place-items:center; padding:22px; }
.auth-modal.open { display:grid; }
.auth-backdrop { position:absolute; inset:0; background:rgba(8,7,6,.72); backdrop-filter:blur(12px); }
.auth-panel { position:relative; width:min(520px,100%); max-height:min(88vh,760px); overflow:auto; padding:26px; border:1px solid rgba(215,168,77,.2); border-radius:20px; background:linear-gradient(145deg,#211f1a,#14120f); box-shadow:0 30px 90px rgba(0,0,0,.55); }
.auth-close { position:absolute; right:15px; top:13px; width:32px; height:32px; border:1px solid rgba(194,171,128,.14); border-radius:50%; color:#a99c88; background:rgba(255,255,255,.025); cursor:pointer; font-size:20px; }
.auth-head h2 { margin:0; font-size:25px; letter-spacing:-.6px; }
.auth-head p:last-child { margin:8px 0 0; color:#918674; font-size:12px; line-height:1.7; }
.auth-tabs { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin:20px 0; padding:4px; border:1px solid rgba(194,171,128,.12); border-radius:13px; background:rgba(255,255,255,.018); }
.auth-tabs button { min-height:38px; border:0; border-radius:10px; color:#908574; background:transparent; cursor:pointer; font-size:12px; font-weight:850; }
.auth-tabs button.active { color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); }
.auth-form { display:none; gap:13px; }
.auth-form.active { display:grid; }
.auth-form label { display:grid; gap:7px; color:#c8bba5; font-size:11px; font-weight:750; }
.auth-form input { width:100%; min-height:42px; padding:0 12px; border:1px solid rgba(194,171,128,.16); border-radius:11px; outline:0; color:#f3eee4; background:#15130f; }
.auth-form input:focus { border-color:rgba(215,168,77,.48); box-shadow:0 0 0 3px rgba(215,168,77,.08); }
.auth-form label small { color:#817565; font-size:10px; line-height:1.65; font-weight:500; }
.auth-check { display:grid!important; grid-template-columns:18px 1fr; gap:10px!important; align-items:start; padding:12px; border:1px solid rgba(215,168,77,.14); border-radius:12px; background:rgba(215,168,77,.045); color:#b9ad99!important; line-height:1.65; }
.auth-check input { width:16px!important; height:16px!important; min-height:0!important; margin:3px 0 0; accent-color:#d7a84d; }
.auth-submit { min-height:44px; margin-top:3px; border:0; border-radius:12px; color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); cursor:pointer; font-size:12px; font-weight:900; }
.auth-switch-link { border:0; background:transparent; color:#d7a84d; cursor:pointer; font-size:11px; font-weight:850; text-align:center; }
.auth-switch-link:hover { color:#f4d38c; text-decoration:underline; text-underline-offset:3px; }
.auth-note { margin:0; color:#756b5d; font-size:10px; line-height:1.65; }
::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#12100e}::-webkit-scrollbar-thumb{background:#3a3329;border-radius:10px}

.score-section { margin:0 0 16px; }
.score-intro { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:12px; }
.score-intro h2 { margin:0; font-size:18px; letter-spacing:-.35px; }
.score-intro p:last-child { max-width:590px; margin:0; color:#827767; font-size:11px; line-height:1.7; text-align:right; }
.score-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); gap:16px; }
.score-card { position:relative; padding:21px 22px; overflow:hidden; }
.score-card::before { content:""; position:absolute; inset:-90px -70px auto auto; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(215,168,77,.16), transparent 64%); pointer-events:none; }
.score-card-head { position:relative; z-index:1; display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding-bottom:14px; border-bottom:1px solid var(--line-soft); }
.score-status { padding:6px 9px; border-radius:7px; font-size:9px; font-weight:800; letter-spacing:.8px; white-space:nowrap; }
.score-status.bullish { color:#132219; background:linear-gradient(135deg,#57e79d,#d7a84d); box-shadow:0 0 22px rgba(66,210,140,.14); }
.score-status.ready { color:#f0d18a; background:rgba(215,168,77,.08); border:1px solid rgba(215,168,77,.16); }
.score-status.watch { color:#ee7b8a; background:rgba(240,93,112,.07); border:1px solid rgba(240,93,112,.16); }
.lock-pill { display:inline-flex; align-items:center; min-height:27px; padding:0 9px; border-radius:999px; color:#f0d18a; background:rgba(215,168,77,.08); border:1px solid rgba(215,168,77,.18); font-size:9px; font-weight:900; letter-spacing:.7px; white-space:nowrap; }
.command-hero { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:18px; align-items:center; margin-bottom:16px; padding:24px; overflow:hidden; background:radial-gradient(circle at 78% 10%, rgba(215,168,77,.18), transparent 36%), linear-gradient(145deg,#211f1a,#15130f); }
.command-hero-copy h2 { max-width:760px; margin:0; font-size:34px; line-height:1.12; letter-spacing:-1.2px; }
.command-hero-copy p:not(.eyebrow) { max-width:760px; margin:12px 0 0; color:#b9ad99; font-size:13px; line-height:1.8; }
.command-values { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.command-values span { padding:8px 10px; border:1px solid rgba(215,168,77,.16); border-radius:999px; color:#f0d18a; background:rgba(215,168,77,.055); font-size:10px; font-weight:850; }
.command-cta { padding:18px; border:1px solid rgba(66,210,140,.16); border-radius:15px; background:rgba(66,210,140,.05); }
.command-cta small { display:block; color:#8ee6b9; font-size:9px; font-weight:850; letter-spacing:.8px; }
.command-cta strong { display:block; margin:8px 0 12px; color:#e9dfcf; font-size:15px; line-height:1.55; }
.command-login { color:#d7a84d; padding:0; }
.briefing-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:16px; margin-bottom:16px; }
.briefing-card,.falcon-card { padding:20px 22px; }
.briefing-list { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:16px; }
.briefing-list div { padding:14px; border:1px solid rgba(194,171,128,.12); border-radius:12px; background:rgba(255,255,255,.018); }
.briefing-list span { display:block; color:#817565; font-size:8px; margin-bottom:6px; }
.briefing-list strong { display:block; color:#f0dfbd; font-size:14px; }
.briefing-list small { display:block; margin-top:7px; color:#8c8170; font-size:9px; line-height:1.55; }
.briefing-advice { margin:14px 0 0; color:#c8bba5; font-size:12px; line-height:1.8; }
.falcon-card { position:relative; overflow:hidden; }
.falcon-card::before { content:""; position:absolute; right:-70px; top:-80px; width:210px; height:210px; border-radius:50%; background:radial-gradient(circle, rgba(215,168,77,.16), transparent 66%); }
.falcon-orb { position:relative; display:grid; place-items:center; width:66px; height:66px; margin:16px 0 12px; border-radius:20px; color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); font-size:28px; font-weight:950; box-shadow:0 0 32px rgba(215,168,77,.12); }
.falcon-card p { position:relative; margin:0; color:#b9ad99; font-size:12px; line-height:1.8; }
.falcon-steps { position:relative; display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.falcon-steps span,.falcon-inline span { padding:6px 8px; border-radius:999px; color:#8ee6b9; background:rgba(66,210,140,.06); border:1px solid rgba(66,210,140,.14); font-size:8px; font-weight:850; letter-spacing:.5px; }
.falcon-inline { display:grid; gap:6px; padding:13px; border:1px solid rgba(215,168,77,.16); border-radius:13px; background:rgba(215,168,77,.045); }
.falcon-inline strong { color:#f0d18a; font-size:13px; }
.falcon-inline small { color:#8c8170; font-size:10px; line-height:1.6; }
.falcon-inline.hot { border-color:rgba(66,210,140,.2); background:rgba(66,210,140,.055); }
.falcon-inline.hot strong { color:#8ee6b9; }
.falcon-inline.watch { border-color:rgba(240,93,112,.18); background:rgba(240,93,112,.045); }
.falcon-inline.watch strong { color:#ee7b8a; }
.trust-section { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(220px,.55fr) minmax(220px,.55fr); gap:16px; margin-bottom:16px; }
.trust-card,.fit-card { padding:22px; overflow:hidden; }
.trust-main { position:relative; background:radial-gradient(circle at 88% 12%, rgba(215,168,77,.13), transparent 36%),linear-gradient(145deg,rgba(31,29,25,.99),rgba(18,17,15,.99)); }
.trust-card h2 { max-width:760px; margin:0; font-size:23px; letter-spacing:-.65px; line-height:1.25; }
.trust-card p:not(.eyebrow) { max-width:760px; margin:10px 0 0; color:#b9ad99; font-size:12px; line-height:1.8; }
.trust-points { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:18px; }
.trust-points div { padding:14px; border:1px solid rgba(215,168,77,.13); border-radius:13px; background:rgba(215,168,77,.04); }
.trust-points strong { display:block; color:#f0dfbd; font-size:12px; }
.trust-points span { display:block; margin-top:7px; color:#8c8170; font-size:10px; line-height:1.65; }
.fit-card ul { display:grid; gap:10px; margin:12px 0 0; padding:0; list-style:none; }
.fit-card li { color:#c8bba5; font-size:11px; line-height:1.55; }
.fit-card li::before { content:"✓"; color:#8ee6b9; margin-right:8px; }
.fit-card.warning { border-color:rgba(240,93,112,.16); background:linear-gradient(145deg,rgba(31,29,25,.99),rgba(30,20,20,.96)); }
.fit-card.warning li::before { content:"×"; color:#f05d70; }
.unlock-section { margin-bottom:16px; padding:22px; }
.unlock-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-end; margin-bottom:16px; }
.unlock-head h2 { margin:0; font-size:20px; letter-spacing:-.4px; }
.unlock-head p:not(.eyebrow) { margin:7px 0 0; color:#918674; font-size:12px; line-height:1.7; }
.unlock-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.unlock-card { position:relative; padding:17px; border:1px solid rgba(194,171,128,.12); border-radius:14px; background:rgba(255,255,255,.018); overflow:hidden; }
.unlock-card.featured { border-color:rgba(66,210,140,.22); background:linear-gradient(145deg,rgba(66,210,140,.065),rgba(215,168,77,.035)); }
.unlock-card.is-current { border-color:rgba(215,168,77,.4); box-shadow:inset 0 0 0 1px rgba(215,168,77,.08),0 0 30px rgba(215,168,77,.08); }
.unlock-card.is-current::after { content:"目前階級"; position:absolute; right:12px; top:12px; padding:5px 7px; border-radius:999px; color:#17130c; background:#d7a84d; font-size:8px; font-weight:950; letter-spacing:.5px; }
.unlock-badge { display:inline-flex; margin-bottom:12px; padding:6px 8px; border-radius:999px; font-size:8px; font-weight:900; letter-spacing:.6px; }
.unlock-badge.demo { color:#d7a84d; background:rgba(215,168,77,.08); }
.unlock-badge.member { color:#8ee6b9; background:rgba(66,210,140,.08); }
.unlock-badge.vvip { color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); }
.unlock-card h3 { margin:0 0 8px; font-size:15px; }
.unlock-card p { margin:0; color:#918674; font-size:11px; line-height:1.7; }
.unlock-card ul { display:grid; gap:6px; margin:13px 0 0; padding:0; list-style:none; }
.unlock-card li { color:#c8bba5; font-size:10px; }
.unlock-card li::before { content:"✓"; color:#8ee6b9; margin-right:7px; }
.score-body { position:relative; z-index:1; display:grid; grid-template-columns:330px 1fr; gap:26px; align-items:center; min-height:310px; }
.hex-meter { --trend:50; --direction:50; --rhythm:50; --volume:50; --risk:50; --volatility:50; position:relative; width:300px; height:300px; margin:10px auto 0; }
.hex-meter::before,.hex-meter::after { content:""; position:absolute; inset:50%; width:255px; height:1px; background:linear-gradient(90deg, transparent, rgba(215,168,77,.26), transparent); transform-origin:left center; }
.hex-meter::before { transform:rotate(0deg) translateX(-50%); }
.hex-meter::after { transform:rotate(60deg) translateX(-50%); }
.hex-grid-layer,.hex-fill { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); clip-path:polygon(50% 0%, 93.3% 25%, 93.3% 75%, 50% 100%, 6.7% 75%, 6.7% 25%); }
.hex-grid-layer { border:1px solid rgba(215,168,77,.16); background:rgba(215,168,77,.018); }
.hex-grid-layer.layer-1 { width:255px; height:255px; }
.hex-grid-layer.layer-2 { width:190px; height:190px; }
.hex-grid-layer.layer-3 { width:125px; height:125px; }
.hex-fill { width:255px; height:255px; opacity:.92; background:radial-gradient(circle at 50% calc(50% - var(--trend) * 1.08px), rgba(215,168,77,.92) 0 7px, transparent 8px), radial-gradient(circle at calc(50% + var(--direction) * .94px) calc(50% - var(--direction) * .54px), rgba(66,210,140,.82) 0 7px, transparent 8px), radial-gradient(circle at calc(50% + var(--rhythm) * .94px) calc(50% + var(--rhythm) * .54px), rgba(198,166,108,.78) 0 7px, transparent 8px), radial-gradient(circle at 50% calc(50% + var(--volume) * 1.08px), rgba(215,168,77,.78) 0 7px, transparent 8px), radial-gradient(circle at calc(50% - var(--risk) * .94px) calc(50% + var(--risk) * .54px), rgba(240,93,112,.76) 0 7px, transparent 8px), radial-gradient(circle at calc(50% - var(--volatility) * .94px) calc(50% - var(--volatility) * .54px), rgba(112,190,255,.74) 0 7px, transparent 8px), conic-gradient(from -30deg, rgba(215,168,77,.34), rgba(66,210,140,.22), rgba(198,166,108,.18), rgba(215,168,77,.28), rgba(240,93,112,.18), rgba(112,190,255,.18), rgba(215,168,77,.34)); box-shadow:inset 0 0 38px rgba(215,168,77,.08), 0 0 28px rgba(215,168,77,.12); }
.hex-axis { position:absolute; color:#8b806f; font-size:9px; line-height:1.25; text-align:center; letter-spacing:.3px; }
.hex-axis b { display:block; color:#f0dfbd; font-size:12px; margin-top:2px; }
.axis-trend { left:50%; top:-4px; transform:translateX(-50%); }
.axis-direction { right:-7px; top:70px; }
.axis-rhythm { right:-7px; bottom:68px; }
.axis-volume { left:50%; bottom:-9px; transform:translateX(-50%); }
.axis-risk { left:-9px; bottom:68px; }
.axis-volatility { left:-11px; top:70px; }
.hex-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:88px; height:88px; border-radius:50%; background:radial-gradient(circle,#211e18 0 58%, rgba(215,168,77,.13) 59% 100%); border:1px solid rgba(215,168,77,.3); box-shadow:0 0 28px rgba(0,0,0,.35); }
.hex-center strong { font-size:34px; line-height:1; color:#f2d491; letter-spacing:-1.4px; }
.hex-center span { margin-top:-9px; color:#7d715e; font-size:8px; font-weight:800; letter-spacing:1.6px; }
.score-panel { display:flex; flex-direction:column; gap:14px; }
.score-total { display:grid; grid-template-columns:auto 1fr; align-items:end; column-gap:13px; padding:15px; border:1px solid rgba(215,168,77,.18); border-radius:13px; background:rgba(215,168,77,.045); }
.score-total small { grid-column:1/-1; color:#8c7f6d; font-size:9px; letter-spacing:.8px; }
.score-total strong { color:#f4d694; font-size:50px; line-height:.95; letter-spacing:-2px; }
.score-total span { color:#42d28c; font-size:13px; font-weight:800; padding-bottom:5px; }
.score-advice { margin:0; color:#c6baa8; font-size:12px; line-height:1.85; }
.score-tags { display:flex; flex-wrap:wrap; gap:8px; }
.score-tags span { padding:7px 9px; border:1px solid rgba(66,210,140,.18); border-radius:999px; color:#8ee6b9; background:rgba(66,210,140,.06); font-size:9px; font-weight:700; }
.score-tags span.muted { color:#d7a84d; border-color:rgba(215,168,77,.18); background:rgba(215,168,77,.06); }
.score-side-list { display:grid; gap:16px; }
.score-mini-card { display:grid; grid-template-columns:1fr 82px; gap:10px 14px; align-items:center; padding:18px; min-height:154px; }
.score-mini-card strong { font-size:15px; }
.score-mini-card small { display:block; margin-top:5px; color:#8c8170; font-size:10px; }
.score-mini-card p { grid-column:1/-1; margin:0; color:#887e70; font-size:11px; line-height:1.65; }
.mini-hex { justify-self:end; display:grid; place-items:center; width:76px; height:76px; clip-path:polygon(50% 0%, 93.3% 25%, 93.3% 75%, 50% 100%, 6.7% 75%, 6.7% 25%); background:conic-gradient(#42d28c calc(var(--score) * 1%), rgba(255,255,255,.07) 0); }
.mini-hex span { display:grid; place-items:center; width:58px; height:58px; clip-path:inherit; background:#191713; color:#e6d7b8; font-size:21px; font-weight:900; }
.mini-hex.danger { background:conic-gradient(#f05d70 calc(var(--score) * 1%), rgba(255,255,255,.07) 0); }
.battle-row { cursor:pointer; }
.battle-row.selected { background:rgba(215,168,77,.055); box-shadow:inset 3px 0 0 rgba(215,168,77,.7); }
.battle-score { display:inline-grid; min-width:74px; gap:2px; padding:6px 8px; border-radius:8px; border:1px solid rgba(215,168,77,.16); background:rgba(215,168,77,.045); text-align:left; }
.battle-score strong { color:#ecd087; font-size:15px; line-height:1; }
.battle-score small { color:#8b806f; font-size:8px; white-space:nowrap; }
.battle-score.hot { border-color:rgba(66,210,140,.26); background:rgba(66,210,140,.07); }
.battle-score.hot strong,.battle-score.hot small { color:#72e6aa; }
.battle-score.ready strong { color:#e7c06e; }
.battle-score.watch { border-color:rgba(240,93,112,.2); background:rgba(240,93,112,.055); }
.battle-score.watch strong,.battle-score.watch small { color:#ee7b8a; }

.asset-detail-card { margin-bottom:16px; padding:22px; overflow:hidden; }
.asset-detail-empty { display:flex; align-items:center; gap:16px; min-height:145px; color:#8c8170; }
.asset-detail-empty>span { display:grid; place-items:center; flex:0 0 auto; width:54px; height:54px; border-radius:16px; color:#d7a84d; border:1px solid rgba(215,168,77,.18); background:rgba(215,168,77,.055); font-size:24px; }
.asset-detail-empty h2 { margin:0 0 7px; font-size:20px; }
.asset-detail-empty p:last-child { margin:0; color:#918674; font-size:12px; line-height:1.7; }
.asset-detail-empty .asset-lock-action { width:max-content; margin-top:13px; }
.asset-detail-card.is-locked { border-color:rgba(215,168,77,.24); background:radial-gradient(circle at 90% 12%, rgba(215,168,77,.1), transparent 34%),linear-gradient(145deg,rgba(31,29,25,.99),rgba(23,21,18,.99)); }
.asset-detail-card.is-empty .asset-detail-content { display:none; }
.asset-detail-card:not(.is-empty) .asset-detail-empty { display:none; }
.asset-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding-bottom:16px; border-bottom:1px solid var(--line-soft); }
.asset-logo { color:#17120c; background:linear-gradient(145deg,#f4d38c,#d7a84d); font-size:12px; }
.asset-detail-grid { display:grid; grid-template-columns:330px 1fr; gap:26px; align-items:center; padding-top:12px; }
.asset-hex { transform:scale(.9); margin:0 auto; }
.asset-brief { display:flex; flex-direction:column; gap:14px; }
.asset-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.asset-metrics div { padding:13px 14px; border:1px solid rgba(194,171,128,.12); border-radius:12px; background:rgba(255,255,255,.018); }
.asset-metrics small { display:block; margin-bottom:6px; color:#827767; font-size:8px; }
.asset-metrics strong { color:#e7ddce; font-size:14px; }

.training-layout { display:grid; grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr); gap:16px; align-items:stretch; }
.training-brief { position:relative; min-height:520px; padding:24px; overflow:hidden; background:linear-gradient(145deg, rgba(31,29,25,.99), rgba(18,17,15,.99)); }
.training-brief::before { content:""; position:absolute; inset:auto -80px -100px auto; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(215,168,77,.16), transparent 65%); }
.training-brief h2 { margin:0 0 12px; font-size:24px; letter-spacing:-.7px; }
.training-brief p { position:relative; margin:0; color:#b9ad99; font-size:12px; line-height:1.85; }
.training-stats { position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:22px 0; }
.training-stats div { padding:14px 10px; border:1px solid rgba(215,168,77,.14); border-radius:12px; background:rgba(215,168,77,.045); }
.training-stats strong { display:block; color:#f1d18a; font-size:22px; line-height:1; }
.training-stats small { display:block; margin-top:6px; color:#877b69; font-size:8px; }
.training-callout { position:relative; display:flex; gap:12px; align-items:flex-start; padding:14px; border:1px solid rgba(66,210,140,.16); border-radius:13px; background:rgba(66,210,140,.055); }
.training-callout span { color:#42d28c; font-size:18px; }
.training-callout p { color:#b8c9bb; font-size:11px; line-height:1.7; }
.commander-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.commander-card { overflow:hidden; min-height:250px; }
.youtube-slot { position:relative; aspect-ratio:16/9; min-height:148px; display:grid; place-items:center; background:linear-gradient(135deg, rgba(215,168,77,.16), rgba(66,210,140,.07)), radial-gradient(circle at 70% 20%, rgba(255,255,255,.08), transparent 42%), #15130f; border-bottom:1px solid var(--line-soft); }
.youtube-slot iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
.play-orb { position:relative; z-index:1; display:grid; place-items:center; width:58px; height:58px; padding-left:3px; border-radius:50%; color:#16120b; background:linear-gradient(135deg,#f4d38c,#d7a84d); box-shadow:0 0 30px rgba(215,168,77,.18); font-size:20px; }
.youtube-slot small { position:absolute; left:16px; bottom:14px; z-index:1; color:#d8c7a5; font-size:9px; letter-spacing:.8px; }
.commander-copy { padding:18px; }
.commander-head { display:flex; gap:12px; align-items:center; margin-bottom:12px; }
.commander-head img { flex:0 0 auto; width:48px; height:48px; border-radius:50%; object-fit:cover; border:2px solid rgba(215,168,77,.42); box-shadow:0 0 18px rgba(215,168,77,.1); }
.commander-badge { display:inline-grid; place-items:center; width:31px; height:22px; margin-bottom:6px; border-radius:999px; color:#e9cd91; border:1px solid rgba(215,168,77,.2); background:rgba(215,168,77,.06); font-size:9px; font-weight:800; }
.commander-copy h2 { margin:0 0 8px; font-size:16px; }
.commander-role { display:inline-flex; width:auto; margin:0 0 8px!important; padding:5px 8px; border-radius:999px; color:#8ee6b9!important; background:rgba(66,210,140,.06); border:1px solid rgba(66,210,140,.14); font-size:9px!important; font-weight:800; line-height:1!important; }
.commander-copy p { margin:0; color:#918674; font-size:11px; line-height:1.75; }
.commander-link { display:inline-flex; margin-top:12px; color:#d7a84d; text-decoration:none; font-size:10px; font-weight:850; }
.commander-link:hover { color:#f4d38c; text-decoration:underline; text-underline-offset:4px; }
.vvip-hero { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:18px; align-items:center; margin-bottom:16px; padding:26px; overflow:hidden; background:radial-gradient(circle at 82% 12%, rgba(215,168,77,.2), transparent 38%), linear-gradient(145deg,#211f1a,#15130f); }
.vvip-hero h2 { max-width:760px; margin:0; font-size:31px; line-height:1.15; letter-spacing:-1px; }
.vvip-hero p:not(.eyebrow) { max-width:740px; margin:12px 0 0; color:#b9ad99; font-size:13px; line-height:1.8; }
.vvip-lock-card { padding:18px; border:1px solid rgba(215,168,77,.22); border-radius:16px; background:rgba(215,168,77,.055); }
.vvip-lock-card strong { display:block; margin:12px 0 8px; color:#f0dfbd; font-size:16px; }
.vvip-lock-card p { margin:0 0 14px; color:#918674; font-size:11px; line-height:1.7; }
.vvip-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:16px; }
.vvip-panel { padding:20px 22px; overflow:hidden; }
.signal-panel { grid-row:span 2; }
.signal-list { display:grid; gap:10px; margin-top:16px; }
.signal-list>div { display:grid; grid-template-columns:36px 1fr auto; gap:12px; align-items:center; padding:13px; border:1px solid rgba(194,171,128,.12); border-radius:13px; background:rgba(255,255,255,.018); }
.signal-side { display:grid; place-items:center; width:32px; height:32px; border-radius:10px; font-size:12px; font-weight:900; }
.signal-side.long { color:#0f2118; background:#42d28c; }
.signal-side.short { color:#2b1115; background:#f05d70; }
.signal-side.wait { color:#17130c; background:#d7a84d; }
.signal-list p { margin:0; display:flex; flex-direction:column; gap:3px; }
.signal-list b { color:#e8dfd0; font-size:12px; }
.signal-list small { color:#827767; font-size:9px; }
.signal-list strong { color:#d7a84d; font-size:10px; }
.locked-preview { position:relative; }
.locked-preview::after { content:"黑鷹解鎖後顯示完整資訊"; position:absolute; inset:auto 12px 12px; display:grid; place-items:center; min-height:34px; border:1px solid rgba(215,168,77,.2); border-radius:999px; color:#f0d18a; background:rgba(17,16,14,.82); backdrop-filter:blur(8px); font-size:10px; font-weight:900; }
body[data-access="vvip"] .locked-preview::after { display:none; }
body[data-access="vvip"] .vvip-lock-card { border-color:rgba(66,210,140,.24); background:rgba(66,210,140,.055); }
.defense-map { display:grid; gap:10px; margin-top:16px; padding-bottom:48px; }
.defense-map div { display:grid; gap:5px; padding:13px; border:1px solid rgba(194,171,128,.12); border-radius:13px; background:rgba(255,255,255,.018); }
.defense-map small { color:#827767; font-size:8px; }
.defense-map strong { color:#f0dfbd; font-size:13px; }
.defense-map span { color:#d7a84d; font-size:9px; }
.filter-stack { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 14px; }
.filter-stack span { padding:8px 10px; border:1px solid rgba(66,210,140,.15); border-radius:999px; color:#8ee6b9; background:rgba(66,210,140,.055); font-size:9px; font-weight:850; }
.profile-hero { display:grid; grid-template-columns:82px minmax(0,1fr) auto; gap:18px; align-items:center; margin-bottom:16px; padding:24px; overflow:hidden; background:radial-gradient(circle at 88% 14%, rgba(66,210,140,.13), transparent 34%),linear-gradient(145deg,#211f1a,#15130f); border-color:rgba(215,168,77,.2); }
.profile-emblem { display:grid; place-items:center; width:82px; height:82px; border-radius:24px; color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); font-size:25px; font-weight:950; letter-spacing:-1px; box-shadow:0 0 34px rgba(215,168,77,.14); }
.profile-main h2 { margin:0; font-size:27px; letter-spacing:-.7px; }
.profile-main p:not(.card-kicker) { max-width:760px; margin:8px 0 0; color:#b9ad99; font-size:12px; line-height:1.8; }
.profile-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.profile-tags span { padding:7px 9px; border:1px solid rgba(215,168,77,.16); border-radius:999px; color:#f0d18a; background:rgba(215,168,77,.055); font-size:9px; font-weight:900; letter-spacing:.55px; }
.profile-primary { white-space:nowrap; }
.profile-primary,.group-entry .login-button,.blackhawk-upgrade .login-button { min-height:42px; }
.profile-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.profile-card,.verification-panel,.group-entry { padding:20px 22px; overflow:hidden; }
.profile-data { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:16px 0 0; }
.profile-data div { min-width:0; padding:13px; border:1px solid rgba(194,171,128,.12); border-radius:12px; background:rgba(255,255,255,.018); }
.profile-data dt { color:#827767; font-size:8px; margin-bottom:6px; }
.profile-data dd { margin:0; overflow:hidden; text-overflow:ellipsis; color:#e8dfd0; font-size:12px; white-space:nowrap; }
.next-mission { margin-top:16px; padding:16px; border:1px solid rgba(66,210,140,.16); border-radius:14px; background:rgba(66,210,140,.045); }
.next-mission strong { display:block; color:#8ee6b9; font-size:17px; }
.next-mission p { margin:8px 0 12px; color:#b9ad99; font-size:12px; line-height:1.75; }
.next-mission .text-button { display:inline-flex; align-items:center; min-height:34px; padding:0; font-weight:900; }
.verify-timeline { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:17px; }
.verify-step { position:relative; min-height:150px; padding:16px; border:1px solid rgba(194,171,128,.11); border-radius:15px; background:rgba(255,255,255,.018); }
.verify-step span { display:grid; place-items:center; width:28px; height:28px; margin-bottom:13px; border-radius:50%; color:#827767; border:1px solid rgba(194,171,128,.14); background:rgba(255,255,255,.025); font-size:10px; font-weight:950; }
.verify-step strong { display:block; color:#d9d0c2; font-size:13px; }
.verify-step p { margin:8px 0 0; color:#827767; font-size:10px; line-height:1.65; }
.verify-step.active { border-color:rgba(215,168,77,.38); background:rgba(215,168,77,.055); box-shadow:0 0 24px rgba(215,168,77,.07); }
.verify-step.active span { color:#17130c; background:#d7a84d; border-color:#d7a84d; }
.verify-step.done { border-color:rgba(66,210,140,.22); background:rgba(66,210,140,.045); }
.verify-step.done span { color:#0f2118; background:#42d28c; border-color:#42d28c; }
.verify-step.done strong { color:#8ee6b9; }
.feature-access-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:16px; }
.feature-access-grid div { padding:14px; border:1px solid rgba(194,171,128,.12); border-radius:13px; background:rgba(255,255,255,.018); }
.feature-access-grid strong { display:block; color:#f0dfbd; font-size:12px; }
.feature-access-grid span { display:inline-flex; margin-top:8px; padding:5px 7px; border-radius:999px; color:#d7a84d; background:rgba(215,168,77,.07); font-size:8px; font-weight:900; }
.feature-access-grid div.unlocked { border-color:rgba(66,210,140,.19); background:rgba(66,210,140,.045); }
.feature-access-grid div.unlocked span { color:#8ee6b9; background:rgba(66,210,140,.08); }
.blackhawk-upgrade { border-color:rgba(215,168,77,.2); background:radial-gradient(circle at 90% 10%, rgba(215,168,77,.13), transparent 34%),linear-gradient(145deg,rgba(31,29,25,.99),rgba(18,17,15,.99)); }
.blackhawk-upgrade p { margin:16px 0 15px; color:#b9ad99; font-size:12px; line-height:1.8; }
.group-entry { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; border-color:rgba(66,210,140,.17); background:linear-gradient(135deg,rgba(66,210,140,.055),rgba(215,168,77,.035)); }
.group-entry h2 { margin:0; font-size:19px; letter-spacing:-.35px; }
.group-entry p:not(.card-kicker) { max-width:860px; margin:8px 0 0; color:#b9ad99; font-size:12px; line-height:1.8; }
.legal-hero { margin-bottom:16px; padding:26px; background:radial-gradient(circle at 85% 18%, rgba(240,93,112,.12), transparent 34%),linear-gradient(145deg,rgba(31,29,25,.99),rgba(18,17,15,.99)); }
.legal-hero h2 { max-width:860px; margin:0; font-size:28px; line-height:1.18; letter-spacing:-.8px; }
.legal-hero p:not(.eyebrow) { max-width:900px; margin:12px 0 0; color:#c8bba5; font-size:13px; line-height:1.85; }
.legal-grid,.policy-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.legal-card,.policy-card { padding:21px 22px; }
.legal-card h3,.policy-card h2 { margin:0 0 10px; color:#f0dfbd; font-size:17px; letter-spacing:-.2px; }
.legal-card p { margin:0; color:#a99c88; font-size:12px; line-height:1.8; }
.legal-wide { margin-top:16px; border-color:rgba(215,168,77,.18); }
.policy-card ol { display:grid; gap:10px; margin:12px 0 0; padding-left:20px; color:#b9ad99; font-size:12px; line-height:1.7; }
.policy-card li::marker { color:#d7a84d; font-weight:900; }
.admin-gate { display:grid; grid-template-columns:minmax(0,1fr) 260px auto; gap:16px; align-items:end; margin-bottom:16px; padding:20px 22px; border-color:rgba(215,168,77,.2); background:radial-gradient(circle at 88% 20%, rgba(215,168,77,.12), transparent 35%),linear-gradient(145deg,rgba(31,29,25,.99),rgba(18,17,15,.99)); }
.admin-gate h2 { margin:0; font-size:19px; letter-spacing:-.4px; }
.admin-gate p:not(.card-kicker) { margin:8px 0 0; color:#918674; font-size:11px; line-height:1.7; }
.admin-key-field { display:grid; gap:7px; color:#c8bba5; font-size:10px; font-weight:850; }
.admin-key-field input { min-height:38px; padding:0 12px; border:1px solid rgba(194,171,128,.16); border-radius:999px; outline:0; color:#f3eee4; background:#15130f; }
.admin-key-field input:focus { border-color:rgba(215,168,77,.5); box-shadow:0 0 0 3px rgba(215,168,77,.08); }
.admin-stats { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:16px; }
.admin-stat { padding:17px 19px; display:grid; grid-template-columns:1fr auto; gap:7px; align-items:end; }
.admin-stat small { grid-column:1/-1; color:#847969; font-size:9px; }
.admin-stat strong { font-size:24px; color:#e8dfd0; }
.admin-stat span { color:#6f6659; font-size:8px; text-transform:uppercase; }
.admin-panel { padding:20px 22px; overflow:hidden; }
.admin-log-panel { margin-top:16px; }
.admin-table-wrap { margin-top:16px; overflow:auto; border:1px solid rgba(194,171,128,.11); border-radius:13px; }
.admin-table { width:100%; min-width:900px; border-collapse:collapse; }
.admin-log-table { min-width:760px; }
.admin-table th,.admin-table td { padding:13px 12px; border-bottom:1px solid rgba(194,171,128,.09); text-align:left; font-size:10px; }
.admin-table th { color:#8c8170; background:rgba(255,255,255,.018); font-weight:900; letter-spacing:.6px; }
.admin-table td { color:#d9d0c2; vertical-align:middle; }
.admin-table tr:last-child td { border-bottom:0; }
.admin-member { display:flex; flex-direction:column; gap:3px; }
.admin-member b { color:#f0dfbd; font-size:12px; }
.admin-member small { color:#756b5d; font-size:8px; }
.admin-level { display:inline-flex; padding:6px 8px; border-radius:999px; font-size:8px; font-weight:900; letter-spacing:.6px; }
.admin-level.pending { color:#d7a84d; background:rgba(215,168,77,.08); border:1px solid rgba(215,168,77,.14); }
.admin-level.verified { color:#8ee6b9; background:rgba(66,210,140,.08); border:1px solid rgba(66,210,140,.14); }
.admin-level.vvip { color:#17130c; background:linear-gradient(135deg,#f4d38c,#d7a84d); }
.admin-actions { display:flex; flex-wrap:wrap; gap:6px; }
.admin-actions button { min-height:28px; padding:0 8px; border:1px solid rgba(194,171,128,.14); border-radius:999px; color:#b9ad99; background:rgba(255,255,255,.018); cursor:pointer; font-size:8px; font-weight:900; }
.admin-actions button:hover { color:#17130c; background:#d7a84d; border-color:#d7a84d; }
.admin-actions button.active { color:#0f2118; background:#42d28c; border-color:#42d28c; }
.admin-empty { min-height:110px; text-align:center!important; color:#827767!important; }

@media (max-width:1100px){
  .metric-grid{grid-template-columns:repeat(2,1fr)}.hero-grid{grid-template-columns:1.5fr .8fr}.option-summary{grid-template-columns:repeat(2,1fr)}.market-tape span:nth-child(n+2){display:none}.top-tabs{margin-left:8px;max-width:56vw}.command-hero,.briefing-grid,.vvip-hero,.trust-section,.profile-hero,.group-entry{grid-template-columns:1fr}.access-status,.admin-gate{grid-template-columns:1fr}.access-progress{justify-self:start}.briefing-list{grid-template-columns:1fr 1fr 1fr}.unlock-grid{grid-template-columns:repeat(2,1fr)}.trust-points{grid-template-columns:1fr 1fr 1fr}.vvip-grid{grid-template-columns:1fr}.signal-panel{grid-row:auto}.score-grid{grid-template-columns:1fr}.score-side-list{grid-template-columns:1fr 1fr}.asset-detail-grid{grid-template-columns:1fr}.asset-hex{margin:8px auto -8px}.training-layout{grid-template-columns:1fr}.training-brief{min-height:auto}.verify-timeline{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:820px){
  .sidebar{transform:translateX(-100%);transition:.25s}.sidebar.open{transform:none;box-shadow:20px 0 50px rgba(0,0,0,.45)}.main{margin-left:0}.menu-button{display:block}.topbar{height:auto;min-height:64px;padding:10px 16px;gap:10px;flex-wrap:wrap}.market-tape{display:none}.top-tabs{order:3;flex:1 0 100%;max-width:none;margin:2px 0 0}.top-actions{gap:8px;margin-left:auto}.content{padding:22px 14px 50px}.command-hero-copy h2{font-size:28px}.unlock-head{display:block}.unlock-head .text-button{margin-top:10px}.hero-grid,.lower-grid,.two-col,.legal-grid,.policy-layout,.profile-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start}.updated{display:none}.fear-card{min-height:330px}.status-grid{grid-template-columns:1fr}.wall-columns{grid-template-columns:1fr}.candle-chart{height:250px}.score-intro{display:block}.score-intro p:last-child{text-align:left;margin-top:8px}.score-body{grid-template-columns:1fr}.score-side-list{grid-template-columns:1fr}.commander-grid{grid-template-columns:1fr}.trust-points{grid-template-columns:1fr}.profile-primary,.group-entry .login-button,.blackhawk-upgrade .login-button{width:100%;min-height:46px}.profile-hero{align-items:start}.next-mission .text-button{min-height:40px}
}
@media (max-width:520px){
  .clock{display:none}.mode-lock{display:none}.mode-chip{padding:0 8px}.top-tab{padding:0 9px}.top-actions .login-button{min-height:32px;padding:0 10px}.command-hero,.vvip-hero,.legal-hero,.profile-hero{padding:18px}.access-status,.admin-gate,.admin-panel,.trust-card,.fit-card,.legal-card,.policy-card,.profile-card,.verification-panel,.group-entry{padding:15px}.access-progress{width:100%;display:grid;grid-template-columns:repeat(2,1fr);border-radius:16px}.access-step{min-width:0}.data-mode-row{display:grid;gap:7px}.admin-stats{grid-template-columns:1fr 1fr}.command-hero-copy h2,.vvip-hero h2,.legal-hero h2{font-size:24px}.profile-main h2{font-size:23px}.trust-card h2{font-size:20px}.briefing-list{grid-template-columns:1fr}.unlock-section{padding:16px}.unlock-grid{grid-template-columns:1fr}.metric-grid,.option-summary,.profile-data,.feature-access-grid,.verify-timeline{grid-template-columns:1fr}.page-heading h1{font-size:25px}.hero-price{font-size:33px}.currency{font-size:21px}.price-row{gap:10px}.price-hero{padding:18px 16px}.price-stats strong{font-size:10px}.ranking-tools{flex-direction:column}.search-box{max-width:none}.segmented{align-self:flex-start}.health-banner{align-items:flex-start}.uptime{display:none}.status-card dl{grid-template-columns:1fr 1fr}.chart-card{padding:17px}.chart-toolbar{align-items:flex-start;gap:14px;flex-direction:column}.score-card{padding:18px 16px}.score-card-head{flex-direction:column}.hex-meter{width:260px;height:260px;transform:scale(.92);margin:-6px auto}.score-total strong{font-size:42px}.asset-detail-card{padding:16px}.asset-detail-head{flex-direction:column}.asset-metrics{grid-template-columns:1fr}.asset-detail-empty{align-items:flex-start}.training-stats{grid-template-columns:1fr}.training-brief{padding:18px}.youtube-slot{min-height:130px}.profile-emblem{width:66px;height:66px;border-radius:19px}.verify-step{min-height:auto}.auth-panel{padding:20px}.auth-form input{min-height:46px}.auth-submit{min-height:48px}.auth-switch-link{min-height:40px}
}

/* E-RISE 炭黑主題覆寫 */
.nav-label,.sidebar-foot p,.clock,.subheading,.updated,.card-kicker:not(.eyebrow) { color:#887e70; }
.market-tape { color:#a69b8b; }
.tape-coin b,.price-stats strong,.mini-row>span:nth-child(4),.status-card dd { color:#ddd5c7; }
.source-tag { color:#94866e; border-color:rgba(215,168,77,.16); background:rgba(215,168,77,.025); }
.segmented,.search-box { background:#15130f; border-color:#393229; }
.segmented button { color:#847969; }
.segmented button.active { color:#e1b963; background:#2d271d; box-shadow:inset 0 0 0 1px rgba(215,168,77,.18); }
.grid-line { stroke:#332d26; }
.axis-text,.chart-labels { fill:#756b5d; color:#756b5d; }
.metric-card,.ranking-card,.options-card,.chart-card { box-shadow:0 18px 45px rgba(0,0,0,.2); }
.metric-icon.blue,.metric-icon.purple { color:#dbb66c; background:rgba(215,168,77,.1); }
.token-icon,.coin-cell span { background:#29251f; color:#deb45f; }
.mini-row,.activity-list>div,.wall-row,td { border-color:rgba(194,171,128,.1); }
.wall-row>span { background:#2a251e; }
.search-box input { color:#f3eee4; }
.health-banner { background:linear-gradient(110deg,rgba(66,210,140,.07),rgba(31,29,25,.98) 42%); }
.status-card,.disclaimer { background:linear-gradient(145deg,#1f1d19,#181613); }
.toast { background:#292319; color:#e3b85f; border-color:rgba(215,168,77,.28); }
.loading-row,.chart-loading,.empty-state { min-height:120px; display:grid; place-items:center; color:#827767; font-size:10px; letter-spacing:.3px; }
.empty-state { display:table-cell; height:180px; text-align:center; }
.live-pill.offline .live-dot { background:var(--orange); box-shadow:0 0 0 4px rgba(215,168,77,.09); }
.change-badge.down { background:rgba(240,93,112,.1); border:1px solid rgba(240,93,112,.15); }
.demo-tag,.inline-demo { color:#a09483!important; border-color:rgba(160,148,131,.18)!important; }
.inline-demo { padding:2px 5px; margin-left:4px; border:1px solid; border-radius:4px; font-size:7px; font-weight:500; vertical-align:2px; }
.demo-dot { background:#8d8375; box-shadow:none; }
.error-dot { background:var(--red); box-shadow:0 0 0 4px rgba(240,93,112,.08); }
.gauge-needle { transition:transform .7s cubic-bezier(.2,.8,.2,1); }
.stream-empty { min-height:50px; display:grid; place-items:center; color:#827767; font-size:9px; text-align:center; border-top:1px solid var(--line-soft); }
.wall-columns .stream-empty { min-height:82px; border:1px dashed rgba(194,171,128,.12); border-radius:8px; }
.status-warning { color:var(--orange); background:rgba(215,168,77,.09); padding:5px 8px; border-radius:5px; font-size:8px; }
.service-logo.news-service { color:#d7a84d; background:rgba(215,168,77,.1); }
.service-logo.calendar-service { color:#b9a06f; background:rgba(185,160,111,.1); }
.calendar-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:16px; }
.calendar-stat { padding:17px 19px; display:grid; grid-template-columns:1fr auto; gap:7px; align-items:end; }
.calendar-stat small { grid-column:1/-1; color:#847969; font-size:9px; }
.calendar-stat strong { font-size:22px; color:#e8dfd0; }
.calendar-stat span { max-width:180px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#6f6659; font-size:8px; text-align:right; }
.next-event-stat strong { color:#d7a84d; }
.calendar-panel { padding:20px 22px; }
.calendar-tools { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:15px; border-bottom:1px solid var(--line-soft); }
.calendar-timezone { color:#776d5f; font-size:8px; }
.calendar-list { min-height:300px; }
.calendar-loading,.calendar-empty { min-height:300px; display:grid; place-items:center; color:#827767; font-size:10px; }
.calendar-day { padding:18px 0 8px; }
.calendar-day-title { display:flex; align-items:center; gap:10px; margin:0 0 8px; color:#b9a06f; font-size:10px; letter-spacing:.5px; }
.calendar-day-title::after { content:""; height:1px; flex:1; background:var(--line-soft); }
.calendar-event { display:grid; grid-template-columns:90px 1fr 80px 70px 70px 82px 110px; gap:12px; align-items:center; min-height:68px; padding:10px 12px; margin:7px 0; border:1px solid rgba(194,171,128,.1); border-radius:10px; background:rgba(255,255,255,.012); }
.calendar-event.is-next { border-color:rgba(215,168,77,.36); background:rgba(215,168,77,.035); }
.event-time { display:flex; flex-direction:column; gap:3px; color:#ddd4c6; font-size:12px; font-weight:650; }
.event-time small { color:#776e61; font-size:8px; font-weight:500; }
.event-title { min-width:0; }
.event-title h2 { margin:0 0 4px; color:#e4dccf; font-size:11px; }
.event-title span { color:#6f665a; font-size:8px; }
.event-impact { display:inline-flex; align-items:center; gap:6px; color:#8d8374; font-size:8px; }
.impact-dot { width:7px; height:7px; border-radius:50%; background:#756e63; }
.impact-dot.high { background:var(--red); box-shadow:0 0 8px rgba(240,93,112,.35); }
.impact-dot.medium { background:var(--orange); }
.event-number { display:flex; flex-direction:column; gap:4px; text-align:right; }
.event-number small { color:#6f6659; font-size:7px; }
.event-number strong { color:#cfc5b6; font-size:10px; font-weight:600; }
.event-status { justify-self:end; padding:5px 7px; border-radius:5px; color:#8f8576; background:rgba(255,255,255,.025); font-size:8px; }
.event-status.upcoming { color:#d7a84d; background:rgba(215,168,77,.08); }
@media(max-width:1100px){.calendar-event{grid-template-columns:78px 1fr repeat(4,65px)}.event-status{grid-column:2/-1}.calendar-summary{grid-template-columns:1fr 1fr}.next-event-stat{grid-column:1/-1}}
@media(max-width:640px){.calendar-summary{grid-template-columns:1fr}.next-event-stat{grid-column:auto}.calendar-tools{align-items:flex-start;flex-direction:column}.calendar-event{grid-template-columns:62px 1fr;gap:8px}.event-impact{grid-column:2}.event-number{display:grid;grid-template-columns:55px 1fr;align-items:center;text-align:left;grid-column:2}.event-status{grid-column:2;justify-self:start}.calendar-panel{padding:16px}}
.news-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:16px; }
.news-stat { padding:17px 19px; display:grid; grid-template-columns:1fr auto; gap:7px; align-items:end; }
.news-stat small { grid-column:1/-1; color:#847969; font-size:9px; }
.news-stat strong { font-size:22px; color:#e8dfd0; }
.news-stat span { font-size:8px; color:#6f6659; }
.news-panel { padding:20px 22px; }
.news-tools { display:flex; justify-content:space-between; gap:18px; }
.news-tools .search-box { max-width:390px; }
.news-filters { overflow-x:auto; }
.news-source-strip { display:flex; gap:8px; align-items:center; min-height:42px; margin-top:14px; padding:0 2px; border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); color:#786f61; font-size:8px; }
.source-health { display:inline-flex; align-items:center; gap:6px; padding:5px 8px; border-radius:6px; background:rgba(255,255,255,.018); }
.source-health i { width:5px; height:5px; border-radius:50%; background:var(--green); }
.source-health.off i { background:var(--red); }
.news-list { min-height:260px; }
.news-loading { min-height:260px; display:grid; place-items:center; color:#827767; font-size:10px; }
.news-item { display:grid; grid-template-columns:78px 1fr auto; gap:16px; align-items:center; min-height:92px; padding:14px 2px; color:inherit; text-decoration:none; border-bottom:1px solid var(--line-soft); transition:.2s; }
.news-item:last-child { border-bottom:0; }
.news-item:hover { background:rgba(215,168,77,.025); padding-left:8px; padding-right:8px; }
.news-thumb { width:78px; height:58px; border-radius:8px; object-fit:cover; background:linear-gradient(145deg,#2b261e,#191713); border:1px solid rgba(194,171,128,.1); }
.news-thumb-placeholder { display:grid; place-items:center; color:#c69b49; font-size:18px; font-weight:800; }
.news-copy { min-width:0; }
.news-meta { display:flex; align-items:center; gap:8px; margin-bottom:7px; color:#776d60; font-size:8px; }
.news-source { color:#d2a654; font-weight:700; letter-spacing:.3px; }
.news-topic { padding:3px 6px; border-radius:4px; color:#9f9381; background:rgba(255,255,255,.025); border:1px solid rgba(194,171,128,.1); }
.news-title { margin:0; color:#e4dccf; font-size:12px; line-height:1.5; font-weight:650; }
.news-original { margin:4px 0 0; color:#776d60; font-size:9px; line-height:1.45; }
.news-arrow { color:#7a705f; font-size:16px; padding-right:8px; }
.news-empty { min-height:240px; display:grid; place-items:center; color:#827767; font-size:10px; }
.news-disclaimer { color:#665e53; font-size:8px; line-height:1.6; margin:12px 3px 0; }
@media (max-width:820px){.news-tools{flex-direction:column}.news-tools .search-box{max-width:none}.news-stats{grid-template-columns:1fr}.news-filters{width:100%}}
@media (max-width:520px){.news-item{grid-template-columns:58px 1fr}.news-thumb{width:58px;height:48px}.news-arrow{display:none}.news-title{font-size:11px}.news-meta{flex-wrap:wrap}}
