/* AlphaPrime member center. Palette, fonts and components follow the website (alphaprime.trading). */
:root{--bg:#0b1a2b;--panel:#16324f;--panel2:#16324f;--text:#e6eaef;--muted:#c3ccd7;--line:#3c4a5c;--gold:#ebd2a0;--gradient:linear-gradient(100deg,#f7e8c8 0%,#ebd2a0 45%,#d6b47c 75%,#f0dcb2 100%)}
*{box-sizing:border-box}
html{color-scheme:dark}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.75 'Manrope','Noto Sans TC',sans-serif;min-height:100vh;display:flex;flex-direction:column}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{cursor:pointer;background:none;border:0;color:inherit}
.skipLink{position:absolute;inset-inline-start:-9999px}.skipLink:focus{inset-inline-start:16px;top:8px;z-index:50;background:var(--panel);padding:8px 14px}
header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(11,26,43,.96);backdrop-filter:blur(16px);z-index:20}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;flex-shrink:0}
.apLogo{width:80px;height:80px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.apLogo img{width:100%;height:100%;object-fit:contain}
.brandName{font-family:Georgia,'Times New Roman',serif;font-size:29px;font-weight:500;letter-spacing:1px}
.navend{display:flex;gap:18px;align-items:center;position:relative}
.siteLink{font-size:14px;color:#b8c1cb}.siteLink:hover{color:var(--gold)}
#lang{font-size:14px;min-width:44px;min-height:44px;white-space:nowrap}
/* Language menu: the website's (style.css .langMenu) */
.langMenu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:40;min-width:170px;max-height:70vh;overflow:auto;display:grid;padding:6px;background:#081522;border:1px solid var(--line);border-radius:5px;box-shadow:0 18px 40px #0008}
.langMenu button{text-align:start;padding:9px 12px;border-radius:3px;color:#c3ccd7;font-size:14px}
.langMenu button:hover,.langMenu button:focus-visible{background:#0f2946;color:var(--text)}
.langMenu button[aria-checked=true]{color:var(--gold)}.langMenu button[aria-checked=true]::after{content:' ✓'}
main{flex:1}
main:focus{outline:none}
.wrap{max-width:1280px;margin:auto;padding:0 5%}
.workspace{display:grid;grid-template-columns:240px 1fr;gap:35px;padding:55px 5%;min-height:65vh;max-width:1280px;margin:auto}
.workspace>div{min-width:0}
.sidebar{border-inline-end:1px solid var(--line);padding-inline-end:25px}
.sidebar button{display:block;width:100%;text-align:start;padding:13px 18px;font-size:14px;color:#9fb0c2}
.sidebar button.active{background:#16324f;color:var(--gold)}
.sidebar button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--gold);font-size:12px;font-weight:700;margin-bottom:22px}
h1{font-size:32px;line-height:1.22;letter-spacing:-1px;margin:0 0 18px;font-weight:700}
h3{margin:0 0 8px}
p{color:var(--muted)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}
.card{border:1px solid var(--line);padding:22px;background:#122f50;border-radius:5px}
.metrics span{color:var(--muted);font-size:14px}
.metrics strong{display:block;font-size:30px;color:var(--gold)}
.empty{border:1px dashed #3e536c;padding:45px;text-align:center;border-radius:4px}
.empty p{font-size:14px}
.empty .icon svg{width:60px;height:60px;color:var(--gold)}
.notice{background:#192a3e;border-inline-start:2px solid var(--gold);padding:18px 22px;font-size:14px;color:#c4d1df;margin:25px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 28px;border:0;border-radius:3px;font-weight:600;font-size:16px;background:var(--gradient);color:#1f2b3a;box-shadow:0 6px 20px #0002}
.btn:hover{filter:brightness(1.1)}
.btn:disabled{opacity:.5;cursor:not-allowed}
.outline{display:inline-flex;align-items:center;justify-content:center;border:1px solid #9d835d;border-radius:3px;font-weight:600}
.login form{display:flex;gap:10px;max-width:460px;margin:18px auto 6px}
.login input{flex:1 1 auto;min-width:0;background:#0b1a2b;border:1px solid #4e5f72;border-radius:3px;padding:12px 14px;color:var(--text)}
.login input:focus{border-color:var(--gold);outline:none}
.formStatus{margin:8px 0 0;font-size:14px;min-height:1.5em}
.login .formStatus{min-height:3em}
.formStatus.ok{color:#9fd8b4}
.formStatus.bad{color:#f2a49b}
.linkButton{color:var(--gold);text-decoration:underline;font-size:14px;padding:0}
.scrollTable{overflow:auto}
.table{width:100%;border-collapse:collapse;margin-top:18px;font-size:14px}
.table th{text-align:start;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line);padding:10px 12px}
.table td{border-bottom:1px solid var(--line);padding:12px;vertical-align:top}
.table td:first-child{white-space:nowrap}
.keyCell{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.table code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gold);user-select:all;word-break:break-all;font-size:15px;letter-spacing:1px}
.copy{padding:6px 12px;font-size:13px;color:var(--text)}
.sub{display:block;color:var(--muted);font-size:13px;margin-top:6px}
footer{border-top:1px solid var(--line);padding:25px 5%;background:#020f1d}
.copyright{max-width:1160px;margin:auto;font-size:12px;color:#6f8298}
@media(max-width:760px){
  header{height:76px;padding:0 4%}
  .apLogo{width:48px;height:48px}
  .brandName{font-size:21px}
  .navend{gap:10px}
  .workspace{grid-template-columns:1fr;padding-top:30px;gap:25px}
  /* 11/8：分頁列不再框內左右捲，改直排（一個分頁一列） */
  .sidebar{border-inline-end:0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;overflow:visible;padding:0 0 12px}
  .sidebar button{white-space:normal;width:100%;padding:11px 14px}
  .metrics{grid-template-columns:1fr}
  .empty{padding:28px 18px}
  .login form{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
code.hash{word-break:break-all;font-size:.78em}
.empty.trial{margin-bottom:18px}
.table .btn{white-space:nowrap}.table td code:not(.hash){white-space:nowrap}
/* Sign in with Google (shown only when the service has a Google client configured) */
.orDivider{display:flex;align-items:center;gap:12px;max-width:460px;margin:18px auto 14px;color:#7f8d9e;font-size:13px}
.orDivider::before,.orDivider::after{content:"";flex:1;border-top:1px solid #34465b}
.googleBtn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:280px;padding:12px 22px;border-radius:3px;background:#fff;color:#1f1f1f;font-weight:600;font-size:15px;border:1px solid #dadce0}
.googleBtn:hover{background:#f3f5f8}
.googleBtn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.googleBtn svg{width:20px;height:20px;flex:none}
/* Mac waitlist (H106) */
.macBox{margin:18px 0;border-style:solid;border-color:var(--gold)}
.macLink{margin:22px 0 0;font-size:14px}.macLink summary{cursor:pointer;color:var(--gold)}
.macForm{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:end;margin:14px 0}
.macForm input[type=email]{min-width:260px;padding:12px;border-radius:3px;border:1px solid #3e536c;background:transparent;color:inherit;font-size:15px}
.macForm .hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
.formStatus.ok{color:#7fd4a0}.formStatus.bad{color:#ff9a8a}
/* Sign-in box: trial notes under the heading (10/19), a light list with gold check marks */
.trialHint{list-style:none;margin:6px auto 4px;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;font-size:14px;color:var(--text)}
.trialHint li{display:flex;align-items:center;gap:8px}
.trialHint li::before{content:"";flex:none;width:5px;height:10px;margin:-3px 2px 0;border:solid var(--gold);border-width:0 2px 2px 0;transform:rotate(45deg)}
@media(max-width:760px){.trialHint{flex-direction:column;align-items:flex-start;width:max-content;max-width:100%;gap:2px}}
/* Trial applied (10/19): key, steps and the installer download on one screen (Traditional Chinese) */
.trialDone{border:1px solid var(--gold);border-radius:4px;padding:22px 26px;margin:18px 0 6px;background:#16324f}
.trialDone>.sub{margin:0 0 4px}
.trialDone .keyCell code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gold);user-select:all;font-size:22px;letter-spacing:2px;white-space:nowrap}
.trialDone>p{margin:16px 0 6px;color:var(--text)}
.trialSteps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.trialSteps p{margin:0 0 8px;color:var(--text)}
.trialSteps .sub{margin-top:6px}
@media(max-width:760px){.trialDone{padding:18px 14px}.trialDone .btn{width:100%}}
/* === T03 trial steps (?intent=trial, 官網修正 10/28) === */
.workspace.t3Solo{grid-template-columns:minmax(0,1fr);max-width:880px}
.t3Lead{font-size:18px;line-height:1.65;color:var(--text);margin:0 0 14px}
.t3Panel{margin:0 0 18px}
.t3Panel>p,.t3 .empty p,.t3 .trialSteps p{font-size:16px}
.t3 .login{text-align:start;padding:28px}
.t3 .login form{flex-wrap:wrap;margin:14px 0 6px;max-width:520px}
.t3 .login input{min-height:48px}
.t3Label{flex-basis:100%;font-size:14px;font-weight:600;color:var(--text);margin:0}
.t3 .orDivider{margin:18px 0 14px;max-width:520px}
.t3 .googleBtn{min-width:0;width:100%;max-width:520px;min-height:48px}
.t3 .btn{min-height:48px}
.t3Actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.t3Act{min-height:48px;padding:0 22px;font-size:16px;color:var(--text)}
.t3 .copy{min-height:44px;padding:0 16px}
.t3Sr{display:block;font-size:14px;color:#9fd8b4;min-height:1.5em}
.t3Legal{font-size:14px;color:var(--muted)}.t3Legal a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.t3 a:focus-visible,.t3 button:focus-visible,.t3 input:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:760px){
  .t3 .login{padding:20px 16px}
  .t3Actions .btn,.t3Act{width:100%}
  .t3 .trialDone .keyCell code{white-space:normal;word-break:break-all;font-size:18px}
}
/* 320px wide: the header's long "back to website" words (ru, de …) pushed the language button off the page (also before T03) */
@media(max-width:360px){header{padding:0 12px;gap:8px}.apLogo{width:40px;height:40px}.brand{gap:8px}.brandName{font-size:18px}.navend{gap:6px;min-width:0}.siteLink{font-size:13px;line-height:1.3}}
/* === /T03 === */
/* 10/30 每月付款: the member's monthly plan (one box per plan) on the overview and the orders tab. */
.monthlyBox{border:1px solid var(--gold);border-radius:4px;padding:22px 26px;margin:18px 0 6px;background:#16324f}
.monthlyBox .mpHead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
.monthlyBox h3{margin:0;font-size:18px}
.monthlyBox p{margin:8px 0 0}
.monthlyBox .mpStatus{display:inline-block;padding:2px 12px;border:1px solid currentColor;border-radius:999px;font-size:13px;color:var(--gold)}
.monthlyBox .mpStatus.mp-suspended{color:#f2a49b}.monthlyBox .mpStatus.mp-ended{color:var(--muted)}
.monthlyBox .mpAsk{color:var(--text)}
.monthlyBox .mpActions{margin-top:14px}
.monthlyBox code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gold)}
/* 11/1 老闆娘（參考 Claude 的登入頁，越簡單越好）：登入、註冊、免費試用共用一頁——畫面正中一塊：標題、一行、Google、或、Email、條款小字 */
.authPage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:56px 16px 64px}
.authCard{width:100%;max-width:420px;text-align:center}
.authCard h1{margin:0 0 10px;font-size:34px;line-height:1.3;font-weight:700;letter-spacing:-.5px;text-wrap:balance}
.authLead{margin:0 0 30px;font-size:16px;color:var(--muted);text-wrap:balance}
.authCard .googleBtn{display:flex;width:100%;min-width:0;min-height:50px;border-radius:10px}
.authCard .orDivider{max-width:none;margin:20px 0}
.authForm{display:flex;flex-direction:column;gap:10px;margin:0}
.authForm input{width:100%;min-height:50px;padding:12px 16px;border:1px solid #3e536c;border-radius:10px;background:transparent;color:var(--text);font:inherit;font-size:15px}
.authForm input:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.authForm .btn{width:100%;min-height:50px;padding:12px 16px;border-radius:10px}
.authCard .formStatus{text-align:center}
.authNote{margin:0 0 16px;font-size:14.5px;color:var(--muted)}
.authNote .linkButton{font-size:14px}
.authLegal{margin:26px 0 0;font-size:13px;color:#9fb0c2}.authLegal a{color:#9fb0c2;text-decoration:underline;text-underline-offset:3px}.authLegal a:hover{color:var(--gold)}
.authPage .macBox,.authPage .macLink{width:100%;max-width:420px;margin-top:28px}
main:has(>.authPage){display:flex;flex-direction:column}
/* 11/02 (審查 A): titles break between words only -- 「註冊」 and "7-day" stay whole at 390.  Chinese and Korean only:
   Japanese titles have no spaces, keep-all would leave a lone character on the last line. */
.authCard h1:is(:lang(zh),:lang(ko)),.t3 h1:is(:lang(zh),:lang(ko)){word-break:keep-all;overflow-wrap:break-word}.nw{white-space:nowrap}
/* 11/03: Korean 「웹사이트로 돌아가기」 breaks between words only (「돌아가기」 whole at 390). */
.siteLink:lang(ko){word-break:keep-all}
/* 11/03 (r4): body text too -- Korean breaks between words only; Japanese between phrases (「インストール」 whole). */
:is(.authCard,.t3,.empty.trial):lang(ko){word-break:keep-all;overflow-wrap:break-word}
:is(.authCard,.t3,.empty.trial):lang(ja){word-break:auto-phrase}
/* 11/03 (r4, CEO): the Japanese header link stays on one line at 390 (「公式サイトへ戻る」); the footer breaks Korean between
   words, Japanese between phrases (「バックテスト」 whole). */
.siteLink:lang(ja){white-space:nowrap}
.copyright:lang(ko){word-break:keep-all;overflow-wrap:break-word}.copyright:lang(ja){word-break:auto-phrase}
@media(max-width:760px){.siteLink:lang(ja){font-size:13px}.navend:lang(ja){gap:6px}}
/* 11/8: at 375 the Japanese header (「公式サイトへ戻る」 kept whole + 日本語 ▾) was 12px wider than the screen (page scrolled sideways). */
@media(max-width:400px){header:lang(ja){padding:0 10px;gap:8px}.brand:lang(ja){gap:8px}}
/* 11/8 老闆娘規則「不准框內捲軸」（放在檔尾，蓋過上面表格的一般樣式）：表格放不下時（內容區 760px 以下：手機、平板、1024 寬的筆電）不再框內左右捲，改成一列一張卡、欄位直排；
   欄名由 member.js labelCells 寫進每格的 data-label。看內容區本身的寬（container query），不是看整個視窗。 */
.workspace>div{container-type:inline-size}
@container (max-width:760px){
  .scrollTable{overflow:visible}
  .table{min-width:0;font-size:14px}
  .table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .table,.table tbody,.table tr,.table td{display:block;width:100%}
  .table tr{border:1px solid var(--line);border-radius:5px;padding:4px 14px;margin-top:14px;background:#0f2946}
  .table td{border-bottom:1px solid var(--line);padding:10px 0;white-space:normal}
  .table td:last-child{border-bottom:0}
  .table td:first-child{white-space:normal}
  .table td[data-label]::before{content:attr(data-label);display:block;color:var(--muted);font-size:12px;font-weight:600;margin-bottom:4px}
  .table code,.table td code:not(.hash){white-space:normal;word-break:break-all;overflow-wrap:anywhere}
  .table .btn{white-space:normal}
  .table td .btn{width:100%}
}
/* 11/10 X75 模擬交易 (member.js paperView): the member center's own cards, type sizes and buttons.  Up / down colours follow the
   page language's convention (Chinese pages: red up, green down; others: green up, red down); a sign always goes with the colour. */
:root{--up:#5fd496;--down:#ff8a80}
html[lang^=zh]{--up:#ff8a80;--down:#5fd496}
.up{color:var(--up)}.down{color:var(--down)}
.table td.num,.table th.num{text-align:end;font-variant-numeric:tabular-nums}
.paperBack{color:var(--gold);font-size:14px;text-decoration:underline}
.paperBack::before{content:'‹ '}[dir=rtl] .paperBack::before{content:'› '}
.paperLink{color:var(--gold);text-decoration:underline;font-weight:600}
.paperEmpty .btn{margin-top:14px}
.paperTitle{font-size:22px;margin:6px 0 4px;line-height:1.35}
.paperHead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;margin-bottom:8px}
.paperHead>div:first-child{min-width:0}
.paperActions{display:flex;flex-wrap:wrap;gap:10px}.paperActions .t3Act{min-height:40px;padding:0 16px;font-size:14px}
.paperAsk{border:1px solid var(--gold);border-radius:5px;padding:16px 20px;margin:12px 0;background:#16324f}.paperAsk p{margin:0;color:var(--text)}.paperAsk .t3Actions{margin:12px 0 0}
.paperKey,.paperKv{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:14px 0 18px}
.paperKey .card,.paperKv .card{padding:14px 16px}
.paperKey .card span,.paperKv .card span{display:block;color:var(--muted);font-size:13px}
.paperKey .card strong{display:block;font-size:24px;font-variant-numeric:tabular-nums}
.paperKv .card strong{display:block;font-size:18px;font-variant-numeric:tabular-nums}
.paperKey .card:first-child strong{color:var(--gold)}
.paperState{margin:14px 0}
.paperChart{margin:12px 0 8px;background:#0f2540;border:1px solid var(--line);border-radius:5px;padding:12px}.paperChart svg{width:100%;height:auto;display:block}
.pGrid{stroke:#26384d;stroke-width:1}.pTick{fill:#9fb0c2;font-size:12px}.pLn{fill:none;stroke-width:2}.pLn-nav{stroke:#ebd2a0}.pLn-twin{stroke:#7fb2e5;stroke-dasharray:6 4}.pLn-bench{stroke:#9aa7b6;stroke-dasharray:2 3}
.paperChart figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:13px;color:var(--muted);margin-top:8px}.pAxis{margin-inline-start:auto}
.pLg{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text);padding:6px 10px;min-height:36px;border:1px solid var(--line);border-radius:3px}
.pLg[aria-pressed=false]{opacity:.45;text-decoration:line-through}.pLg:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.pLg i{display:inline-block;width:22px;height:0;border-top:2px solid}
.pLg-nav i{border-color:#ebd2a0}.pLg-twin i{border-color:#7fb2e5;border-top-style:dashed}.pLg-bench i{border-color:#9aa7b6;border-top-style:dotted}
.paperNext{border:1px solid var(--gold);border-radius:5px;padding:16px 20px;margin:20px 0;background:#16324f}.paperNext h3{margin:0 0 4px}.paperNext p{margin:6px 0 0}.paperNext .table{margin-top:10px}
.paperPager{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0}.paperPager .t3Act{min-height:40px;font-size:14px;padding:0 16px}
.paperMore,.paperDefs{margin:22px 0}.paperMore summary,.paperDefs summary{cursor:pointer;color:var(--gold);font-size:14px}
.paperDefs dl{display:grid;grid-template-columns:minmax(140px,max-content) 1fr;gap:6px 16px;font-size:13px;margin:12px 0 0}
.paperDefs dt code{color:var(--gold);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.paperDefs dd{margin:0;color:var(--muted)}
.paperForm{display:grid;gap:12px;max-width:760px;margin:18px 0}.paperForm>label{display:grid;gap:4px;max-width:360px}
.paperForm input,.paperForm select{background:#0b1a2b;border:1px solid #4e5f72;border-radius:3px;padding:10px 12px;color:var(--text);font:inherit;min-height:44px}
.paperForm input:focus,.paperForm select:focus{border-color:var(--gold);outline:none}
.paperForm input[aria-invalid=true]{border-color:#f2a49b}
.fieldErr{color:#f2a49b;font-size:14px;margin:-4px 0 4px}.fieldErr a{color:var(--gold)}
.pickSet{border:0;padding:0;margin:0;min-width:0}.pickSet legend{color:var(--muted);font-size:13px;padding:0;margin-bottom:6px}
.pickTools{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:end;margin-bottom:10px}.pickTools input{flex:1 1 220px;min-width:0}.pickSort{display:grid;gap:4px}
.pickList{display:grid;gap:14px}
.pickGroup h4{margin:4px 0 8px;font-size:14px;color:var(--gold);letter-spacing:1px}
.paperPick{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:5px;padding:12px 14px;background:#122f50;cursor:pointer;margin-bottom:8px}
/* hidden by the search (and the no-match line until nothing matches): .sub's display:block must not show them */
.paperPick[hidden],.pickGroup[hidden],.paperForm [hidden]{display:none!important}
.paperPick:hover{border-color:#9d835d}.paperPick:has(input:checked){border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.paperPick input{margin-top:5px;accent-color:#ebd2a0;min-height:0}
.pickBody{display:grid;gap:6px;min-width:0}.pickHave a{font-weight:500}.pickTitle{font-weight:600}
.pickPerf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pickPerf small{display:block;color:var(--muted);font-size:12px}.pickPerf b{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.pickFormula{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;color:var(--gold);white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.paperFormula{white-space:pre-wrap;word-break:break-word;background:#081522;border:1px solid var(--line);border-radius:4px;padding:10px 12px;font:13px/1.5 ui-monospace,Consolas,monospace;color:var(--gold);margin:0 0 12px}
.paperPublic{margin:12px 0 18px}.paperPublic code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gold);word-break:break-all;user-select:all}
@container (max-width:760px){
  .pickPerf{grid-template-columns:repeat(2,minmax(0,1fr))}
  .paperDefs dl{grid-template-columns:1fr}.paperDefs dd{margin-bottom:8px}
  .paperKey,.paperKv{grid-template-columns:repeat(2,minmax(0,1fr))}
  .paperKey .card strong{font-size:19px}
  .paperForm>label{max-width:none}
  .pAxis{margin-inline-start:0;flex-basis:100%}
  .paperPager .t3Act{width:auto;flex:1 1 0}.paperPager .sub{order:-1;flex-basis:100%}
}
/* 601–760px: the member center's card rule (above) is undone for the paper tables: a table that scrolls sideways */
@container (min-width:601px) and (max-width:760px){
  .scrollTable.paperScroll{overflow-x:auto}
  .table.paperT{display:table;min-width:640px}
  .paperT thead{position:static;width:auto;height:auto;overflow:visible;clip-path:none;display:table-header-group}
  .paperT tbody{display:table-row-group}
  .paperT tr{display:table-row;border:0;padding:0;margin:0;background:none}
  .paperT td{display:table-cell;width:auto;border-bottom:1px solid var(--line);padding:8px 10px}
  .paperT td:last-child{border-bottom:1px solid var(--line)}
  .paperT td[data-label]::before{content:none}
}
/* up to 600px: each row a card, two fields a line, so a page of fills stays short */
@container (max-width:600px){
  .paperT td.num{text-align:start}
  .paperT tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
  .paperT td{border-bottom:0;padding:5px 0;font-size:13px}
  .paperT td[data-label]::before{display:inline;margin-inline-end:6px;font-size:12px}
  .paperT td .sub{display:inline;margin-inline-start:6px}
}
/* the way back to the list stays at hand under the sticky header */
.paperBar{position:sticky;top:100px;z-index:5;margin:0 0 6px;padding:8px 0;background:var(--bg)}
@media(max-width:760px){.paperBar{top:76px}.workspace>div{scroll-margin-top:84px}}
/* 11/10 X108 模擬交易帳戶頁：使用者選定的設計稿——寬欄 A 儀表板、窄欄（內容區 ≤760px）E 手機分享頁。
   普魯士深藍（頁 #001b30、底 #00243f、卡 #003153、內線 #164a70）＋漸層香檳金（小標、權益比率大字、頁首金線、曲線、主按鈕）。
   漲跌色照頁面語言慣例（中文紅漲綠跌），深底上用 #ff8f86／#74d3a2。 */
.pDash{--pBg:#001b30;--pBand:#00243f;--pCard:#003153;--pLine:#164a70;--pMuted:#9fb0c2;--pMuted2:#a9bccf;--pHead:#f1e3bd;--pGoldLine:rgba(214,180,124,.32);
  --up:#74d3a2;--down:#ff8f86;background:var(--pBg);border-radius:16px;overflow:hidden;margin:6px 0 24px;color:#e6eaef;font-family:'Manrope','Noto Sans TC','PingFang TC','Microsoft JhengHei',sans-serif}
html[lang^=zh] .pDash{--up:#ff8f86;--down:#74d3a2}
.pDash .up{color:var(--up)}.pDash .down{color:var(--down)}
.pDash .cg{background:var(--gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#e2c48e}
.pDash p{margin:0}
.pHero{background:var(--pBand);border-bottom:2px solid #d6b47c;padding:36px 28px 32px;display:flex;flex-direction:column;gap:24px}
.pHeroTop{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 20px}
.pHeroText{display:flex;flex-direction:column;gap:10px;min-width:0}
.pEye{font-size:14px;font-weight:700;letter-spacing:2px}
.pH1{margin:0;font-size:36px;font-weight:800;line-height:1.25;letter-spacing:.3px;color:#e6eaef;overflow-wrap:anywhere}
.pMeta,.pSub{color:var(--pMuted);font-size:14px}
.pDash .paperActions{gap:12px}
.pBtn{height:48px;padding:0 20px;border-radius:12px;border:1px solid rgba(226,196,142,.45);background:transparent;color:#e6eaef;font-size:15px;font-weight:700}
.pBtn:hover{border-color:#e2c48e}.pBtn:focus-visible,.pRanges button:focus-visible,.pLinkBtn:focus-visible{outline:2px solid #f7e8c8;outline-offset:2px}
.pBtn.pGold{border:0;background:var(--gradient);color:#00243f;font-weight:800;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.pBtn[disabled]{opacity:.55;cursor:default}
.pKpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px}
.pKpi{background:var(--pCard);border:1px solid rgba(226,196,142,.18);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}
.pKpi>span,.pKpi>small{font-size:13px;color:var(--pMuted)}
.pKpi strong{font-size:22px;white-space:nowrap;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.3}
.pBody{padding:28px;display:flex;flex-direction:column;gap:22px}
.pBody>.paperAsk,.pBody>.paperPublic,.pBody>.formStatus{margin:0}
.pCard{background:var(--pCard);border:1px solid var(--pGoldLine);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;min-width:0;box-shadow:0 8px 24px rgba(11,26,43,.08)}
.pCard h3,.pNextCard h3{margin:0;font-size:21px;font-weight:800;color:var(--pHead);line-height:1.35}
.pCardHead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px}
.pCardHead>div:first-child{display:flex;flex-direction:column;gap:2px}
.pRanges{display:flex;gap:6px}
.pRanges button{height:38px;padding:0 14px;border-radius:999px;border:1px solid var(--pGoldLine);font-size:14px;color:#e6eaef}
.pRanges button[aria-pressed=true]{background:var(--pBand);border-color:var(--pBand);color:#e2c48e;font-weight:700}
.pLegend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--pMuted2);font-variant-numeric:tabular-nums}
.pLegend i{display:inline-block;width:20px;height:3px;vertical-align:middle;margin-inline-end:6px}
.pKeyEq{background:var(--gradient)}.pKeyBench{background:#9fb0c2}.pLegend i.pKeyOne{height:0;border-top:2px dashed var(--pMuted2)}
.pPlot{display:flex;gap:4px;direction:ltr}
.pPlot svg{display:block;overflow:visible}
.pPlot>svg:last-child{flex:1 1 auto;min-width:0;width:100%}
.pYax{flex:0 0 48px}.pYax text{fill:var(--pMuted2);font-size:12px;font-variant-numeric:tabular-nums}
.pXax{display:flex;justify-content:space-between;font-size:13px;color:var(--pMuted2);padding-inline-start:52px;font-variant-numeric:tabular-nums}
.pG{stroke:var(--pLine);stroke-width:1;vector-effect:non-scaling-stroke}
.pOne{stroke:var(--pMuted2);stroke-dasharray:6 5;vector-effect:non-scaling-stroke}
.pBench{fill:none;stroke:#9fb0c2;stroke-width:2;vector-effect:non-scaling-stroke}
.pEq{fill:none;stroke-width:3;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.pDd{fill:rgba(116,211,162,.30);stroke:#74d3a2;stroke-width:1.5;vector-effect:non-scaling-stroke}
html:not([lang^=zh]) .pDd{fill:rgba(255,143,134,.26);stroke:#ff8f86}
.pBand{fill:rgba(214,180,124,.08)}
.pDdBox{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--pLine);padding-top:16px;margin-top:4px}
.pDdHead{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px}
.pDdHead h4{margin:0;font-size:18px;font-weight:800;color:var(--pHead)}
.pDdHead span{font-size:14px;color:var(--pMuted2)}
.pWait{color:var(--pMuted2);font-size:15px;padding:18px 0;text-align:center;border:1px dashed var(--pLine);border-radius:12px}
.pLinkBtn{color:#e2c48e;font-size:14px;font-weight:700;padding:6px 0;align-self:flex-start;text-decoration:underline;text-underline-offset:3px}
.pLinkBtn:hover{color:#f7e8c8}
.pDash .table.pTbl{font-size:15px}
.pDash .table.pTbl th{color:var(--pMuted2);font-size:13px;font-weight:700;border-bottom:1px solid var(--pGoldLine);white-space:nowrap}
.pDash .table.pTbl td{border-bottom:1px solid var(--pLine);font-variant-numeric:tabular-nums;white-space:nowrap}
.pDash .pStrong{font-weight:700}
.pGrow .table.pTbl{font-size:14px}.pGrow .table.pTbl th,.pGrow .table.pTbl td{padding-inline:7px}
.pSplit{display:flex;flex-wrap:wrap;gap:22px;align-items:flex-start}
.pGrow{flex:999 1 440px}
.pAside{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:20px}
.pNextCard{background:var(--pBand);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 16px 40px rgba(0,0,0,.25)}
.pNextCard h3{color:#e6eaef}
.pMoves{display:flex;flex-direction:column;gap:8px}
.pSideHead{font-size:14px;font-weight:700}
.pMove{display:flex;justify-content:space-between;gap:4px 8px;padding:11px 14px;border-radius:12px;background:var(--pCard);font-size:15px;flex-wrap:wrap}
.pMove.pBuy{border:1px solid color-mix(in srgb,var(--up) 40%,transparent)}.pMove.pSell{border:1px solid color-mix(in srgb,var(--down) 40%,transparent)}
.pNum{font-variant-numeric:tabular-nums;color:#c3ccd7}
.pFoot{font-size:14px;color:var(--pMuted);border-top:1px solid #283544;padding-top:12px}
.pRecent{font-size:15px;gap:10px}
.pRecentRow{display:flex;justify-content:space-between;gap:10px}
.pTail .paperMore,.pTail .paperDefs{margin:8px 0}
.pDash .paperState{color:#c3ccd7;font-size:16px}
/* E：窄欄 */
.pMTop{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pMTop .pEye{font-size:13px}.pMTop .pSub{font-size:12px}
.pMBig{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.pMBig>div:first-child{display:flex;flex-direction:column}
.pMBig strong{font-size:48px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}
.pMSide{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:14px;color:#c3ccd7;text-align:end}
.pMSide b{font-weight:800;color:#e6eaef}
.pMChart{background:var(--pCard);border:1px solid rgba(226,196,142,.18);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:4px}
.pMChart svg{width:100%;display:block;height:120px}.pMChart svg+svg{height:44px}
.pMAx{display:flex;justify-content:space-between;gap:6px;font-size:11px;color:var(--pMuted);font-variant-numeric:tabular-nums}
.pTiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pTiles div{background:var(--pCard);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:2px;min-width:0}
.pTiles span{font-size:11px;color:var(--pMuted)}.pTiles strong{font-size:16px;white-space:nowrap;font-weight:800;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.pPill{display:flex;align-items:center;gap:12px;min-height:44px}
.pPill>div{display:flex;flex-direction:column;min-width:0}
.pPill b{font-size:15px}.pPill .pSub{font-size:12px;color:var(--pMuted2)}
.pTag{flex:0 0 auto;font-size:13px;font-weight:800;padding:3px 10px;border-radius:999px;border:1px solid currentColor}
.pHoldRow{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--pLine)}
.pHoldRow:last-child{border-bottom:0}
.pHoldRow>div{display:flex;flex-direction:column;min-width:0}
.pHoldRow b{font-size:15px}.pHoldRow .pSub{font-size:12px;color:var(--pMuted2)}
.pHoldRow strong{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}
.pNarrow{display:none!important}
@container (max-width:760px){
  .pWide{display:none!important}
  section.pNarrow{display:flex!important}
  div.pNarrow{display:block!important}
  .pDash{border-radius:12px}
  .pHero{padding:26px 18px 22px;gap:14px}
  .pH1{font-size:26px;line-height:1.3}
  .pHero .paperActions{width:100%}.pHero .pBtn{flex:1 1 0;height:46px}
  .pBody{padding:18px 16px;gap:16px}
  .pCard{padding:18px}
  .pCard h3{font-size:19px}
  .pDash .table.pTbl td{white-space:normal}
  .pDash .table tr{background:#002847;border-color:var(--pLine)}
  .pDash .table td{border-bottom-color:var(--pLine)}
}
