:root{color-scheme:light;--ink:#192b38;--muted:#697983;--accent:#126d60;--line:#dde5e6;--bg:#f3f6f7}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif}a{color:var(--accent);text-decoration:none}button,input,select{font:inherit}button,.button{cursor:pointer;border:1px solid #cbd9db;background:white;color:var(--ink);padding:9px 16px;border-radius:8px;text-align:center}button:disabled{opacity:.5;cursor:not-allowed}button:hover:not(:disabled),.button:hover{border-color:var(--accent)}button.primary{background:var(--accent);color:white;border-color:var(--accent)}button.quiet{border:0;background:transparent}input,select{border:1px solid #cbd9db;background:#fff;border-radius:7px;padding:10px 12px;max-width:100%;min-width:0}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #2d9c8b;outline-offset:3px}label{display:grid;gap:5px;color:#405360}form{display:grid;gap:17px}.member-header{background:#fff;border-bottom:1px solid var(--line);padding:17px max(24px,calc((100% - 1200px)/2));display:flex;justify-content:space-between;align-items:center;gap:20px}.member-header nav{display:flex;align-items:center;gap:20px}.member-brand{font-size:24px;font-weight:750;white-space:nowrap;color:var(--ink)}.member-brand small{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.member-main{max-width:1200px;margin:40px auto;padding:0 24px}h1{font-size:32px;line-height:1.3;margin:8px 0 12px;letter-spacing:-.6px}h2{font-size:22px;margin:0 0 16px}h3{font-size:17px;margin:0 0 10px}p{margin:8px 0 15px}.muted{color:var(--muted);font-size:14px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--accent)}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.heading h2{margin:0}.badge{border-radius:5px;background:#e0efe9;color:#1b6755;font-size:12px;padding:4px 9px;white-space:nowrap}.badge.off{background:#edf0f1;color:#74828c}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);padding:0 0 18px;margin:30px 0}section{margin:30px 0 45px;scroll-margin-top:24px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.card,.notice{padding:23px;background:#fff;border:1px solid var(--line);border-radius:12px}.card .heading{margin-bottom:10px}.stack{display:grid;gap:10px}.notice.read{opacity:.65}.notice time{font-size:12px;color:var(--muted)}.notice p{margin:10px 0}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.inline{display:flex;gap:8px;align-items:center;margin-top:18px}.auth-card{max-width:440px;margin:60px auto;background:white;padding:38px;border:1px solid var(--line);border-radius:15px}.auth-card form{margin:27px 0 20px}.big{font-size:30px;font-weight:700;font-variant-numeric:tabular-nums}.positive{color:#b34343}.negative{color:#24764f}.metrics{display:flex;gap:22px;flex-wrap:wrap}.grant-grid{grid-template-columns:1fr 1.4fr 1fr auto;align-items:end}.grant-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:10px 0;gap:10px}.empty{padding:28px;text-align:center;color:var(--muted);background:white;border:1px dashed var(--line);border-radius:10px}.member-status{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);max-width:90vw;background:#213d48;color:#fff;padding:12px 22px;border-radius:8px;z-index:10;box-shadow:0 5px 25px #192b3820}.member-status:empty{display:none}.qr{display:block;width:200px;height:200px;object-fit:contain;margin-top:15px}img[hidden],button[hidden]{display:none}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f1f5f5;padding:20px;border-radius:8px;font-size:12px}details{margin:15px 0}summary{cursor:pointer;color:var(--accent)}dl{overflow-wrap:anywhere}dt{font-weight:650}dd{margin:4px 0 12px;color:var(--muted)}footer{text-align:center;color:var(--muted);padding:25px;font-size:12px}@media(max-width:750px){.member-header{padding:14px 18px;align-items:flex-start}.member-header nav{gap:10px;flex-wrap:wrap;font-size:13px;justify-content:flex-end}.member-main{padding:0 16px;margin-top:25px}.grant-grid{grid-template-columns:1fr}.heading{flex-wrap:wrap}h1{font-size:27px}.tabs{gap:17px;font-size:14px}.auth-card{padding:25px;margin-top:25px}.card{padding:19px}.grant-row{align-items:flex-start}.member-brand{font-size:22px}}
.tabs{overflow-x:auto}.tabs a{white-space:nowrap;flex-shrink:0}
body[data-member-page="portal"] #return-list{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-member-page="portal"] #return-list>.empty{grid-column:1/-1}
@media(max-width:950px){body[data-member-page="portal"] #return-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){body[data-member-page="portal"] #return-list{grid-template-columns:minmax(0,1fr)}}
/* Keep member section links available while reading long strategy lists. */
body[data-member-page="portal"] .member-main>.tabs{position:sticky;top:0;z-index:5;gap:10px;margin:30px 0;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 14px #7625310d;scrollbar-width:thin}
body[data-member-page="portal"] .tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:9px 20px;border:1px solid #e4c9cd;border-radius:8px;background:#fff;color:var(--accent);font-size:17px;font-weight:650;line-height:1.5;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
body[data-member-page="portal"] .tabs a:hover{background:#fbe7e9;border-color:var(--accent)}
body[data-member-page="portal"] .tabs a[aria-current="location"]{background:var(--accent);border-color:var(--accent);color:#fff}
body[data-member-page="portal"] .member-main>section{scroll-margin-top:100px}
@media(max-width:750px){body[data-member-page="portal"] .member-main>.tabs{gap:8px;padding:10px 8px;border-radius:10px}body[data-member-page="portal"] .tabs a{padding:9px 14px;font-size:16px}}
/* Member portal: warm red accents, with financial gain/loss colors preserved. */
body[data-portal="member"]{--accent:#b42332;--line:#eadfe0;--bg:#faf7f7;--ink:#30272a;--muted:#796d72}
body[data-portal="member"] .member-header{border-top:3px solid var(--accent)}
body[data-portal="member"] .member-brand{color:var(--accent)}
body[data-portal="member"] .badge:not(.off){background:#fbe7e9;color:#a61f2d}
body[data-portal="member"] button,body[data-portal="member"] .button{color:var(--accent);border-color:#e4c9cd}
body[data-portal="member"] button.primary{background:var(--accent);border-color:var(--accent);color:#fff}
body[data-portal="member"] button:hover:not(:disabled),body[data-portal="member"] .button:hover{background:#fff0f1;border-color:var(--accent)}
body[data-portal="member"] button.primary:hover:not(:disabled){background:#971d2a}
body[data-portal="member"] input,body[data-portal="member"] select{border-color:#dfd1d4;accent-color:var(--accent)}
body[data-portal="member"] :is(input,select):focus,body[data-portal="member"] :is(button,a):focus-visible{outline-color:var(--accent)}
body[data-portal="member"] .member-status{background:#762531}
body[data-portal="member"] .detail-table th{background:#fbebed}
body[data-portal="member"] .account-detail::backdrop{background:#30272a66}
body[data-portal="admin"] .member-header{background:#192b38;color:#fff;border-color:#192b38}body[data-portal="admin"] .member-header a,body[data-portal="admin"] .member-header button{color:#fff}body[data-portal="admin"] .member-brand small{color:#a9c8c8}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;flex-wrap:wrap;font-size:13px;color:var(--muted)}.pagination-summary{white-space:nowrap}.pagination .actions{gap:8px}.pagination button{padding:6px 10px}.pagination-size{display:flex;align-items:center;gap:5px;white-space:nowrap}.pagination select{padding:6px}.pagination-jump{display:flex;gap:6px;align-items:center}.pagination-jump input{width:64px;padding:6px}.pagination[aria-busy="true"]{opacity:.6}@media(max-width:600px){.pagination .actions{width:100%;flex-wrap:wrap}.pagination-summary{width:100%}}

.strategy-detail-link{border:0;padding:0;background:transparent;color:var(--accent);font:inherit;font-weight:700;text-align:left}.strategy-detail-link:hover{text-decoration:underline}.strategy-detail-link span{font-size:14px}.account-detail{position:fixed;inset:0 0 0 auto;margin:0;width:min(960px,96vw);height:100dvh;max-height:100dvh;max-width:100vw;border:0;border-left:1px solid var(--line);padding:28px;background:var(--bg);color:var(--ink);overflow:auto;box-shadow:-12px 0 40px #192b3820}.account-detail::backdrop{background:#192b3866}.detail-header{position:sticky;top:-28px;background:var(--bg);padding:14px 0;z-index:1}.detail-header button{flex-shrink:0}.account-detail section{margin:26px 0}.detail-table{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.detail-table table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}.detail-table th,.detail-table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top;min-width:90px}.detail-table th{background:#eaf0f0;white-space:nowrap}.detail-table small{display:block;color:var(--muted)}.detail-table small.positive{color:#b34343}.detail-table small.negative{color:#24764f}.detail-table tr:last-child td{border-bottom:0}@media(max-width:600px){.account-detail{width:100vw;padding:18px}.detail-header{top:-18px}}

.today-return{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:16px 0}.today-return .heading{margin-bottom:6px;gap:8px;font-size:14px}.today-return .heading small{color:var(--muted);font-size:12px}.today-return button{padding:4px 0;font-size:12px}.today-return>strong{font-size:24px;margin-right:15px;font-variant-numeric:tabular-nums}.today-return>small{display:block;margin-top:5px}.performance-select{display:flex;align-items:center;gap:8px;font-size:13px}.performance-select select{padding:6px 10px}

.backtest-card{padding:14px 0;margin:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.backtest-card>small{display:block}.backtest-return{display:block;font-size:28px;font-weight:750;border:0;background:transparent;padding:3px 0;font-variant-numeric:tabular-nums}.backtest-return span{font-size:16px}body[data-portal="member"] .backtest-return.positive{color:#b34343}body[data-portal="member"] .backtest-return.negative{color:#24764f}.backtest-highlight{display:grid;gap:4px;margin:20px 0;padding:18px;background:#fff;border:1px solid var(--line);border-radius:10px}.backtest-highlight strong{font-size:30px}.backtest-highlight small{color:var(--muted)}#backtest-detail{width:min(1120px,98vw)}#backtest-body li{margin:8px 0;font-size:14px}#backtest-body .badge{white-space:normal}@media(max-width:600px){#backtest-detail{width:100vw}}

.backtest-annualized{margin:12px 0;padding-top:10px;border-top:1px dashed var(--line)}.backtest-annualized>small,.backtest-annualized>strong{display:block}.backtest-annualized>strong{font-size:22px;font-variant-numeric:tabular-nums}

.backtest-full-period{margin-top:10px;color:var(--ink)}

/* Small rule summaries beside the subscription strategy names. */

.strategy-title{display:flex;align-items:baseline;gap:5px}

.purchase-area{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap}.purchase-area strong{color:var(--accent);font-size:20px}.purchase-area small{font-size:12px;color:var(--muted);font-weight:400}.price-form{display:grid;grid-template-columns:minmax(180px,2fr) 1fr 1fr auto auto;align-items:center;gap:14px;background:#fff;padding:18px;border:1px solid var(--line);border-radius:10px}.price-form .inline{margin:0}.price-form input[type=checkbox],.payment-choice input{width:auto}.payment-checkout{width:min(520px,94vw);max-height:90dvh;overflow:auto;border:1px solid var(--line);border-radius:16px;padding:26px;background:var(--bg);color:var(--ink)}.payment-checkout::backdrop{background:#30272a66}.payment-checkout .payment-price{font-size:26px;color:var(--accent);font-weight:700}.payment-choice{display:flex;align-items:center;gap:7px;padding:10px 0}.payment-checkout #payment-create{margin:18px 0;width:100%}.payment-checkout #payment-result{text-align:center;overflow-wrap:anywhere}.payment-qr{display:block;width:240px;max-width:100%;height:auto;background:white;margin:15px auto}.payment-checkout [hidden]{display:none}@media(max-width:850px){.price-form{grid-template-columns:1fr 1fr}.price-form>strong{grid-column:1/-1}}@media(max-width:480px){.price-form{grid-template-columns:1fr}}

.member-inbox{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.unread-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}

/* Account details: stock charts and compact trade direction/quantity. */
.member-stock-link{border:0;background:transparent;padding:0;text-align:left;font:inherit;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px;white-space:nowrap}.member-stock-link small{text-decoration:none}.trade-side-quantity{white-space:nowrap}
#holding-stock-dialog{width:1040px;max-width:calc(100vw - 24px);max-height:90dvh;overflow:auto;padding:22px;border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink)}#holding-stock-dialog::backdrop{background:#30272a66}#holding-stock-dialog .dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px}#holding-stock-dialog h2{font-size:20px;margin:0;line-height:1.5}.stock-chart-toolbar{display:flex;align-items:center;gap:14px;margin-top:16px}.stock-chart-toolbar label{display:flex;align-items:center;gap:8px}#holding-stock-dialog .hint{font-size:13px;color:var(--muted)}#holding-stock-status{min-height:24px;line-height:1.7}#holding-stock-chart{height:440px;width:100%}@media(max-width:600px){#holding-stock-dialog{padding:14px}#holding-stock-dialog h2{font-size:17px}#holding-stock-chart{height:360px}}

.return-valuation>span{display:block;margin-top:4px;font-size:12px}.return-valuation time{display:inline-block;white-space:nowrap;font-variant-numeric:tabular-nums}

.holding-term{display:inline-block;vertical-align:middle;white-space:nowrap;padding:2px 7px;border:1px solid #e4c9cd;border-radius:5px;background:#fff0f1;color:var(--accent);font-size:12px;font-weight:600;line-height:1.5;margin-left:3px}

.trial-banner{border:2px solid #ddb45c;background:linear-gradient(115deg,#fff5df,#fff);color:#3b2f1d;margin:24px 0;padding:24px}.trial-banner h2{color:#855313}#trial-form[hidden]{display:none!important}#trial-form{align-items:flex-end}#trial-form label{min-width:0;max-width:100%}#trial-form select,#trial-form button{height:44px}#trial-form button{white-space:nowrap}.trial-banner select{max-width:100%;min-width:240px}@media(max-width:600px){#trial-form label,#trial-form button{width:100%}.trial-banner select{width:100%;min-width:0}}

.backtest-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:12px;margin:14px 0}.backtest-metric-grid small,.backtest-metric-grid strong{display:block}.backtest-metric-grid strong{font-size:17px;font-variant-numeric:tabular-nums}.backtest-research-note{font-size:12px;line-height:1.65;color:var(--muted)}
