:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft JhengHei",sans-serif;color:#eee6da;background:#2b2726;font-synthesis:none;--ink:#193c47;--brand:#393939;--soft:#f4f4f4;--muted:#808080;--line:#f0f0f0}*{box-sizing:border-box}body{margin:0;padding:24px;display:flex;justify-content:center;min-height:100dvh}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:2px solid #494949;outline-offset:-2px}.phone{position:relative;width:393px;height:852px;flex-shrink:0;display:flex;flex-direction:column;background:#2b2726;border-radius:42px;overflow:hidden;outline:7px solid #193c47;box-shadow:0 25px 65px #193c472e;isolation:isolate}.status{height:55px;flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#2b2726;color:#eee6da;font-size:14px}.status i{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:116px;height:32px;border-radius:22px;background:#193c47}.status>span{font-size:12px}.chat-head{height:58px;flex-shrink:0;display:flex;align-items:center;gap:14px;padding:0 17px 5px;background:#2b2726}.chat-head>span{font-size:37px}.chat-head h1{font-size:18px;margin:0;font-weight:700}.chat-head small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.chat-head button{margin-left:auto;border:0;background:transparent;font-size:24px;width:40px;height:40px;color:#eee6da}.demo-banner{height:23px;flex-shrink:0;display:grid;place-items:center;background:#2b2726;color:#b4a89c;font-size:9px}.chat-body{min-height:0;flex:1;overflow-y:auto;padding:12px;scrollbar-width:thin;scrollbar-color:#bbbbbb transparent}.date{font-size:10px;text-align:center;color:#b4a89c;margin:2px 0 15px}.chat-message{margin-bottom:18px}.sender{font-size:10px;color:#b4a89c;margin:0 0 6px 3px}.welcome{border:1px solid #44392f;border-radius:4px 18px 18px;background:#262423;padding:22px 19px}.welcome h2{font-size:20px;line-height:1.5;margin:0 0 9px}.welcome p{font-size:12px;line-height:1.8;color:#b4a89c;margin:0 0 20px}.primary,.secondary{width:100%;border:0;border-radius:11px;padding:12px 10px;font-size:13px;font-weight:600;margin:5px 0;min-height:43px}.primary{background:var(--brand);color:white}.secondary{background:var(--soft);color:var(--brand)}.outline{border:1px solid #44392f;background:#262423;border-radius:7px;color:var(--brand);padding:8px 12px;font-size:12px}.text-button,.wide-link{background:none;border:0;color:var(--brand);font-size:13px;padding:13px}.wide-link{display:block;width:100%;text-align:center}.muted{color:var(--muted);font-size:12px;line-height:1.7}.eyebrow{font-size:10px;color:#eee6da;letter-spacing:.4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
#chat-form{display:flex;gap:8px;padding:8px 13px;height:54px;flex-shrink:0;background:#262423;border-top:1px solid var(--line)}input{min-width:0;font-size:16px}#chat-form input{flex:1;border:1px solid #44392f;background:#2b2726;border-radius:20px;padding:7px 14px;height:36px;outline:none}#chat-form input::placeholder{font-size:12px;color:#b4a89c}#chat-form button{border:0;border-radius:50%;width:36px;height:36px;background:var(--brand);color:white;font-size:24px}.rich-menu{background:#262423;flex-shrink:0}.menu-tabs{display:grid;grid-template-columns:1fr 1fr;background:#2b2726}.menu-tabs button{height:34px;border:0;background:transparent;color:#b4a89c;font-weight:600;font-size:12px}.menu-tabs button.active{background:#262423;color:var(--brand);box-shadow:inset 0 -2px var(--brand)}#menu-content{padding:10px}.menu-hero{border:0;display:flex;flex-direction:column;align-items:flex-start;width:100%;background:linear-gradient(115deg,#193c47,#3f3f3f);border-radius:12px;padding:12px 15px;text-align:left;color:white;position:relative;overflow:hidden}.menu-hero:after{content:"C";position:absolute;right:6px;top:-20px;font-size:125px;color:#ffffff09;font-weight:900}.menu-hero small{font-size:9px;color:#b4a89c}.menu-hero strong{font-size:18px;margin:5px 0}.menu-hero>span{font-size:10px;color:#b4a89c}.menu-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;margin-top:8px}.menu-grid button{border:0;background:#2b2726;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px 0;min-height:65px;color:#eee6da}.menu-grid button>span{font-size:23px;line-height:1}.menu-grid button small{font-size:9px;white-space:nowrap}.menu-grid .highlight{background:var(--soft);color:var(--brand)}.menu-guide{height:156px;border-radius:12px;background:#2b2726;padding:19px}.menu-guide p{font-size:12px;color:#b4a89c}.menu-toggle{border:0;border-top:1px solid #44392f;background:#2b2726;flex-shrink:0;height:36px;font-size:12px;color:#b4a89c}.home-indicator{background:#2b2726;height:23px;flex-shrink:0;display:grid;place-items:center}.home-indicator i{width:130px;height:5px;background:#193c47;border-radius:5px}
.overlay{position:absolute;inset:55px 0 0;background:#193c4766;z-index:10;display:flex;align-items:flex-end}.sheet{height:91%;width:100%;background:#2b2726;display:flex;flex-direction:column;border-radius:21px 21px 0 0;overflow:hidden}.sheet.full{height:100%;border-radius:0}.sheet-head{height:67px;flex-shrink:0;background:#262423;display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--line);text-align:center}.sheet-head strong{font-size:16px}.sheet-head small{display:block;font-size:9px;color:#b4a89c;margin-top:4px}.sheet-head button{position:absolute;right:9px;top:12px;width:43px;height:43px;background:none;border:0;font-size:30px;color:#b4a89c}.sheet-body{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#e0e0e0 transparent}.filters{padding:14px;background:#262423;border-bottom:1px solid var(--line)}.filters>.eyebrow{margin:0 0 11px}.segments{display:flex;padding:4px;background:#2b2726;border-radius:10px;margin:8px 0}.segments button{flex:1;border:0;border-radius:7px;background:transparent;padding:10px 5px;font-size:12px;color:#b4a89c;font-weight:600;min-height:36px}.segments button.active{background:#262423;color:var(--brand);box-shadow:0 2px 5px #193c4708}.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:10px 0}.chips button{white-space:nowrap;border:1px solid #44392f;border-radius:20px;padding:7px 12px;background:#262423;color:#b4a89c;font-size:11px;min-height:34px}.chips button.active{background:#252525;color:white;border-color:#202020}.search-form{display:flex;gap:8px;margin-top:12px}.search-form input{width:0;flex:1;border:1px solid #44392f;border-radius:10px;padding:10px;background:#2b2726;outline:none}.search-form input::placeholder{font-size:12px;color:#b4a89c}.search-form button{background:var(--brand);color:white;border:0;border-radius:10px;padding:0 16px;font-size:12px}.results{padding:1px 14px 22px}.result-count{font-size:10px;color:#b4a89c;margin:14px 0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}.card-tile{background:none;border:0;padding:0;min-width:0;text-align:left;color:var(--ink)}.tile-name{display:block;font-size:12px;margin:7px 0 2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-tile>small{font-size:10px;color:#b4a89c}.card-art{aspect-ratio:0.715;border-radius:7px;border:1px solid #44392f;background:linear-gradient(145deg,#2b2726,#2b2726);display:flex;flex-direction:column;align-items:center;justify-content:space-between;overflow:hidden;padding:8px 5px;color:#eee6da;box-shadow:inset 0 0 0 3px #ffffff80}.card-art.cn{background:linear-gradient(145deg,#2b2726,#eed3bc);border-color:#44392f;color:#967551}.art-top{font-size:7px;letter-spacing:.5px}.art-name{font-size:12px;margin-top:3px}.art-mark{font-size:32px;line-height:1;color:#ffffffc9}.art-placeholder{font-size:8px;opacity:.7}.art-number{font-size:7px;border-top:1px solid #ffffff99;padding-top:4px;width:100%;text-align:center}.card-art.large{width:138px;margin:0 auto 15px;padding:12px 8px}.large .art-top,.large .art-number{font-size:9px}.large .art-name{font-size:18px}.large .art-mark{font-size:50px}.large .art-placeholder{font-size:10px}
.modal{position:absolute;inset:55px 0 0;display:grid;place-items:center;padding:26px;background:#193c4780;z-index:20}.dialog{position:relative;background:#262423;width:100%;max-height:100%;overflow:auto;border-radius:22px;padding:28px 22px 18px;text-align:center;box-shadow:0 20px 50px #193c4725}.close-modal{position:absolute;top:7px;right:7px;border:0;background:none;font-size:27px;width:40px;height:40px;color:#b4a89c}.dialog h2{font-size:21px;margin:8px 0}.dialog p{margin:6px 0 13px}.detail-tag{font-size:11px;color:#b4a89c;background:#2b2726;border-radius:7px;padding:8px}.record-form{display:flex;flex-direction:column;gap:7px;text-align:left;margin:20px 0}.record-form label{font-size:12px;color:#b4a89c}.record-form input{border:1px solid #44392f;border-radius:9px;padding:11px;margin-bottom:9px;width:100%}.record-form .primary{margin-top:9px}.toast{position:absolute;z-index:30;bottom:36px;left:20px;right:20px;background:#193c47ec;color:white;border-radius:12px;padding:13px;font-size:12px;text-align:center;box-shadow:0 5px 15px #0002;pointer-events:none}
.report{background:#262423;border-radius:15px;overflow:hidden;border:1px solid #44392f}.report-head{background:linear-gradient(125deg,#2b2726,#2b2726);padding:16px;display:flex;gap:15px;align-items:center}.report-head .card-art{width:77px;flex-shrink:0}.report-identity{min-width:0}.report-identity h2{font-size:22px;margin:8px 0}.report-identity p{font-size:12px;color:#eee6da;margin:6px 0}.report-identity small{font-size:9px;color:#b4a89c;display:block;overflow-wrap:anywhere}.report-price{padding:16px 19px;border-bottom:1px solid var(--line)}.report-price small{font-size:10px;color:#b4a89c}.report-price strong{display:block;font-size:28px;color:#eee6da;margin:6px 0}.report-price p{font-size:10px;color:#b4a89c;margin:0}.report-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:13px 0}.report-stats div{text-align:center;border-right:1px solid #44392f}.report-stats div:last-child{border:0}.report-stats small{display:block;font-size:9px;color:#b4a89c}.report-stats b{font-size:12px;display:block;margin-top:5px}.chart-empty{height:115px;margin:0 15px 15px;border:1px dashed #44392f;border-radius:9px;background:repeating-linear-gradient(0deg,#2b2726,#2b2726 24px,#2b2726 25px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.chart-empty span{font-size:9px;color:#b4a89c}.chart-empty strong{font-size:12px;font-weight:500;color:#b4a89c}.chart-empty small{font-size:9px;color:#b4a89c}.report-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;padding:0 14px 12px}.report-actions button{border:1px solid #44392f;background:#2b2726;color:#eee6da;border-radius:8px;font-size:11px;padding:10px}.report-note{font-size:9px;color:#b4a89c;text-align:center;margin:0 9px 13px}.source-row,.sale-row{padding:19px;background:#262423;border-bottom:1px solid var(--line)}.source-row p,.sale-row p{font-size:12px;color:#b4a89c}.source-row a{display:block;margin-top:14px;font-size:12px;color:var(--brand)}.source-row small,.sale-row small{display:block;font-size:10px;color:#b4a89c;margin:7px 0}.sale-row strong,.sale-row b{font-size:13px}
.bottom-nav{display:grid;grid-template-columns:repeat(3,1fr);height:67px;flex-shrink:0;background:#262423;border-top:1px solid var(--line);padding-bottom:12px}.bottom-nav button{background:none;border:0;font-size:12px;color:#b4a89c;border-top:2px solid transparent}.bottom-nav button.active{border-top-color:var(--brand);color:var(--brand);font-weight:700}.page-summary{padding:23px 19px;background:#262423}.page-summary h2{font-size:24px;margin:8px 0}.page-summary .primary{width:auto;padding:10px 18px}.padded{padding:14px}.page-heading{font-size:19px;padding:10px 18px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#262423;padding:24px 10px;margin:12px 0 0}.metrics>div{text-align:center;border-right:1px solid var(--line);min-width:0}.metrics>div:last-child{border:0}.metrics small{display:block;font-size:10px;color:#b4a89c}.metrics strong{font-size:19px;display:block;margin:10px 0 0;overflow-wrap:anywhere}.notice{font-size:10px;line-height:1.8;color:#b4a89c;padding:12px 16px;background:#2b2726;margin:0}.holding-row{display:flex;gap:17px;padding:17px;background:#262423;border-bottom:1px solid var(--line)}.holding-row .card-art{width:68px;flex-shrink:0}.holding-row>div:last-child{flex:1;min-width:0}.holding-row strong{display:block;font-size:14px}.holding-row small{display:block;font-size:10px;color:#b4a89c;margin:6px 0}.holding-row p{font-size:12px;color:#eee6da;margin:9px 0}.empty{padding:36px 24px;text-align:center}.empty-icon{font-size:37px;color:#b4a89c;display:block;margin:0 0 18px}.empty strong{font-size:15px;display:block;color:#b4a89c}.empty p{font-size:12px;color:#b4a89c;line-height:1.9;margin-top:10px}.guide-copy{white-space:pre-wrap;font-size:13px;color:#eee6da;line-height:1.8;padding:0 20px 20px}
@media(max-width:440px){body{padding:0;background:#2b2726;min-height:0}.phone{width:100%;height:100dvh;border-radius:0;outline:0;box-shadow:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.card-art.has-image{padding:0;border:0;background:transparent;box-shadow:none;overflow:hidden}.card-art.has-image img{width:100%;height:100%;object-fit:contain;display:block}.card-tile>small{display:block;line-height:1.5;min-height:30px}.report-price p{white-space:pre-line;line-height:1.7}

.tile-price{margin-top:7px;text-align:left}.tile-price>strong{font-size:13px;color:#eee6da;display:block}.tile-price>small{display:block;font-size:9px;line-height:1.5;color:#b4a89c;margin-top:3px;overflow-wrap:anywhere}

.price-chart{margin:12px;padding:14px;background:#262423;border:1px solid #44392f;border-radius:14px;min-width:0}.price-chart h3{font-size:15px;margin:0 0 10px}.price-chart svg{width:100%;display:block;margin-top:10px;overflow:visible}.price-chart circle{cursor:pointer}.price-chart circle:focus{outline:none;stroke:#e9a830;stroke-width:4}.chart-latest{display:block;font-size:23px;color:#eee6da;margin-top:14px}.chart-caption,.chart-selected{font-size:11px;line-height:1.7;color:#eee6da;margin:7px 0}.chart-selected{background:#2b2726;color:#eee6da;padding:9px;border-radius:7px}.chart-note{font-size:10px;line-height:1.7;color:#b4a89c}.chart-history{font-size:11px;color:#eee6da;border-top:1px solid #44392f;padding-top:12px}.chart-history summary{cursor:pointer;color:#eee6da}.trend-row{display:flex;gap:16px;width:100%;background:#262423;text-align:left;border:0;border-bottom:1px solid #44392f;padding:16px;color:#eee6da}.trend-row .card-art{width:70px;flex-shrink:0;align-self:center}.trend-row>div:last-child{min-width:0}.trend-row strong{font-size:13px}.trend-row small{display:block;font-size:10px;color:#b4a89c;margin-top:5px}.trend-row .trend-link{color:#eee6da}

.candle-selected{background:#2b2726;border-radius:9px;padding:12px;color:#eee6da;font-size:12px;font-variant-numeric:tabular-nums}.candle-selected p{margin:8px 0 0;font-size:11px}.price-chart svg [role=button]{cursor:pointer}.price-chart svg [role=button]:focus{outline:1px solid #393939}

.valuation-metrics{margin-top:0;border-bottom:1px solid #44392f}.valuation-metrics strong{font-size:15px}.gain,.gain strong{color:#db4e66!important}.loss,.loss strong{color:#249f80!important}.holding-value{white-space:pre-line;line-height:1.8}.holding-row b{display:block;font-size:12px;line-height:1.7}.holding-row .text-button{padding-left:0;font-size:11px}

.spark-quote{display:flex;align-items:center;gap:12px;padding:17px 12px;background:#2b2726;border:1px solid #44392f;border-radius:12px;color:#b4a89c;min-width:0}.spark-quote.up{color:#c96b7b}.spark-quote.down{color:#3b927d}.spark-quote svg{width:55%;min-width:0;flex:1;margin:0;overflow:visible}.spark-price{text-align:right;flex-shrink:0}.spark-price strong{display:block;color:#eee6da;font-size:21px;font-variant-numeric:tabular-nums;letter-spacing:-.5px}.spark-price small{display:block;color:#b4a89c;font-size:9px;margin:4px 0}.spark-badge{display:inline-block;padding:4px 10px;border-radius:5px;background:#2b2726;color:#eee6da;font-size:12px;font-weight:700;margin:5px 0 1px}.up .spark-badge{background:#2b2726;color:#b9586c}.down .spark-badge{background:#2b2726;color:#327d6b}.spark-dates{font-size:10px;color:#b4a89c;text-align:center}.trend-row>div:last-child{flex:1}.trend-row .spark-quote{padding:10px 8px;gap:6px;margin-top:9px}.trend-row .spark-price strong{font-size:17px}.trend-row .spark-price small{font-size:8px}.trend-row .spark-badge{font-size:10px}

.spark-quote.area-view{flex-direction:column-reverse;align-items:stretch;padding:18px 14px 10px}.area-view .spark-price{text-align:left;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 8px}.area-view .spark-price>small:first-child{grid-column:1/-1}.area-view .spark-price strong{font-size:27px}.area-view .spark-price>small:last-child{grid-column:1/-1}.spark-quote.area-view svg{width:100%;height:170px;flex:none;margin-top:14px}.area-view polygon{fill-opacity:.07}.area-view polyline{stroke-width:1.5}

.menu-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.menu-grid button small{font-size:11px}
/* Align card artwork, titles and prices independently of quote availability. */
.card-grid{align-items:start;row-gap:24px}
.card-tile{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;align-self:start;width:100%;appearance:none}
.card-tile>.card-art{width:100%;height:auto;aspect-ratio:0.715;flex:none;position:relative}
.card-tile>.card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.card-tile>.tile-name{width:100%;height:18px;line-height:18px;flex:none;margin:8px 0 2px}
.card-tile>small{height:30px;min-height:30px;line-height:15px;overflow:hidden;flex:none}
.card-tile>.tile-price{width:100%;min-height:110px;margin-top:7px;font-variant-numeric:tabular-nums}
.card-tile>.tile-price>strong{line-height:19px;min-height:38px;overflow-wrap:anywhere}
.card-tile>.tile-price>small{line-height:14px}

.search-form .clear-search{background:#2b2726;color:#b4a89c;font-size:20px;padding:0 10px}

.unified-report .report-head{padding:12px;gap:12px}.unified-report .report-head .card-art{width:66px;height:92px;position:relative}.unified-report .report-head img{position:absolute;inset:0}.unified-report .report-identity h2{font-size:18px;line-height:1.3;margin:5px 0}.unified-report .report-identity p{font-size:11px;margin:4px 0}.unified-report .report-grades,.unified-report .report-ranges{margin:0;padding:5px 12px;gap:6px}.unified-report .chips button{flex:1;min-height:28px;padding:4px 8px;font-size:10px}.unified-price{padding:7px 14px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 6px;border-bottom:1px solid #44392f}.unified-price>small{font-size:9px;color:#b4a89c}.unified-price>strong{font-size:21px;color:#eee6da;grid-column:2;grid-row:1/3}.unified-plot{padding:2px 12px 8px}.unified-plot .spark-quote{padding:7px 10px;border:0}.unified-plot .spark-quote svg{height:70px}.unified-plot .spark-price>strong,.unified-plot .spark-price>small:first-child{display:none}.unified-plot .chart-caption{font-size:9px;text-align:center;margin:3px 0 6px}.unified-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.unified-stats>div{display:flex;align-items:center;justify-content:center;gap:5px;border-right:1px solid #44392f}.unified-stats>div:last-child{border:0}.unified-stats small{font-size:10px;color:#b4a89c}.unified-stats strong{font-size:11px;color:#eee6da;font-variant-numeric:tabular-nums}.unified-report .report-note{font-size:8px;line-height:1.6;margin:0 10px 3px}.unified-report .report-actions{grid-template-columns:repeat(3,1fr);padding:7px 12px 12px;gap:5px}.unified-report .report-actions button{font-size:10px;padding:7px 3px;min-height:30px}
.unified-report .report-head{padding:10px 12px;gap:14px}
.market-analysis{margin:9px 10px 12px;padding:12px;border:1px solid #514755;border-radius:13px;background:linear-gradient(145deg,#211e25,#19181d);color:#eee6da}.market-analysis-title .eyebrow{font-size:8px;letter-spacing:1.4px;color:#c5a76f}.market-analysis-title h3{font-size:15px;margin:4px 0}.market-analysis-title p,.market-footnote{font-size:9px;line-height:1.55;color:#b4a89c;margin:4px 0 9px}.market-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.market-stat{min-width:0;padding:9px;border:1px solid #39343d;border-radius:9px;background:#211f24}.market-stat small,.market-stat span{display:block;color:#b4a89c;font-size:8px;line-height:1.4}.market-stat strong{display:block;color:#f3eee5;font-size:15px;margin:5px 0;font-variant-numeric:tabular-nums}.market-stat .positive{color:#8fc8a5}.market-stat .negative{color:#e89083}.monthly-analysis{margin-top:12px;padding:10px;border-radius:9px;background:#1c1a1f}.monthly-heading{display:flex;justify-content:space-between;align-items:center}.monthly-heading strong{font-size:10px}.monthly-heading small{font-size:8px;color:#b4a89c}.monthly-bars{height:114px;display:flex;gap:5px;align-items:flex-end;justify-content:space-around;padding-top:8px}.month-column{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px}.month-column>small{font-size:7px;color:#ded3c5;white-space:nowrap}.month-bar{width:min(22px,65%);min-height:4px;border-radius:4px 4px 1px 1px;background:linear-gradient(180deg,#d7ad67,#866b50)}.month-column>span{font-size:7px;color:#b4a89c}.month-column .month-volume{font-size:6px;opacity:.8}.population-notes{margin-top:8px;padding:9px;border-left:2px solid #9a805a;background:#242126}.population-notes strong{font-size:9px}.population-notes p{font-size:9px;line-height:1.55;color:#d1c6ba;margin:5px 0}.population-notes small{font-size:8px;line-height:1.5;color:#a99c90;display:block}.market-footnote{margin:8px 1px 0;font-size:8px}
.unified-report .report-head .card-art{width:108px;height:151px;flex-shrink:0}
.unified-report .report-head .card-art.has-image img{object-fit:contain}
.unified-report .report-identity{flex:1}
.unified-report .report-head .card-art{width:140px;height:196px}
.unified-report .report-head{gap:10px;padding:8px 10px}
.unified-report .report-identity h2{font-size:17px}
/* Keep the displayed card size while removing the image canvas whitespace. */
.unified-report .report-head .card-art.has-image:has(img[src*="cdn.snkrdunk.com"]){height:122px}
.unified-report .report-head .card-art.has-image img[src*="cdn.snkrdunk.com"]{top:50%;bottom:auto;height:196px;transform:translateY(-50%);object-fit:contain}

.sponsor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sponsor-slot{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-height:105px;padding:12px;border:1px solid #44392f;border-radius:12px;background:#2b2726;overflow:hidden}.sponsor-slot:nth-child(2),.sponsor-slot:nth-child(3){background:#2b2726}.sponsor-slot .sponsor-label{font-size:8px;letter-spacing:.5px;color:#b4a89c;margin-bottom:6px}.sponsor-slot strong{font-size:15px;color:#eee6da}.sponsor-slot>span{font-size:9px;color:#b4a89c;margin-top:4px}.sponsor-slot .sponsor-status{font-size:9px;color:#eee6da;margin-top:9px;border:1px solid #44392f;border-radius:20px;padding:3px 8px;background:#ffffff90}

.trial-offer{margin:22px 18px 14px;padding:28px 16px;border-radius:16px;background:#2b2726;border:1px solid #44392f;text-align:center;color:#eee6da;font-size:24px;font-weight:700}

.trial-offer>small{display:block;font-size:11px;font-weight:500;color:#b4a89c;letter-spacing:.5px}.trial-offer h2{font-size:18px;line-height:1.5;color:#eee6da;margin:15px 0 9px}.trial-offer>strong{font-size:28px}.trial-offer p{font-size:12px;line-height:1.9;color:#b4a89c;font-weight:400;white-space:pre-line;margin:14px 0 20px}.trial-offer .primary{margin:0}

.trial-offer>strong{display:block;font-size:24px;line-height:1.5}

.trial-offer>strong{margin-top:16px;text-wrap:balance}

.unified-report .report-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Enlarge the card within SNKRDUNK's padded product-image canvas. */
.card-tile>.card-art.has-image img[src*="cdn.snkrdunk.com"]{transform:scale(1.5);transform-origin:center}
.card-tile>.card-art{aspect-ratio:.78}
.card-grid{row-gap:16px}
.card-tile>.tile-name{margin-top:5px}
.card-tile>small{height:24px;min-height:24px;line-height:12px}
.card-tile>.tile-price{margin-top:3px;min-height:96px}
.card-tile>.tile-price>strong{min-height:19px}

.card-tile>.tile-price{min-height:74px}

/* Keep art and title together; give the market chart its own full-width row. */
.trend-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 12px;padding:14px 16px;align-items:center}
.trend-row>.card-art{grid-column:1;grid-row:1 / 3;width:64px;height:80px;align-self:center;overflow:hidden}
.trend-row>.card-art img[src*="cdn.snkrdunk.com"]{transform:scale(1.5);transform-origin:center}
.trend-row>.trend-label{display:contents}
.trend-row>.trend-label>strong{grid-column:2;align-self:end;line-height:1.5}
.trend-row>.trend-label>small:not(.trend-link){grid-column:2;align-self:start;margin-top:4px;line-height:1.5}
.trend-row>.trend-label>.spark-quote{grid-column:1 / -1;margin-top:10px}
.trend-row>.trend-label>.trend-link{grid-column:1 / -1;margin-top:8px}
.subscription-form{margin:14px;padding:20px;background:#262423;border:1px solid #44392f;border-radius:16px;color:#eee6da}.subscription-eyebrow{color:#b4a89c}.subscription-form h2{font-size:21px;line-height:1.5;margin:12px 0}.subscription-form h3{font-size:15px;margin:22px 0 12px}.subscription-form .notice{margin:12px 0;padding:0;line-height:1.8}.subscription-periods{display:flex;padding:4px;background:#2b2726;border-radius:10px;gap:4px}.subscription-periods button{flex:1;border:0;padding:12px;background:transparent;color:#b4a89c;border-radius:7px}.subscription-periods .active{background:#262423;color:#eee6da}.subscription-plan{border:1px solid #44392f;border-radius:12px;background:#2b2726;padding:16px;margin-top:14px}.subscription-plan h3{font-size:22px;margin:10px 0}.subscription-plan p{font-size:12px;color:#b4a89c}.subscription-field{display:block;font-size:13px;margin:14px 0}.subscription-field input{display:block;box-sizing:border-box;width:100%;padding:13px;margin-top:8px;border:1px solid #44392f;border-radius:8px;font:inherit;background:#2b2726;color:#eee6da}.subscription-form .primary{width:100%;margin:12px 0 0}.subscription-form .primary:disabled{opacity:.5;cursor:not-allowed}
/* CardSeek approved yellow / black / white identity. */
:root{--ink:#193c47;--brand:#193c47;--soft:#fff5bd;--muted:#777;--line:#e9e9e5;color:#eee6da;background:#2b2726}
.phone{background:#2b2726}.status,.chat-head,.home-indicator{background:#2b2726}.chat-head h1{font-weight:850;letter-spacing:-.5px}.chat-head small{color:#b4a89c}.chat-head button{color:#eee6da}.demo-banner{background:#fff4b5;color:#eee6da}.chat-body{background:#2b2726}.sender{color:#eee6da;font-weight:600}.sender:before{content:'';display:inline-block;width:19px;height:19px;border-radius:50%;background:#ffde26 url('/assets/cardseek-avatar.svg') center/contain no-repeat;vertical-align:middle;margin-right:6px}.date{color:#b4a89c}
.primary{background:#ffde26;color:#eee6da;font-weight:800;border:1px solid #f0ce17}.secondary{background:#2b2726;color:#eee6da}.welcome{padding:0 16px 14px;border:1px solid #44392f;border-radius:18px;overflow:hidden}.welcome-visual{position:relative;height:125px;background:#ffde26;margin:0 -16px 14px;overflow:hidden}.welcome-visual img{position:absolute;right:7px;bottom:-5px;width:185px;height:130px;object-fit:contain}.welcome-visual span{position:absolute;left:16px;top:22px;font-size:15px;letter-spacing:-.5px;font-weight:900;max-width:125px}.welcome-visual:before{content:'找到你的\a下一張收藏';white-space:pre;position:absolute;left:16px;top:45px;font-size:17px;font-weight:850;line-height:1.45}.welcome h2{font-size:17px;margin-bottom:6px}.welcome p{margin-bottom:10px;font-size:11px}.welcome .primary,.welcome .secondary{min-height:37px;padding:9px;margin:3px 0}
#chat-form button{background:#193c47;color:#ffde26}#chat-form input{background:#2b2726;border-color:#44392f}.menu-tabs{background:#2b2726}.menu-tabs button{color:#b4a89c}.menu-tabs button.active{background:#ffde26;color:#eee6da;box-shadow:none}.menu-hero{height:105px;background:#ffde26;color:#eee6da;padding:13px 14px;border-radius:12px}.menu-hero:after{display:none}.menu-hero small{color:#eee6da;font-size:9px;position:relative;z-index:1}.menu-hero strong{font-size:18px;max-width:165px;line-height:1.35;margin:6px 0}.menu-hero>span{color:#eee6da;font-size:10px;font-weight:700}.menu-mascot{position:absolute;right:-5px;bottom:-4px;width:142px;height:99px;object-fit:contain}.menu-grid{gap:6px}.menu-grid button{background:#2b2726;color:#eee6da;border:1px solid #44392f;border-radius:11px;min-height:68px}.menu-grid .highlight{background:#193c47;color:#ffde26;border-color:#193c47}.menu-grid button small{font-size:11px;font-weight:700}.menu-toggle{background:#2b2726;color:#eee6da}.menu-toggle,.home-indicator{height:27px}.home-indicator{height:18px}
.sheet{background:#2b2726}.sheet-head{border-bottom:3px solid #ffde26}.sheet-head strong{font-weight:800}.segments{background:#2b2726}.segments button{color:#b4a89c}.segments button.active{background:#ffde26;color:#eee6da;box-shadow:none}.chips button{color:#eee6da;border-color:#44392f}.chips button.active{background:#193c47;color:#ffde26;border-color:#193c47}.search-form button{background:#193c47;color:#ffde26}.search-form .clear-search{background:#2b2726;color:#eee6da}.search-form input{background:#2b2726;border-color:#44392f}.tile-price>strong{color:#eee6da;font-weight:800}.card-art:not(.has-image){background:#2b2726;border-color:#44392f;color:#b4a89c}.bottom-nav button.active{background:#2b2726;border-top-color:#e5c300;color:#eee6da}.notice{background:#2b2726;color:#b4a89c}.report-head{background:#2b2726}.report-actions button{background:#2b2726;border-color:#44392f;color:#eee6da}.report-actions button:nth-child(2){background:#ffde26;border-color:#ffde26;font-weight:700}.spark-quote{background:#2b2726;border-color:#44392f}.spark-price strong,.unified-price>strong,.report-price strong,.unified-stats strong{color:#eee6da}.trend-row .trend-link{color:#eee6da}.trend-row{border-bottom-color:#e9e9e1}.price-chart{border-color:#44392f}.trial-offer{background:#2b2726!important;border-color:#44392f!important}.trial-offer>strong,.trial-offer h2{color:#eee6da}.subscription-periods{background:#2b2726}.subscription-periods .active{background:#ffde26;color:#eee6da}.subscription-plan{background:#2b2726;border-color:#e7d579}.subscription-form{color:#eee6da;border-color:#44392f}.subscription-field input{background:#2b2726;border-color:#44392f}
.sponsor-slot{background:#2b2726;border-color:#44392f}.sponsor-slot:nth-child(2),.sponsor-slot:nth-child(3){background:#2b2726}.sponsor-slot strong{color:#eee6da}.sponsor-slot .sponsor-label,.sponsor-slot>span{color:#b4a89c}.sponsor-slot .sponsor-status{background:#2b2726;color:#eee6da;border-color:#44392f}.toast{background:#193c47ed}.overlay,.modal{background:#19191266}button:focus-visible,a:focus-visible{outline:3px solid #a88800;outline-offset:-3px}
/* Preserve the approved mascot proportions; display square cutout without stretching. */
.welcome-visual img{width:185px;height:185px;right:2px;bottom:-24px;object-fit:contain}
.menu-mascot{width:150px;height:150px;right:0;bottom:-21px;object-fit:contain}
/* Mascots reduced by one third and anchored visually at the lower right. */
.welcome-visual img{width:123px;height:123px;right:2px;bottom:-15px;object-fit:contain}
.menu-mascot{width:100px;height:100px;right:2px;bottom:-12px;object-fit:contain}
/* Use the approved complete illustration with intentional white space. */
.welcome-visual{background:#2b2726;height:125px}
.welcome-visual:before{content:none}
.welcome-visual img{width:150px;height:150px;right:0;bottom:-8px;object-fit:contain}
.menu-hero{background:#2b2726;border:1px solid #44392f;height:105px}
.menu-mascot{width:124px;height:124px;right:0;bottom:-7px;object-fit:contain}
.welcome-copy{position:absolute;left:16px;top:23px;z-index:1;max-width:190px;color:#eee6da}
.welcome-copy strong{display:block;font-size:18px;font-weight:850;letter-spacing:-.5px}
.welcome-visual .welcome-copy span{position:static;display:block;white-space:pre-line;font-size:16px;font-weight:650;letter-spacing:0;line-height:1.5;margin-top:8px;max-width:none}
.menu-hero strong{max-width:210px;font-size:17px;position:relative;z-index:1}
.menu-hero>span{position:relative;z-index:1}
/* Readable price/date context in both compact and detailed charts. */
.unified-plot .spark-quote svg{height:auto;min-width:0}
.unified-plot .spark-price>strong{display:block;font-size:16px}
.unified-plot .spark-price>small:first-child{display:block;font-size:8px}
.spark-price .spark-time{font-size:8px;max-width:90px;line-height:1.5;white-space:normal;color:#b4a89c}
.spark-quote svg text{font-variant-numeric:tabular-nums}

.unified-report .report-download{display:block;width:calc(100% - 24px);margin:0 12px 12px;padding:10px;border:1px solid #44392f;border-radius:8px;background:#193c47;color:#ffde26;font-size:12px;font-weight:700}.report-download:disabled{opacity:.6;cursor:wait}
/* Keep report artwork boxes equal across Japanese, Traditional Chinese and English. */
.unified-report .report-head .card-art{height:122px}
.unified-report .report-head .card-art.has-image img:not([src*="cdn.snkrdunk.com"]){width:100%;height:100%;object-fit:contain;transform:none;top:0;bottom:0}

.language-build-note{display:block;font-size:10px;line-height:1.4;color:#b4a89c;margin:0 2px 8px;text-align:right;font-weight:400}

.segments button:disabled{opacity:.45;cursor:not-allowed;pointer-events:none}
/* Inventory: fixed portrait frame, with source canvas padding cropped. */
.holding-row{gap:12px;padding:14px 12px;align-items:flex-start}
.holding-row>.card-art{width:116px;height:162px;aspect-ratio:auto;flex:0 0 116px;align-self:flex-start;position:relative}
.holding-row>.card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.holding-row>.card-art.has-image img[src*="cdn.snkrdunk.com"]{transform:scale(1.5);transform-origin:center}
.holding-row>div:last-child{overflow-wrap:anywhere}
@media(max-width:360px){.holding-row{gap:10px;padding:12px 10px}.holding-row>.card-art{width:100px;height:140px;flex-basis:100px}}
.holding-row{gap:16px}
.holding-row>.card-art{width:140px;height:196px;flex-basis:140px}
@media(max-width:360px){.holding-row{gap:12px}.holding-row>.card-art{width:120px;height:168px;flex-basis:120px}}
.series-directory{display:flex;flex-direction:column;margin:8px 0 18px;border:1px solid #44392f;border-radius:12px;overflow:hidden;background:#262423}
.series-entry{position:relative;display:block;width:100%;padding:17px 36px 17px 16px;border:0;border-bottom:1px solid #44392f;background:#262423;text-align:left;color:#eee6da;min-height:72px}
.series-entry:last-child{border-bottom:0}.series-entry strong{display:block;font-size:16px}.series-entry small{display:block;margin-top:6px;font-size:11px;color:#b4a89c}.series-entry>span{position:absolute;right:16px;top:23px;font-size:24px}.series-entry:disabled{opacity:.45;cursor:default}.series-entry:not(:disabled):hover{background:#2b2726}.series-heading{font-size:19px;margin:8px 0 12px}
.report-social{display:flex;justify-content:center;align-items:center;gap:5px;height:25px;padding:4px 0;box-sizing:border-box;white-space:nowrap}
.social-badge{display:flex;align-items:center;justify-content:center;gap:4px;height:17px;padding:0 7px;border:1px solid #44392f;border-radius:5px;background:#2b2726;color:#eee6da;font-size:9px;line-height:15px;white-space:nowrap}
.social-icon{font-size:8px;font-weight:800;color:#eee6da;background:none;line-height:15px}
.social-badge>span{font-weight:400;letter-spacing:.1px}
.unified-report .report-credits{height:49.6px;box-sizing:border-box;margin:0 10px;overflow:hidden;text-align:center}
.unified-report .credits-note{display:block;font-size:8px;line-height:12.3px;color:#b4a89c;white-space:nowrap}
/* Keep both disclosure lines and the report's original overall height. */
.unified-report .report-head{padding-top:2px;padding-bottom:2px}
.unified-report .report-grades,.unified-report .report-ranges{padding-top:4px;padding-bottom:4px}
.unified-report .unified-plot{padding-bottom:6px}

/* Match a compact LINE chat bubble while retaining the original report proportions. */
.chat-message>.unified-report,.chat-message>.welcome{width:357px;max-width:calc((100vw - 48px) / .7283);zoom:.7283}
/* Both menu tabs occupy the same space, keeping the chat viewport steady. */
#menu-content{height:201px;box-sizing:border-box}
.sponsor-grid{height:100%;grid-template-rows:repeat(2,minmax(0,1fr))}
.sponsor-slot{min-height:0;padding:8px}
.sponsor-slot .sponsor-label{margin-bottom:3px}
.sponsor-slot .sponsor-status{margin-top:4px;padding:2px 8px}
.sponsor-slot{padding:6px 10px}
.sponsor-slot .sponsor-label{font-size:8px;line-height:10px;margin-bottom:3px;flex-shrink:0}
.sponsor-slot strong{font-size:14px;line-height:17px;flex-shrink:0}
.sponsor-slot>span{font-size:9px;line-height:11px;margin-top:3px;flex-shrink:0}
.sponsor-slot .sponsor-status{font-size:9px;line-height:11px;padding:1px 7px;margin-top:4px;flex-shrink:0}

.holding-card-link{padding:0;cursor:pointer;text-align:inherit;font:inherit}.holding-card-link:focus-visible{outline:3px solid #a88800;outline-offset:2px}

/* Real LINE web view uses the existing UI without the simulated phone chrome. */
body.line-app{padding:0;min-height:100dvh;background:#2b2726}
.line-app .phone{width:100%;height:100dvh;border-radius:0;outline:0;box-shadow:none}
.line-app .status,.line-app .home-indicator{display:none}
.line-app .overlay,.line-app .modal{inset:0}
.line-app .sheet{height:100%;border-radius:0}
.line-app .chat-head>span{display:none}
.line-app .sheet-body{padding-bottom:env(safe-area-inset-bottom)}

/* Restore the original report dimensions in preview and LINE. */
.chat-message>.unified-report{width:357px;max-width:100%;zoom:1}

.line-loading{position:fixed;inset:0;z-index:200;background:#2b2726;text-align:center;padding:32px 20px;color:#eee6da}.line-loading h2{margin:0 0 24px;padding-bottom:20px;border-bottom:3px solid #44392f}.line-loading p{color:#b4a89c}.line-app:not(.app-ready) .phone{visibility:hidden}.line-app.app-ready .line-loading{display:none}

/* Version 3 uses the V2 LINE rich-menu / LIFF / report architecture. */
:root{--ink:#193c47;--brand:#193c47;--soft:#edf2eb;--muted:#77877e;--line:#e1e7df;background:#2b2726;color:#eee6da}
body{background:#2b2726}.phone{outline-color:#193c47;background:#2b2726}.chat-body{background:#2b2726}.chat-head,.status{background:#2b2726}.demo-banner{background:#2b2726;color:#b4a89c}.home-indicator{height:19px;background:#2b2726}.menu-toggle{height:34px;background:#2b2726;color:#b4a89c}.rich-menu{background:#2b2726}.menu-tabs{background:#2b2726;border-bottom:1px solid #44392f}.menu-tabs button{color:#b4a89c}.menu-tabs button.active{background:#193c47;color:#b4a89c;box-shadow:none}.menu-tabs button{height:34px}#menu-content{height:201px;padding:10px}.v3-menu-grid{height:145px;display:grid;grid-template-columns:1.12fr 1fr;grid-template-rows:1fr 1fr;gap:8px}.v3-collection{grid-row:span 2;background:#193c47;color:white;border:0;border-radius:12px;text-align:left;padding:13px;position:relative;overflow:hidden}.v3-collection small{font-size:8px;letter-spacing:1px;color:#b4a89c;display:block}.v3-collection strong{display:block;font-size:19px;margin:8px 0}.v3-collection>span{font-size:10px;color:#b4a89c}.v3-collection img{position:absolute;right:9px;bottom:6px;width:56px;height:56px;object-fit:contain;border-radius:50%}.v3-shortcut{border:1px solid #44392f;background:#2b2726;border-radius:12px;text-align:left;padding:12px;display:flex;align-items:center;gap:10px}.v3-shortcut span{font-size:22px;color:#b4a89c}.v3-shortcut strong{font-size:13px;color:#eee6da}.v3-menu-links{height:36px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.v3-menu-links button{border:0;background:transparent;color:#b4a89c;font-size:11px}.v3-partners{height:181px;display:grid;grid-template-rows:repeat(3,1fr);gap:6px}.v3-partner{display:grid;grid-template-columns:27px 1fr 15px;grid-template-rows:1fr 1fr;align-items:center;column-gap:8px;text-align:left;border:1px solid #44392f;background:#2b2726;border-radius:9px;padding:7px 12px}.v3-partner>span{grid-row:span 2;font-size:20px;font-family:Georgia;color:#b4a89c}.v3-partner strong{font-size:12px}.v3-partner small{grid-column:2;font-size:9px;color:#b4a89c}.v3-partner b{grid-column:3;grid-row:1/span 2;color:#b4a89c;font-weight:400}.sheet-head{border-bottom-color:#c9e7dc;background:#2b2726}.segments button.active,.bottom-nav button.active{background:#2b2726;color:#eee6da}.primary{background:#193c47;color:#b4a89c}.report-head{background:#2b2726!important}.unified-report{border-color:#44392f!important}.unified-report .report-head{background:#2b2726!important}.unified-report .report-grades button.active{background:#193c47;color:#b4a89c}.unified-report .report-actions button{background:#2b2726;color:#eee6da;border-color:#44392f}.unified-report .report-actions button:nth-child(2){background:#2b2726}.unified-report .download-report{background:#193c47;color:#b4a89c}.welcome{border-color:#44392f}.welcome-visual{background:#2b2726}.unified-report .report-name{color:#eee6da}

/* Wishlist orbital card browsing, inside the existing LINE LIFF sheet. */
.wish-heading{display:flex;justify-content:space-between;align-items:center;padding:22px 20px 12px}.wish-heading h2{font-size:23px;margin:5px 0;color:#eee6da}.wish-heading .eyebrow{font-size:9px;letter-spacing:1.6px;color:#b4a89c}.wish-tabs{margin:0 20px 4px}.wish-orbit{position:relative;height:307px;overflow:hidden;touch-action:pan-y;perspective:850px;isolation:isolate;background:radial-gradient(ellipse at 50% 68%,#2b2726,transparent 70%);outline-offset:-3px;user-select:none}.wish-ring{position:absolute;inset:0;perspective:850px}.wish-ground{position:absolute;width:185px;height:28px;border-radius:50%;background:#193c4720;filter:blur(14px);left:50%;bottom:25px;transform:translateX(-50%)}.wish-card{position:absolute;top:53%;left:50%;width:153px;height:214px;padding:0;border:0;background:transparent;transform-origin:center;cursor:pointer;will-change:transform;box-shadow:none}.wish-card .card-art{width:100%;height:100%;max-width:none;min-height:0;aspect-ratio:auto;border:0;border-radius:9px;background:transparent;overflow:visible;filter:drop-shadow(0 12px 9px #142f3b26)}.wish-card .card-art img{width:100%;height:100%;object-fit:contain;border-radius:8px;pointer-events:none}.wish-card:focus-visible{outline:2px solid #527e6e;outline-offset:5px;border-radius:9px}.wish-controls{display:flex;justify-content:center;align-items:center;gap:25px;margin:0 0 7px}.wish-arrow{width:35px;height:35px;border:1px solid #44392f;border-radius:50%;background:#2b2726;color:#eee6da;font-size:25px;line-height:1}.wish-arrow:disabled{opacity:.3}.wish-count{font-size:11px;letter-spacing:2px;color:#b4a89c;font-variant-numeric:tabular-nums;min-width:65px;text-align:center}.wish-hint{font-size:10px;color:#b4a89c;text-align:center;margin:9px 0 18px}.wish-focus{text-align:center;padding:0 24px 24px}.wish-focus h3{font-size:22px;color:#eee6da;margin:0 0 5px}.wish-focus p{margin:5px 0 13px}.wish-focus .tile-price{display:flex;flex-direction:column;align-items:center;gap:3px;margin:0 0 13px}.wish-focus .tile-price strong{font-size:21px}.wish-focus .tile-price small{font-size:10px;color:#b4a89c}.wish-focus .primary{margin-top:10px}.wish-focus .tile-price small:last-child{display:none}@media(prefers-reduced-motion:reduce){.wish-card{will-change:auto}}

/* Larger card faces and a soft foil sheen, clipped to the card face. */
.wish-orbit{height:330px}.wish-card{width:184px;height:257px}.wish-card .card-art{overflow:hidden;border-radius:10px}.wish-card .card-art img{object-fit:cover;transform:scale(1.12);border-radius:10px}.wish-shine{pointer-events:none;position:absolute;inset:3% 4%;border-radius:10px;opacity:var(--shine-opacity,.25);background:linear-gradient(115deg,transparent 18%,rgba(174,229,255,.3) 30%,rgba(255,255,255,.92) 42%,rgba(252,229,182,.4) 49%,transparent 63%);background-size:230% 180%;background-position:var(--shine-x,35%) 50%;mix-blend-mode:screen;box-shadow:inset 0 0 0 1px #ffffff45}.wish-card[aria-current="true"] .card-art{filter:drop-shadow(0 14px 11px #142f3b30)}

/* Reflections respond to pointer position as well as orbit angle. */
.wish-shine{background:radial-gradient(ellipse at var(--glare-x,50%) var(--glare-y,35%),rgba(255,255,255,var(--glare-power,.18)),transparent 58%),linear-gradient(115deg,transparent 18%,rgba(158,215,237,.3) 30%,rgba(255,255,255,.95) 42%,rgba(252,229,182,.35) 49%,transparent 63%);background-size:100% 100%,230% 180%;background-position:center,var(--shine-x,35%) 50%;opacity:var(--shine-opacity,.3)}

/* V3 / Private Collection: original folded-card identity. LINE geometry retained. */
:root{--ink:#eee6da;--brand:#d2a16d;--soft:#2a2522;--muted:#b4a89c;--line:#40362f;color:#eee6da;background:#151415}
body,body.line-app{background:#151415;color:var(--ink)}button,input{color:inherit}.phone{outline-color:#39312b;background:#1d1c1d;box-shadow:0 28px 80px #0009}.status,.chat-head,.home-indicator{background:#1f1d1d;color:#eee6da}.status i{background:#0a0a0a}.home-indicator i{background:#b4a89c}.chat-head{border-bottom:1px solid #40362f}.brand-symbol{width:24px;height:27px;object-fit:contain;vertical-align:middle;margin-right:7px}.chat-head h1{letter-spacing:.2px;font-weight:650}.chat-head h1 span{font-family:Georgia,serif;font-weight:400}.chat-head button{color:#d2a16d}.chat-body{background:radial-gradient(ellipse at 90% 10%,#3c2d3455,transparent 70%),#1c1a1c}.demo-banner{background:#312b26;color:#c5ac90}.sender:before{background-color:#262320}.date{color:#a39586}
#chat-form,.rich-menu,.menu-toggle,.sheet-head,.bottom-nav{background:#211f1f}.menu-toggle{color:#c5ac90;border-color:#40362f}#chat-form input,.search-form input,.record-form input{background:#2b2727;color:#eee6da;border-color:#4a3d32}#chat-form button{background:#d2a16d;color:#201b17}.sheet,.sheet-body,.dialog{background:#1f1d1e;color:#eee6da}.overlay,.modal{background:#0a090dc9}.sheet-head{border-bottom:1px solid #785a3e}.sheet-head strong{letter-spacing:2px}.sheet-head small{color:#b3a394}.sheet-head button{color:#d2a16d}.dialog{border:1px solid #5f4937}.filters{background:#252121}.primary{background:#d2a16d;color:#211a14;border-color:#d2a16d;border-radius:8px}.secondary,.outline{background:#312b27;border:1px solid #544334;color:#e6d3bd;border-radius:8px}.segments{background:#2e2828;border:1px solid #44372f}.segments button{color:#bbaa99}.segments button.active{background:#d2a16d;color:#231a13;box-shadow:none}.chips button{background:#262321;color:#cdbdab;border-color:#514234}.chips button.active{background:#4b3828;color:#f3d6af;border-color:#b28559}.bottom-nav button{color:#b4a89c}.bottom-nav button.active{background:#3c2e24;color:#edc89d;border-top-color:#d2a16d}.text-button,.wide-link{color:#dfb88d}
.menu-tabs{background:#1d1a1c;border-bottom:1px solid #51402f}.menu-tabs button{color:#b4a89c}.menu-tabs button.active{background:#352923;color:#ebc397;box-shadow:inset 0 -2px #d2a16d}.v3-collection{background:radial-gradient(ellipse at 100% 100%,#61466466,transparent 75%),#2d2527;border:1px solid #816040;border-radius:8px;color:#f5e8d6}.v3-collection small,.v3-collection>span{color:#c7a983}.v3-collection strong{font-weight:500;letter-spacing:2px;font-family:"Microsoft JhengHei",sans-serif}.v3-collection img{width:48px;height:53px;right:12px;bottom:10px;border-radius:0;opacity:.8}.v3-shortcut{background:#292526;border-color:#544132;border-radius:8px}.v3-shortcut span{color:#d2a16d}.v3-shortcut strong{color:#e6d7c5;font-weight:500}.v3-menu-links button{color:#c4a78c}.v3-partner{background:#292525;border-color:#544132;border-radius:6px}.v3-partner>span,.v3-partner b{color:#d2a16d}.v3-partner small{color:#b4a89c}
.welcome{background:#262121;border-color:#5f4937}.welcome-visual{background:#262121}.welcome-visual img{width:100%;height:100%;inset:0;object-fit:cover}.welcome-copy{position:relative;z-index:1}.welcome-copy strong{font-family:Georgia,"Microsoft JhengHei",serif;color:#e6c096}.welcome-visual .welcome-copy span{font-size:17px;color:#f2e3d1;font-weight:500;letter-spacing:1px}.welcome h2{color:#e9dbc9;font-weight:500}
.wish-heading h2,.wish-focus h3{color:#f0e2d1;font-weight:500;letter-spacing:1px}.wish-heading .eyebrow{color:#c49b71;letter-spacing:2.4px}.wish-orbit{background:radial-gradient(ellipse at 50% 65%,#7453894d,transparent 65%)}.wish-ground{background:#bd855a33;filter:blur(18px)}.wish-arrow{border-color:#6c5039;background:#302725;color:#e1b588}.wish-count{color:#c8a582}.wish-hint{color:#b7a99b}.wish-focus .tile-price strong{color:#e4bd91}.wish-focus .tile-price small{color:#b4a89c}.wish-card .card-art{filter:drop-shadow(0 12px 12px #0008)}.wish-card[aria-current="true"] .card-art{filter:drop-shadow(0 14px 18px #a16ab04a)}
.report,.unified-report{background:#262121;border-color:#69513b!important}.unified-report .report-head{background:linear-gradient(125deg,#3c2e25,#2c2631)!important;flex-direction:row-reverse;border-bottom:1px solid #614b35}.report-identity h2,.unified-report .report-name{color:#eddbc4}.unified-price>strong,.spark-price strong,.unified-stats strong{color:#ecd0ab}.unified-report .report-grades button.active{background:#4b3828;color:#f3d6af}.unified-report .report-actions button{background:#352d28;color:#e9d4ba;border-color:#69513b}.unified-report .report-actions button:nth-child(2){background:#4b3828}.unified-report .report-download,.unified-report .download-report{background:#d2a16d;color:#241b13;border-color:#d2a16d}.spark-quote{background:#2e2829;border-color:#44362f}.spark-quote svg text{fill:#bcad9e}.spark-quote svg line{stroke:#53433a}.up .spark-badge{background:#492c39;color:#f5a0b2}.down .spark-badge{background:#26453c;color:#8fd1b5}.social-badge{background:#302926;border-color:#574534;color:#ccbaa7}.social-icon{color:#d2a16d}.holding-row,.metrics,.page-summary,.source-row,.sale-row,.trend-row,.price-chart{background:#262121}.notice{background:#312b25;color:#bdae9c}.series-directory,.series-entry{background:#2b2525;color:#e9dbc9;border-color:#514034}.series-entry:not(:disabled):hover{background:#403127}.line-loading{background:#1f1d1e;color:#eee6da}.line-loading h2{border-color:#d2a16d}button:focus-visible,a:focus-visible{outline-color:#d2a16d}

/* Static LINE menu and corresponding animated LIFF partner page share one layout. */
.partner-layout{height:181px;display:flex;flex-direction:column;gap:8px}.partner-feature{position:relative;overflow:hidden;width:100%;flex:1;text-align:left;border:1px solid #705237;border-radius:8px;padding:12px;background:radial-gradient(ellipse at 100% 80%,#71507940,transparent 75%),#2e2627;color:#ead8c1}.partner-kicker{display:block;font-size:7px;letter-spacing:1px;color:#c89d6e}.partner-feature strong{display:block;position:relative;z-index:1;font-size:14px;font-weight:500;margin:8px 0;max-width:85%}.partner-feature>span{font-size:9px;color:#b8a491}.partner-feature img{position:absolute;width:48px;height:54px;right:8px;top:18px;opacity:.22}.partner-fixed{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:70px;flex-shrink:0}.partner-fixed-card{text-align:left;border:1px solid #504032;background:#2b2526;border-radius:8px;padding:9px 12px;color:#e6d4be}.partner-fixed-card small{display:block;color:#bc936a;font-size:7px;letter-spacing:1px}.partner-fixed-card strong{display:block;font-size:12px;font-weight:500;margin:4px 0}.partner-fixed-card>span{display:block;color:#b5a596;font-size:9px}.partner-expanded{height:auto;padding:24px 18px;gap:14px}.partner-expanded .partner-feature{flex:none;min-height:230px;padding:25px 20px}.partner-expanded .partner-kicker{font-size:9px}.partner-expanded .partner-feature strong{font-size:25px;line-height:1.6;max-width:240px;margin:25px 0 18px;letter-spacing:1px}.partner-expanded .partner-feature>span{font-size:12px}.partner-expanded .partner-feature img{width:100px;height:120px;right:12px;top:90px;opacity:.12}.partner-expanded .partner-fixed{height:140px}.partner-expanded .partner-fixed-card{padding:18px 12px}.partner-expanded .partner-fixed-card strong{font-size:17px;margin:16px 0 12px}.partner-expanded .partner-fixed-card>span{font-size:11px}.partner-controls{display:flex;justify-content:space-between;align-items:center}.partner-dots{display:flex;gap:6px}.partner-dot{width:30px;height:20px;border:0;border-radius:0;background:linear-gradient(#594636,#594636) center/100% 3px no-repeat}.partner-dot.active{background-image:linear-gradient(#d2a16d,#d2a16d)}.partner-pause{background:none;border:1px solid #594636;border-radius:5px;font-size:11px;padding:5px 12px;color:#d7b38b}

.search-form button{background:#d2a16d;color:#211a14}.search-form .clear-search{background:#372e28;color:#dec2a2}.holding-card-link{background:transparent}.partner-expanded .partner-fixed-card small{font-size:9px}
/* Inventory transaction calendar. */
.trade-calendar{padding:14px 14px 24px}.calendar-head{display:flex;align-items:center;justify-content:space-between}.calendar-head h2{font-size:21px;font-weight:500;margin:10px}.calendar-arrow{width:40px;height:40px;border:1px solid #66503c;border-radius:50%;background:#312926;color:#e6bd90;font-size:25px}.trade-calendar>.wide-link{padding:5px}.calendar-legend{font-size:12px;color:#cfb797;text-align:center;margin:14px 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekday{text-align:center;font-size:11px;color:#b4a89c;padding:8px 0}.calendar-day{min-height:64px;padding:7px 2px;border:1px solid #44382f;border-radius:9px;background:#2b2526;color:#e9ddd0;display:flex;flex-direction:column;align-items:center;gap:5px}.calendar-day strong{font-size:12px;font-weight:500}.calendar-day small{font-size:9px;white-space:nowrap}.calendar-day .buy{color:#dfb681}.calendar-day .sell{color:#b8acd9}.calendar-day.today strong{text-decoration:underline;text-underline-offset:4px}.calendar-day.selected{background:#493628;border-color:#d2a16d;box-shadow:inset 0 0 0 1px #d2a16d}.calendar-date-title{font-size:15px;margin:24px 0 12px;font-weight:500}.calendar-empty{font-size:13px;color:#b4a89c;padding:20px 0}.calendar-entry{position:relative;border:1px solid #4d3e33;border-radius:10px;padding:14px;margin:9px 0;background:#2c2627}.calendar-entry>strong{display:block;padding-right:38px;font-size:14px}.calendar-entry>small{display:block;font-size:11px;color:#b8a797;margin-top:7px}.calendar-entry p{font-size:13px;margin:10px 0}.trade-type{position:absolute;right:10px;top:10px;border-radius:5px;padding:4px 6px;font-size:10px;background:#493628;color:#e6bd90}.trade-type.sell{background:#3f3451;color:#cec0eb}.trade-calendar>.notice{margin-top:18px;border-radius:8px}
/* Orbital wishlist fits the available LINE viewport; list mode remains scrollable. */
.sheet-body:has(.wish-orbit){display:flex;flex-direction:column;overflow:hidden;min-height:0}.sheet-body:has(.wish-orbit) .wish-heading{padding:12px 18px 5px;flex-shrink:0}.sheet-body:has(.wish-orbit) .wish-heading h2{font-size:20px;margin:3px 0}.sheet-body:has(.wish-orbit) .wish-tabs{margin:4px 18px;flex-shrink:0}.sheet-body:has(.wish-orbit) .wish-tabs button{padding:6px;min-height:31px}.sheet-body:has(.wish-orbit) .wish-orbit{flex:1 1 260px;min-height:80px;height:auto;container-type:size}.sheet-body:has(.wish-orbit) .wish-card{height:min(257px,90cqh);width:auto;aspect-ratio:184/257;top:50%}.sheet-body:has(.wish-orbit) .wish-controls{flex-shrink:0;margin:4px 0}.sheet-body:has(.wish-orbit) .wish-hint{flex-shrink:0;margin:5px 0 8px;font-size:10px}.sheet-body:has(.wish-orbit) .wish-focus{flex-shrink:0;padding:0 20px 10px}.sheet-body:has(.wish-orbit) .wish-focus h3{font-size:20px;margin:0 0 3px}.sheet-body:has(.wish-orbit) .wish-focus p{margin:3px 0 6px;font-size:11px}.sheet-body:has(.wish-orbit) .wish-focus .tile-price{gap:1px;margin:4px 0}.sheet-body:has(.wish-orbit) .wish-focus .tile-price strong{font-size:21px}.sheet-body:has(.wish-orbit) .wish-focus .primary{margin:5px 0 0;min-height:40px;padding:9px}.sheet:has(.wish-orbit) .bottom-nav{height:54px;padding-bottom:5px}
@media(max-height:700px){.sheet-body:has(.wish-orbit) .wish-heading{padding-top:6px}.sheet-body:has(.wish-orbit) .wish-heading .eyebrow{display:none}.sheet-body:has(.wish-orbit) .wish-hint{display:none}.sheet-body:has(.wish-orbit) .wish-focus h3{font-size:17px}.sheet-body:has(.wish-orbit) .wish-focus .tile-price strong{font-size:18px}.sheet-body:has(.wish-orbit) .wish-controls{gap:18px}.sheet-body:has(.wish-orbit) .wish-arrow{width:28px;height:28px}}

@media(min-width:441px){.phone{height:min(852px,calc(100dvh - 48px))}body{min-height:100dvh;padding:24px}}
/* Partner preview sits directly in the front menu, within the V2 menu footprint. */
.partner-compact{height:181px;gap:5px}.partner-compact .partner-feature{min-height:0;flex:1;padding:9px 12px}.partner-compact .partner-feature strong{margin:5px 0;font-size:14px}.partner-compact .partner-feature img{top:8px;width:44px;height:48px}.partner-compact .partner-controls{height:19px;flex-shrink:0;padding:0 2px}.partner-compact .partner-dot{height:19px;width:24px}.partner-compact .partner-pause{font-size:9px;border:0;padding:2px 7px}.partner-compact .partner-fixed{height:66px}.partner-compact .partner-fixed-card{padding:8px 12px}
/* Match the user's LINE chat backdrop; branded content keeps its own theme. */
.chat-body{background:#fff;color:#282422}.chat-body>.date{color:#817b75}.chat-body .sender{color:#655447}
/* Native LINE chrome is neutral; rich-menu artwork and message artwork are branded. */
.status,.chat-head,.home-indicator,#chat-form,.menu-toggle{background:#fff;color:#292929}.phone{background:#fff}.status i{background:#1a1a1a}.chat-head{border-bottom:1px solid #e8e8e8}.chat-head small{color:#777}.chat-head button{color:#555}.home-indicator i{background:#272727}.menu-toggle{color:#666;border-top-color:#e8e8e8}#chat-form{border-top-color:#e8e8e8}#chat-form input{background:#f6f6f6;border-color:#ddd;color:#222}#chat-form input::placeholder{color:#888}#chat-form button{background:#eee;color:#555}.demo-banner{background:#f4f4f4;color:#777}.chat-body .welcome,.chat-body .unified-report,.chat-body .report{color:#eee6da}.line-app .phone{background:#1f1d1e}
/* Both menu tabs share a taller canvas and remain aligned when switched. */
#menu-content{height:265px;padding:12px}.v3-menu-grid{height:201px;gap:10px}.v3-menu-links{height:40px}.v3-collection{padding:16px}.v3-collection strong{margin:12px 0;font-size:21px}.v3-collection img{width:58px;height:64px;right:14px;bottom:13px}.v3-shortcut{padding:15px}.v3-shortcut strong{font-size:14px}.partner-compact{height:241px;gap:8px}.partner-compact .partner-feature{padding:14px 13px}.partner-compact .partner-feature strong{font-size:16px;line-height:1.5;margin:9px 0}.partner-compact .partner-feature>span{font-size:10px}.partner-compact .partner-feature img{top:20px;right:12px;width:54px;height:62px}.partner-compact .partner-fixed{height:86px;gap:10px}.partner-compact .partner-fixed-card{padding:12px}.partner-compact .partner-fixed-card strong{font-size:14px;margin:7px 0}.partner-compact .partner-fixed-card>span{font-size:10px}
/* Native LINE chrome matched to the supplied phone screenshot. */
.status,.chat-head,.home-indicator,#chat-form,.menu-toggle{background:#e2d9d3;color:#211e1b}.chat-head{border-bottom-color:#d9d0ca}.chat-head>span,.chat-head h1,.chat-head button{color:#958d84}.chat-head small{color:#8b837b}.menu-toggle{color:#817972;border-top-color:#d6cdc7}#chat-form{border-top-color:#d9d0ca}#chat-form input{background:#f7f1ed;border-color:#d8cfca;color:#4b413b}#chat-form input::placeholder{color:#aaa19a}#chat-form button{background:#f7f1ed;color:#8a8179}.home-indicator i{background:#26231f}.status i{background:#1a1a1a}

/* Chat backdrop sampled from the user's LINE reference. */
.chat-body{background:#FFFAF7;}
/* Guardian mascot concept: readable copy above, character in the lower gallery. */
.v3-collection{display:flex;flex-direction:column;justify-content:flex-start;padding:15px 13px;background:radial-gradient(ellipse at 70% 80%,#72504555,transparent 66%),#2d2527}.v3-collection small{font-size:8px;letter-spacing:1.2px}.v3-collection strong{font-size:21px;margin:9px 0 5px;position:relative;z-index:1}.v3-collection>span{font-size:10px;position:relative;z-index:1}.v3-collection img{width:112px;height:119px;right:5px;bottom:0;object-fit:contain;opacity:1;filter:drop-shadow(0 5px 9px #0005)}
/* Quiet night-sky texture on CardSeek-owned surfaces only. */
:root{--cardseek-stars:radial-gradient(circle at 8% 19%,#f7ddbd9c 0 .7px,transparent 1.3px),radial-gradient(circle at 31% 11%,#f9ebd760 0 .6px,transparent 1.2px),radial-gradient(circle at 73% 24%,#dbc8ef85 0 .8px,transparent 1.5px),radial-gradient(circle at 92% 69%,#f5d0a58c 0 .7px,transparent 1.4px),radial-gradient(circle at 43% 81%,#c8bde55c 0 .7px,transparent 1.3px),radial-gradient(circle at 17% 67%,#e9c89c66 0 .5px,transparent 1.2px),radial-gradient(circle at 64% 57%,#eee4f57a 0 .6px,transparent 1.2px),radial-gradient(circle at 85% 9%,#eac6a755 0 .5px,transparent 1.1px);--cardseek-nebula:radial-gradient(ellipse at 88% 18%,#80619c29,transparent 63%),radial-gradient(ellipse at 5% 100%,#a6734920,transparent 65%)}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report{background-image:var(--cardseek-stars),var(--cardseek-nebula);background-color:#26232b}.v3-collection{background-image:var(--cardseek-stars),radial-gradient(ellipse at 80% 75%,#85678945,transparent 70%);background-color:#2b2530}.rich-menu{background-image:var(--cardseek-stars);background-color:#231f27}.unified-report .report-head{background:var(--cardseek-stars),var(--cardseek-nebula),#312831!important}.unified-report .spark-quote{background:#2b262d}.sheet-body{background-image:var(--cardseek-stars),var(--cardseek-nebula);background-size:430px 510px,100% 100%,100% 100%;background-color:#201d25}.wish-orbit{background:radial-gradient(ellipse at 50% 65%,#7453894d,transparent 65%)}.welcome-visual{background-image:var(--cardseek-stars);background-color:#26212b}.welcome-visual img{opacity:.9}.v3-shortcut strong,.v3-collection strong,.partner-feature strong{ text-shadow:0 1px 8px #17131c}
/* Menu typography and custom icon family. */
.rich-menu{font-family:"Microsoft JhengHei","PingFang TC","Noto Sans TC",sans-serif}.menu-tabs button{font-family:inherit;font-size:12px;letter-spacing:1px;font-weight:600}.v3-collection small{font-family:Georgia,serif;font-size:8px;letter-spacing:1.6px;color:#cfab80}.v3-collection strong{font-family:"Microsoft JhengHei","PingFang TC",sans-serif;font-size:22px;line-height:1.35;letter-spacing:2px;font-weight:600;margin:10px 0 6px;color:#f2e4d2}.v3-collection>span{font-size:10px;letter-spacing:.4px;line-height:1.6;color:#c5b3a0}.v3-shortcut{gap:11px;padding:13px 11px}.menu-icon{width:28px;height:28px;flex:0 0 28px;fill:none;stroke:#d2a16d;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:round}.v3-shortcut .shortcut-copy{display:flex;flex-direction:column;gap:6px;min-width:0}.v3-shortcut .shortcut-copy strong{font-size:15px;letter-spacing:1px;line-height:1.4;font-weight:600;color:#eee1d0;white-space:nowrap}.v3-shortcut .shortcut-copy small{font-size:9px;letter-spacing:.2px;line-height:1.4;color:#b9a694;white-space:nowrap}.v3-menu-links button{display:flex;justify-content:center;align-items:center;gap:7px;font-family:inherit;letter-spacing:.5px;font-size:11px;color:#c9b7a3}.v3-menu-links .menu-icon{width:17px;height:17px;flex-basis:17px;stroke-width:1.6}
/* User-selected photographic starfield, with quiet contrast behind text. */
:root{--cardseek-stars:url('/assets/starfield-reference-v1.png');--cardseek-nebula:linear-gradient(transparent,transparent)}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.rich-menu,.sheet-body,.welcome-visual{background-color:#0a0a0a;background-image:linear-gradient(#11101428,#11101428),url('/assets/starfield-reference-v1.png');background-size:cover;background-position:center;background-repeat:no-repeat}.v3-collection{background-position:center,28% 60%}.v3-shortcut:first-of-type{background-position:center,70% 25%}.v3-shortcut:last-of-type{background-position:center,65% 75%}.unified-report .report-head{background:linear-gradient(#18141945,#18141945),url('/assets/starfield-reference-v1.png') center 40%/cover,#0a0a0a!important}.unified-report .spark-quote{background:#1a191d}.wish-orbit{background:radial-gradient(ellipse at 50% 70%,#e2d6bd0c,transparent 65%)}.welcome-visual img{opacity:.83}.v3-collection strong,.v3-shortcut strong,.partner-feature strong{text-shadow:0 1px 5px #000}
/* Restore the preferred plum palette while retaining fine photographic stars. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.rich-menu,.sheet-body,.welcome-visual{background-color:#372d3d;background-image:linear-gradient(125deg,#46344877,#211c2d44),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen;background-size:cover;background-position:center;background-repeat:no-repeat}.v3-collection{background-color:#43314a;background-position:center,28% 60%}.rich-menu{background-color:#2b2434}.sheet-body{background-color:#2f2737}.unified-report .report-head{background:linear-gradient(125deg,#49364b77,#2f253b44),url('/assets/starfield-reference-v1.png') center 40%/cover,#3c2f42!important;background-blend-mode:normal,screen!important}.unified-report .spark-quote{background:#312b37}
/* Subdue the star texture inside branded panels without fading their content. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-image:linear-gradient(125deg,#352a3be8,#292331e8),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen}.unified-report .report-head{background:linear-gradient(125deg,#3d3044e8,#2f2838e8),url('/assets/starfield-reference-v1.png') center 40%/cover,#3c2f42!important;background-blend-mode:normal,screen!important}
/* Deeper cool violet, retaining the subdued star texture. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#251835;background-image:linear-gradient(125deg,#291937eb,#1b1428eb),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen}.rich-menu,.sheet-body{background-color:#251834;background-image:linear-gradient(125deg,#30203fe0,#1e162de0),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen}.unified-report .report-head{background:linear-gradient(125deg,#2f1d3feb,#1f172eeb),url('/assets/starfield-reference-v1.png') center 40%/cover,#251835!important;background-blend-mode:normal,screen!important}.unified-report .spark-quote{background:#261c31}
/* Atmospheric depth: dark upper field and a softly illuminated lower violet. */
:root{--collection-depth:radial-gradient(ellipse at 85% 105%,#a9754326,transparent 62%),linear-gradient(165deg,#17141fef 5%,#23182eee 48%,#3b2450e8 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-image:var(--collection-depth);background-color:#251835;background-blend-mode:normal,normal,screen;background-size:cover;background-position:center}.rich-menu,.sheet-body{background-image:radial-gradient(ellipse at 90% 100%,#91644115,transparent 70%),linear-gradient(170deg,#18141fec,#261b34eb 60%,#382448e8),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,normal,screen;background-size:cover;background-position:center}.unified-report .report-head{background:var(--collection-depth)!important;background-color:#251835!important;background-blend-mode:normal,normal,screen!important;background-size:cover!important;background-position:center!important}
/* Balance visible stars with the deep violet gradient. */
:root{--collection-depth:radial-gradient(ellipse at 85% 105%,#a975431b,transparent 62%),linear-gradient(165deg,#17141fa6 5%,#23182ea6 48%,#3b2450a6 100%),url('/assets/starfield-reference-v1.png')}
.rich-menu,.sheet-body{background-image:radial-gradient(ellipse at 90% 100%,#91644115,transparent 70%),linear-gradient(170deg,#18141fc2,#261b34c2 60%,#382448c2),url('/assets/starfield-reference-v1.png')}
/* Muted grey-plum sampled from the approved reference, avoiding bright violet. */
:root{--collection-depth:linear-gradient(155deg,#3b2d3ea6 0%,#352c3ba6 55%,#302936a6 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#372e3c;background-image:var(--collection-depth);background-blend-mode:normal,screen;background-size:cover;background-position:center}.rich-menu,.sheet-body{background-color:#342c3b;background-image:linear-gradient(165deg,#342b3aa6,#2e2735b3),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen;background-size:cover}.unified-report .report-head{background:var(--collection-depth)!important;background-color:#372e3c!important;background-blend-mode:normal,screen!important;background-size:cover!important}.unified-report .spark-quote{background:#312b37}
/* Fixed, shorter menu geometry across tabs and every carousel slide. */
#menu-content{height:241px;min-height:241px;max-height:241px;padding:12px;overflow:hidden;flex-shrink:0}.v3-menu-grid{height:177px;grid-template-rows:repeat(2,minmax(0,1fr))}.v3-menu-links{height:40px}.partner-compact{height:217px;min-height:217px;max-height:217px;display:grid;grid-template-rows:123px 86px;gap:8px}.partner-compact .partner-feature{height:123px;min-height:123px;max-height:123px;box-sizing:border-box;overflow:hidden}.partner-compact .partner-fixed{height:86px;min-height:86px;max-height:86px}.partner-compact .partner-feature strong{height:48px;line-height:24px;margin:5px 0;overflow:hidden;display:flex;align-items:center}.partner-compact .partner-feature>span{display:block;line-height:14px;height:14px}.partner-compact .partner-kicker{line-height:10px;height:10px}.v3-collection img{height:99px;width:98px}.v3-collection strong{margin-top:7px}.rich-menu{flex-shrink:0}.menu-tabs{height:34px;min-height:34px;box-sizing:border-box}.menu-tabs button{height:33px}
/* Uniform spacing: 12px outer padding and 12px between partner panels. */
.partner-compact{grid-template-rows:119px 86px;gap:12px}.partner-compact .partner-feature{height:119px;min-height:119px;max-height:119px}.partner-compact .partner-fixed{gap:12px}
/* Ink-purple color study: same geometry and restrained star field. */
:root{--collection-depth:linear-gradient(155deg,#241f31b3 0%,#211c2eb3 55%,#191623b3 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#261f34;background-image:var(--collection-depth);background-blend-mode:normal,screen}.rich-menu,.sheet-body{background-color:#211d2e;background-image:linear-gradient(165deg,#231e30b3,#1b1727bd),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen}.unified-report .report-head{background:var(--collection-depth)!important;background-color:#261f34!important;background-blend-mode:normal,screen!important;background-size:cover!important}.unified-report .spark-quote{background:#262031}
/* Warm plum refinement: clean color, restrained photographic grain, fine starlight. */
:root{--clean-stars:radial-gradient(circle at 13% 22%,#eadff080 0 .55px,transparent 1px),radial-gradient(circle at 76% 16%,#f6e7ce75 0 .6px,transparent 1.1px),radial-gradient(circle at 88% 72%,#e1d6eb60 0 .5px,transparent 1px),radial-gradient(circle at 39% 86%,#e8dcef55 0 .5px,transparent 1px);--collection-depth:var(--clean-stars),linear-gradient(155deg,#403348db 0%,#392e42db 55%,#32293bdb 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#40354a;background-image:var(--collection-depth);background-blend-mode:normal,normal,normal,normal,normal,screen;background-size:cover;background-position:center}.rich-menu,.sheet-body{background-color:#372d3f;background-image:linear-gradient(165deg,#372c3ee0,#302737e0),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,screen;background-size:cover}.unified-report .report-head{background:var(--collection-depth)!important;background-color:#40354a!important;background-blend-mode:normal,normal,normal,normal,normal,screen!important;background-size:cover!important}.unified-report .spark-quote{background:#372e42}
/* Corrected preference: original warm grey-purple, slightly darker. */
:root{--collection-depth:var(--clean-stars),linear-gradient(155deg,#302536d9 0%,#2c2433d9 55%,#28212ed9 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#34293b}.rich-menu,.sheet-body{background-color:#2e2635;background-image:linear-gradient(165deg,#2c2332de,#27202dde),url('/assets/starfield-reference-v1.png')}.unified-report .report-head{background-color:#34293b!important}.unified-report .spark-quote{background:#2e2636}
/* Up/down menu navigation, stable outer dimensions. */
.menu-tabs.menu-stepper{height:44px;min-height:44px;display:flex;justify-content:space-between;align-items:center;padding:0 12px;background:#251e2d;border-bottom:1px solid #72553c}.menu-stepper-label{display:flex;align-items:center;gap:11px}.menu-stepper-label strong{font-size:12px;font-weight:600;letter-spacing:1px;color:#e8cfad}.menu-stepper-label small{font-size:9px;letter-spacing:1px;color:#a99886}.menu-stepper-arrows{display:flex;flex-direction:column;justify-content:center;width:42px;height:42px}.menu-stepper-arrows button{height:21px;min-height:21px;padding:0;width:42px;border:0;background:transparent;color:#e3b780;font-size:23px;line-height:18px;box-shadow:none;letter-spacing:0}.menu-stepper-arrows button:disabled{opacity:.22;cursor:default}.menu-stepper-arrows button:not(:disabled):hover{background:#61496a44;border-radius:4px}.menu-slide>*{animation:menu-step-in .24s ease-out both}@keyframes menu-step-in{from{transform:translateY(var(--menu-enter));opacity:.35}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){.menu-slide>*{animation:none}}
/* The entire title strip is the menu switch; no separate arrows. */
button.menu-tabs.menu-stepper{width:100%;border:0;border-bottom:1px solid #72553c;border-radius:0;text-align:left;cursor:pointer;appearance:none;justify-content:flex-start}button.menu-tabs.menu-stepper:hover{background:#2f2639}button.menu-tabs.menu-stepper:focus-visible{outline:2px solid #d2a16d;outline-offset:-3px}
/* Place the title switch below the cards without changing total menu height. */
.rich-menu{display:flex;flex-direction:column}#menu-content{order:0}button.menu-tabs.menu-stepper{order:1;flex:0 0 44px;border-bottom:0;border-top:1px solid #72553c}
button.menu-tabs.menu-stepper{justify-content:space-between}.menu-switch-hint{margin-left:auto;font-size:10px;letter-spacing:.5px;color:#b8a48c;font-weight:400}
/* Dark plum gradually opens into the approved muted purple. */
:root{--collection-depth:var(--clean-stars),linear-gradient(165deg,#120f19ed 0%,#1b1624e8 32%,#27202fde 70%,#302536d9 100%),url('/assets/starfield-reference-v1.png')}
.rich-menu,.sheet-body{background-image:linear-gradient(165deg,#110e18ed 0%,#1a1522e8 32%,#241d2bde 70%,#2c2332de 100%),url('/assets/starfield-reference-v1.png')}
/* Match the partner section's 12px spacing without changing menu height. */
.v3-menu-grid{gap:12px;height:165px}
.v3-menu-links{gap:12px;margin-top:12px;height:40px}
/* Compact secondary links while keeping both menu views equally tall. */
.v3-menu-grid{height:165px}
.v3-menu-links{height:28px;margin-top:6px}
#menu-content{height:223px;min-height:223px;max-height:223px}
.partner-compact{height:199px;min-height:199px;max-height:199px;grid-template-rows:107px 80px}
.partner-compact .partner-feature{height:107px;min-height:107px;max-height:107px;padding-top:8px;padding-bottom:8px}
.partner-compact .partner-fixed{height:80px;min-height:80px;max-height:80px}
/* Lighter, more flowing menu typography with readable Chinese forms. */
.rich-menu{font-family:"PingFang TC","Microsoft JhengHei UI","Microsoft JhengHei",sans-serif}
.v3-collection strong{font-family:inherit;font-size:21px;font-weight:500;letter-spacing:2.2px;line-height:1.45;text-shadow:none}
.v3-shortcut .shortcut-copy strong{font-family:inherit;font-size:15px;font-weight:400;letter-spacing:1.3px;line-height:1.5;text-shadow:none}
.partner-feature strong,.partner-fixed-card strong{font-family:inherit;font-weight:400;letter-spacing:1px;text-shadow:none}
.v3-collection>span,.v3-shortcut .shortcut-copy small{font-weight:400;letter-spacing:.6px}
.v3-menu-links button{font-weight:400;letter-spacing:.8px}
.menu-stepper-label strong{font-family:inherit;font-weight:400;letter-spacing:1.2px}
/* Reference palette: midnight indigo with a soft violet glow. */
:root{--collection-depth:var(--clean-stars),radial-gradient(ellipse at 85% 0%,#60378040,transparent 72%),linear-gradient(160deg,#080a21eb 0%,#11102ae5 52%,#241734dc 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#0d0e28;background-blend-mode:normal,normal,normal,normal,normal,normal,screen}
.rich-menu,.sheet-body{background-color:#090c25;background-image:radial-gradient(ellipse at 85% 0%,#66358350,transparent 66%),linear-gradient(155deg,#07091bed 0%,#0d0c23e8 55%,#20132fde 100%),url('/assets/starfield-reference-v1.png');background-blend-mode:normal,normal,screen}
.unified-report .report-head{background-color:#0d0e28!important;background-blend-mode:normal,normal,normal,normal,normal,normal,screen!important}
button.menu-tabs.menu-stepper{background:#121028}button.menu-tabs.menu-stepper:hover{background:#1f1737}
/* Lower the indigo glow while preserving the same gradient and readable text. */
:root{--collection-depth:var(--clean-stars),radial-gradient(ellipse at 85% 0%,#54306e24,transparent 72%),linear-gradient(160deg,#060817f2 0%,#0b0b1eed 52%,#181122e8 100%),url('/assets/starfield-reference-v1.png')}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card,.welcome,.unified-report,.welcome-visual{background-color:#090a1d}
.rich-menu,.sheet-body{background-color:#07091a;background-image:radial-gradient(ellipse at 85% 0%,#56306d28,transparent 66%),linear-gradient(155deg,#050714f2 0%,#09091bed 55%,#150f20e8 100%),url('/assets/starfield-reference-v1.png')}
.unified-report .report-head{background-color:#090a1d!important}
button.menu-tabs.menu-stepper{background:#0d0c1d}button.menu-tabs.menu-stepper:hover{background:#171225}
/* Tight secondary-link row, preserving readable labels and stable switching. */
.v3-menu-links{height:22px;margin-top:2px}
.v3-menu-links button{padding:0;min-height:0;line-height:20px}
#menu-content{height:213px;min-height:213px;max-height:213px}
.partner-compact{height:189px;min-height:189px;max-height:189px;grid-template-rows:101px 76px}
.partner-compact .partner-feature{height:101px;min-height:101px;max-height:101px;padding-top:5px;padding-bottom:5px}
.partner-compact .partner-fixed{height:76px;min-height:76px;max-height:76px}
/* Small carousel markers inside the feature card's lower-right corner. */
.partner-hero-wrap{position:relative;min-height:0}
.partner-hero-wrap>.partner-feature{height:100%;width:100%}
.partner-hero-wrap>.partner-dots{position:absolute;right:10px;bottom:5px;display:flex;gap:4px;z-index:2}
.partner-hero-wrap .partner-dot{width:14px;height:14px;min-height:0;padding:0;background-size:100% 2px;opacity:.65}
.partner-hero-wrap .partner-dot.active{opacity:1}
/* Equal breathing room above and below the secondary-link row. */
#menu-content:has(.v3-menu-grid){padding-bottom:7px}
.v3-menu-links{margin-top:7px}
/* Card portrait on the left; the grade selector is the displayed grade badge. */
.unified-report .report-head{display:flex;flex-direction:row;gap:14px;padding:10px 12px;align-items:center}
.unified-report .report-head>.card-art{order:0;width:88px;flex:0 0 88px;height:122px}
.unified-report .report-identity{order:1;flex:1;min-width:0}
.report-grade-label{display:inline-block;margin-top:7px;max-width:100%;padding:4px 23px 4px 9px;border:1px solid #94704b;border-radius:6px;background:#3c2e43;color:#edc28e;font:500 11px inherit;cursor:pointer;color-scheme:dark}
/* Reference layout: full-height portrait left, identity and selected grade right. */
.unified-report .report-head{gap:16px;padding:12px;align-items:center}
.unified-report .report-head>.card-art,.unified-report .report-head .card-art.has-image:has(img[src*="cdn.snkrdunk.com"]){width:110px;flex:0 0 110px;height:154px;overflow:hidden}
.unified-report .report-head .card-art.has-image img[src*="cdn.snkrdunk.com"]{inset:0;width:100%;height:100%;object-fit:contain;transform:scale(1.5);transform-origin:center}
.report-grade-badge{display:inline-block;margin-top:7px;padding:4px 10px;border:1px solid #94704b;border-radius:5px;background:#3c2e43;color:#edc28e;font-size:10px;line-height:1.3}
.unified-report .report-identity .unified-price{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 0 0;border:0}
.unified-report .report-identity .unified-price>strong{font-size:19px;white-space:nowrap}
.unified-report .report-identity .unified-price>small{font-size:8px}
/* Restore the original right-side gold-brown grade pill. */
.unified-report .report-head{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px}
.unified-report .report-head>.card-art{justify-self:center}
.unified-report .report-identity{width:100%;min-width:0}
.unified-report .report-grade-badge{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:28px;min-height:28px;margin-top:12px;padding:4px 8px;border:1px solid #b08759;border-radius:999px;background:#4b3828;color:#f3d6af;font-size:10px;font-weight:400;line-height:18px}
/* Report-only warm charcoal palette from the supplied reference. */
.unified-report{background:#262121;background-image:none;border-color:#69513b}
.unified-report .report-head{background:linear-gradient(125deg,#3c2e25,#2c2631)!important;border-bottom-color:#614b35}
.unified-report .unified-plot,.unified-report .report-credits,.unified-report .report-actions{background:#262121}
.unified-report .spark-quote{background:#2e2829;border-color:#44362f}
/* Balanced vertical rhythm through the report chart, notes and actions. */
.unified-report .unified-plot{padding:10px 12px 8px}
.unified-report .chart-caption{margin:8px 0}
.unified-report .unified-stats{padding:3px 0}
.unified-report .report-credits{height:auto;margin:0 12px 8px;padding:0;overflow:visible}
.unified-report .credits-note{line-height:13px}
.unified-report .report-social{height:25px;padding:5px 0 3px}
.unified-report .report-actions{padding:0 12px 12px;gap:8px}
.unified-report .report-actions button{min-height:32px;padding:7px 3px}
.unified-report .report-download{margin:0 12px 12px}
/* Interior views share the rich menu's restrained indigo star field. */
.sheet-body{background-image:var(--collection-depth);background-color:#090a1d;background-blend-mode:normal,normal,normal,normal,normal,normal,screen;background-size:cover;background-position:center}
.sheet-body .metrics,.sheet-body .page-summary,.sheet-body .holding-row,.sheet-body .sale-row,.sheet-body .calendar-entry,.sheet-body .calendar-day{background-image:var(--collection-depth);background-color:#0d0c1d;background-blend-mode:normal,normal,normal,normal,normal,normal,screen;background-size:cover;background-position:center;border-color:#49394d}
.sheet-body .notice{background:#1a1628b8}
.sheet-head,.bottom-nav{background:linear-gradient(135deg,#0c0a1c,#1d142b);border-color:#5a4438}
.sheet-body .segments{background:#1d1728;border-color:#49394d}
.sheet-body .calendar-day.selected{background:linear-gradient(145deg,#493628,#37263e);border-color:#d2a16d;box-shadow:inset 0 0 0 1px #d2a16d}
.bottom-nav button.active{background:#352738;color:#edc28e;border-top-color:#d2a16d}
/* Enlarge the card in its action dialog and crop only product-canvas whitespace. */
#modal-body>.card-art{width:150px;height:210px;max-width:65%;margin:4px auto 14px;position:relative;overflow:hidden;aspect-ratio:5/7}
#modal-body>.card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:none}
#modal-body>.card-art.has-image img[src*="cdn.snkrdunk.com"]{transform:scale(1.5);transform-origin:center}
@media(max-height:740px){#modal-body>.card-art{width:130px;height:182px}}
/* Geometric chevrons avoid the text glyph's uneven baseline. */
.wish-arrow{display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:0;line-height:1}
.wish-arrow::before{content:"";display:block;width:7px;height:7px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateX(1.5px) rotate(45deg)}
.wish-arrow:last-child::before{transform:translateX(-1.5px) rotate(225deg)}
/* A compact report with adaptive fitting inside the visible chat viewport. */
.unified-report .report-head{padding:8px 12px}
.unified-report .report-head>.card-art,.unified-report .report-head .card-art.has-image:has(img[src*="cdn.snkrdunk.com"]){height:140px;width:100px;flex-basis:100px}
.unified-report .report-identity .unified-price{padding-top:6px;gap:3px}
.unified-report .unified-plot{padding:8px 12px 6px}
.unified-report .chart-caption{margin:6px 0}
.unified-report .report-credits{margin-bottom:6px}
.unified-report .report-actions{padding-bottom:8px;gap:6px}
.unified-report .report-download{margin-bottom:10px;padding:9px}
.chat-message:has(>.unified-report){margin-bottom:0}
/* Make the report portrait fill its left column without adding report height. */
.unified-report .report-head>.card-art,.unified-report .report-head .card-art.has-image:has(img[src*="cdn.snkrdunk.com"]){width:136px;height:184px;max-width:100%;flex-basis:136px}
.unified-report .report-head .card-art.has-image img[src*="cdn.snkrdunk.com"]{width:100%;height:100%;inset:0;object-fit:contain;transform:scale(1.75);transform-origin:center}
/* Bold card title, centered within an evenly spaced title band. */
.sheet-body:has(.wish-orbit) .wish-hint{margin-bottom:4px}
.sheet-body:has(.wish-orbit) .wish-focus h3{display:flex;align-items:center;justify-content:center;min-height:36px;margin:0;padding:5px 0;font-family:"Microsoft JhengHei","PingFang TC",sans-serif;font-weight:700;line-height:1.3}
.sheet-body:has(.wish-orbit) .wish-focus h3+p{margin-top:4px}
/* Concise two-character menu titles with a bold hierarchy. */
.v3-collection strong,.v3-shortcut .shortcut-copy strong{font-weight:700}
/* Main-menu Chinese typography preview: official jf open Huninn. */
@font-face{font-family:'CardSeek Huninn';src:url('/assets/jf-openhuninn-2.1.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2E80-2FFF,U+3000-303F,U+3100-312F,U+31A0-31BF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF,U+20000-2FFFF}
.rich-menu,.rich-menu *{font-family:'CardSeek Huninn','Microsoft JhengHei',sans-serif!important;font-synthesis:weight}
/* Preview Huninn at its native regular weight throughout the main menu. */
.rich-menu,.rich-menu *{font-weight:400!important;font-synthesis:none}
/* Main-menu Chinese font trial: LXGW WenKai, regular weight. */
@font-face{font-family:'CardSeek WenKai';src:url('/assets/LXGWWenKai-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2E80-2FFF,U+3000-303F,U+3100-312F,U+31A0-31BF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF,U+20000-2FFFF}
.rich-menu,.rich-menu *{font-family:'CardSeek WenKai','Microsoft JhengHei',sans-serif!important;font-weight:400!important;font-synthesis:none}
/* Main-menu font trial: GenSen Rounded TW, regular. */
@font-face{font-family:'CardSeek GenSen';src:url('/assets/GenSenRounded2TW-R.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2E80-2FFF,U+3000-303F,U+3100-312F,U+31A0-31BF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FF00-FFEF,U+20000-2FFFF}
.rich-menu,.rich-menu *{font-family:'CardSeek GenSen','Microsoft JhengHei',sans-serif!important;font-weight:400!important;font-synthesis:none}
/* Selected main-menu typeface: jf open Huninn, regular. */
.rich-menu,.rich-menu *{font-family:'CardSeek Huninn','Microsoft JhengHei',sans-serif!important;font-weight:400!important;font-synthesis:none}
/* Keep font metrics from expanding the lower partner cards beyond their row. */
.partner-compact .partner-fixed{grid-template-rows:minmax(0,1fr);align-items:stretch}
.partner-compact .partner-fixed-card{height:100%;min-height:0;box-sizing:border-box;padding:8px 12px;overflow:hidden}
.partner-compact .partner-fixed-card small{line-height:10px}
.partner-compact .partner-fixed-card strong{line-height:18px;margin:4px 0}
.partner-compact .partner-fixed-card>span{line-height:14px}
/* Simulated LINE chrome only: match the user's purple theme. */
.status,.chat-head,.home-indicator,#chat-form,.menu-toggle{background:#2b203e;color:#a477f4}
.status{color:#fff}.chat-head h1,.chat-head button{color:#9b6cf3}.chat-head small,.menu-toggle{color:#a994c6}.chat-head{border-bottom-color:#443255}.home-indicator i{background:#c7b6dc}
.chat-body{background:linear-gradient(180deg,#141217 0%,#1d1727 72%,#493568 100%);color:#e5dcf2}.chat-body .sender{color:#c4acd9}.demo-banner{background:#261d35;color:#a994c6}
#chat-form{border-color:#563976}#chat-form input{background:#20172f;border-color:#714aaa;color:#ece4f5}#chat-form input::placeholder{color:#927aad}#chat-form button{background:#9461ed;color:#fff}/* Restore the reference's original dark LINE chrome. */
.status,.chat-head,.home-indicator{background:#1f1d1d;color:#eee6da}
.chat-head h1{color:#eee6da}.chat-head button{color:#d2a16d}.chat-head small{color:#b3a394}.chat-head{border-bottom-color:#40362f}
.demo-banner{background:#312b26;color:#c5ac90}
#chat-form,.menu-toggle{background:#211f1f;color:#c5ac90;border-color:#40362f}
#chat-form input{background:#2b2727;border-color:#4a3d32;color:#eee6da}#chat-form input::placeholder{color:#b4a89c}
#chat-form button{background:#d2a16d;color:#201b17}
.home-indicator i{background:#b4a89c}
/* Restore the wishlist's original warm charcoal palette. */
.sheet:has(.wish-heading),.sheet:has(.wish-heading) .sheet-body{background:#1f1d1e;background-image:none}
.sheet:has(.wish-heading) .sheet-head{background:#211f1f;border-color:#785a3e}
.sheet:has(.wish-heading) .segments{background:#2e2828;border-color:#44372f}
.sheet:has(.wish-heading) .bottom-nav{background:#211f1f;border-color:#44392f}
.sheet:has(.wish-heading) .bottom-nav button.active{background:#3c2e24;color:#edc89d;border-top-color:#d2a16d}
.sheet:has(.wish-heading) .wish-orbit{background:radial-gradient(ellipse at 50% 65%,#74538922,transparent 65%)}
/* Restore the original warm charcoal palette across all interior screens. */
.sheet,.sheet-body{background:#1f1d1e;background-image:none}
.sheet-head,.bottom-nav{background:#211f1f;border-color:#785a3e}
.sheet-body .segments{background:#2e2828;border-color:#44372f}
.sheet-body .metrics,.sheet-body .page-summary,.sheet-body .holding-row,.sheet-body .sale-row,.sheet-body .source-row,.sheet-body .trend-row,.sheet-body .price-chart{background:#262121;background-image:none;border-color:#44392f}
.sheet-body .calendar-day{background:#2b2526;background-image:none;border-color:#44382f}
.sheet-body .calendar-entry{background:#2c2627;background-image:none;border-color:#4d3e33}
.sheet-body .calendar-day.selected{background:#493628;border-color:#d2a16d;box-shadow:inset 0 0 0 1px #d2a16d}
.sheet-body .notice{background:#312b25;color:#bdae9c}
.bottom-nav button.active{background:#3c2e24;color:#edc89d;border-top-color:#d2a16d}
/* Restore only the outer menu/chat backgrounds; keep branded panels intact. */
.rich-menu,.chat-body{background:#1f1d1e;background-image:none}
.chat-body .sender{color:#c5ac90}
/* Readability polish: clearer captions and room above the guardian. */
.v3-collection>span{display:block;max-width:100%;font-size:11px;line-height:1.5;letter-spacing:0}
.v3-collection img{height:88px;width:87px;bottom:5px;right:8px}
.v3-shortcut .shortcut-copy small{font-size:10px;line-height:1.5;letter-spacing:0}
.partner-compact .partner-feature>span{font-size:10px;line-height:15px;height:15px}
.partner-compact .partner-fixed-card>span{font-size:10px;line-height:15px;letter-spacing:0}
.partner-compact .partner-kicker,.partner-compact .partner-fixed-card small{font-size:8px;letter-spacing:.5px}
.v3-collection{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:12px}
.v3-collection strong{margin:5px 0 4px;line-height:1.3}
.v3-collection img{height:82px;width:81px;bottom:5px}
/* Slightly smaller wishlist carousel cards. */
.sheet-body:has(.wish-orbit) .wish-card{height:min(232px,81cqh)}

/* Shared card border matches the original collection feature. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card{border:1px solid #816040}
/* Match the supplied V2 search proportions, keeping every filter visible. */
.search-filters{padding:12px}
.search-filters>.eyebrow{margin:0 0 8px;font-size:9px;line-height:14px}
.search-filters>.segments{margin:8px 0;padding:3px;border-radius:9px}
.search-filters>.segments button{min-height:30px;padding:6px 4px;font-size:11px;line-height:18px;border-radius:6px}
.search-filters>.chips{margin:8px 0;gap:5px}
.search-filters>.chips button{min-height:28px;padding:5px 10px;font-size:10px;line-height:16px}
.search-filters>.search-form{margin-top:10px;gap:6px;height:36px}
.search-filters>.search-form input{padding:8px;min-height:0;font-size:11px;border-radius:8px}
.search-filters>.search-form input::placeholder{font-size:10px}
.search-filters>.search-form button{padding:0 13px;min-height:0;font-size:11px;border-radius:8px}
.search-filters>.search-form .clear-search{padding:0;width:29px;flex:none;font-size:18px}

/* Keep the phone capsule, hide simulated time and indicators. */
.status>b,.status>span{visibility:hidden}
/* Soft cloud layers for collection and partner menu cards, without star textures. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card{
 background-color:#0a0d1e;
 background-image:radial-gradient(ellipse at 85% 18%,#51415d38,transparent 66%),radial-gradient(ellipse at 22% 88%,#42496132,transparent 68%),radial-gradient(ellipse at 65% 72%,#66516b20,transparent 58%),linear-gradient(150deg,#080b19,#171222);
 background-blend-mode:normal;
 background-size:cover;
 background-position:center;
}

/* Original engraved card emblem replaces the mascot. */
.v3-collection img{width:67px;height:96px;right:10px;bottom:3px;filter:drop-shadow(0 4px 8px #0004)}

.v3-collection strong{display:flex;align-items:center;gap:7px}
.v3-collection strong>.menu-icon{width:25px;height:25px;flex:none}

/* Simple three-card brand illustration. */
.v3-collection img{width:106px;height:90px;right:5px;bottom:5px}

/* Restore the approved mascot collection layout. */
.v3-collection strong{display:block}
.v3-collection img{width:81px;height:82px;right:8px;bottom:5px;filter:drop-shadow(0 5px 9px #0005)}

/* CardSeek card inspection illustration. */
.v3-collection img{width:84px;height:98px;right:6px;bottom:1px}

/* Faithful reference-based hand illustration with transparent canvas. */
.v3-collection img{width:111px;height:111px;right:0;bottom:-5px}

/* Reduce the main brand illustrations by one third. */
.v3-collection img{width:74px;height:74px;right:6px;bottom:5px}

/* Restore the collection mascot. */
.v3-collection img{width:67px;height:96px;right:10px;bottom:3px;border-radius:0;filter:drop-shadow(0 4px 8px #0004)}

/* Restore the reference mascot proportions. */
.v3-collection img{width:87px;height:94px;right:8px;bottom:5px}

/* Vertical collection caption. */
.v3-collection>span{writing-mode:vertical-rl;text-orientation:upright;height:88px;max-height:88px;line-height:1.65;letter-spacing:1px;align-self:flex-start;white-space:normal}
.v3-collection>span{white-space:pre}

/* Align the collection labels to a shared left edge. */
.v3-collection>small,.v3-collection>strong,.v3-collection>span{margin-left:0;padding-left:0}
.v3-collection>span{line-height:1;align-self:flex-start}

/* Center shortcut icons in a common column and balance their visual size. */
.v3-shortcut{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;column-gap:9px}
.v3-shortcut>.menu-icon{justify-self:center;align-self:center;width:28px;height:28px}
.v3-menu-grid>.v3-shortcut:nth-child(2)>.menu-icon{width:33px;height:33px}


/* Original brand palette; dark backgrounds lifted by 15% only. */
.line-app{touch-action:pan-x pan-y}
.line-app input,.line-app select,.line-app textarea{font-size:16px}
/* Native LINE already supplies the chat and rich menu. Do not load a duplicate behind the feature. */
.line-app .phone>.chat-head,.line-app .phone>.demo-banner,.line-app .phone>#chat-form,.line-app .phone>#rich-menu,.line-app .phone>#menu-toggle{display:none}

.version-locked:disabled{opacity:.8;cursor:not-allowed}.language-notice{margin:8px 16px;font-size:12px}

.partner-pause{display:block;color:#e6d3bd;background:#2b2522;border:1px solid #816040;border-radius:5px;padding:3px 8px;font-size:11px}
.unified-report,.report{overflow:hidden;isolation:isolate}.unified-report .report-head{overflow:hidden}

/* Keep the approved menu and button colors; only page/report backgrounds changed. */
.rich-menu{background:#383241;color:#faf3e8}
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card{background:linear-gradient(125deg,#373147,#484057);border-color:#c3a176;color:#faf0df}
.v3-collection small,.v3-collection>span,.v3-shortcut small,.partner-kicker,.partner-feature>span,.partner-fixed-card small,.partner-fixed-card>span{color:#e1cba9}
.v3-collection img{opacity:1}.menu-icon,.v3-menu-links button{color:#e2b780}
.primary,.segments button.active{background:#e2b780;color:#30231b;border-color:#e2b780}
.secondary,.outline,.segments,.chips button{background:#443d4d;color:#eee4f0;border-color:#998496}
.chips button.active{background:#73573e;color:#fff0d8;border-color:#e2b780}

/* Keep scrolling inside feature panels, so iOS cannot pull the document off its backdrop. */
html:has(body.line-app){height:100%;overflow:hidden;overscroll-behavior:none;background:#1f1d1e}
body.line-app{position:fixed;inset:0;width:100%;height:100%;min-height:0;overflow:hidden;overscroll-behavior:none;background:#1f1d1e}
.line-app .phone{height:100%;min-height:0;border-radius:0}
.line-app .sheet,.line-app .modal{min-height:0;overscroll-behavior:none}
.line-app .sheet-body,.line-app .dialog,.line-app .chat-body{min-height:0;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}

/* Restore the original atmospheric texture over the approved button palette. */
.v3-collection,.v3-shortcut,.partner-feature,.partner-fixed-card{
 background-color:#373147;
 background-image:radial-gradient(ellipse at 28% 82%,#c8bdd51a,transparent 62%),radial-gradient(ellipse at 88% 8%,#08071438,transparent 70%),linear-gradient(125deg,#373147e8,#484057e8),url('/assets/starfield-reference-v1.png');
 background-blend-mode:normal,normal,normal,screen;background-size:cover;background-position:center;
}

/* User-provided solid backdrop: RGB(27,25,26), while menu cards retain their approved finish. */
html,body,body.line-app,.phone,.line-app .phone,.chat-body,.rich-menu,.sheet,.sheet-body,.dialog,.line-loading,
.sheet:has(.wish-heading),.sheet:has(.wish-heading) .sheet-body,.chat-head,.sheet-head,.bottom-nav,#chat-form,.menu-toggle{
 background-color:#1b191a;background-image:none;
}
html:has(body.line-app){background:#1b191a}

/* A non-interactive brand strip; keep the rich menu within LINE's supported aspect ratio. */
.menu-brand-strip{order:-1;flex:0 0 44px;height:44px;display:flex;align-items:center;padding:0 12px;background:#0d0c1d;color:#e8cfad;border-bottom:1px solid #72553c;font-size:12px;letter-spacing:1.2px}
#menu-content{height:201px;min-height:201px;max-height:201px}
.v3-menu-grid{height:153px}
.partner-compact{height:177px;min-height:177px;max-height:177px;grid-template-rows:89px 76px}
.partner-compact .partner-feature{height:89px;min-height:89px;max-height:89px}
/* Give the compact headline flexible space, keeping its caption inside the border. */
.partner-compact .partner-feature{display:grid;grid-template-rows:10px minmax(0,1fr) 15px;row-gap:4px;padding:9px 12px}
.partner-compact .partner-feature strong{height:auto;min-height:0;line-height:20px;margin:0;max-width:100%;align-self:stretch}
.partner-compact .partner-feature>span{align-self:end;padding-right:62px;white-space:nowrap}
.partner-compact .partner-hero-wrap>.partner-dots{right:12px;bottom:9px}
.partner-contact{margin:2px 0 0;text-align:center;color:#b9a99e;font-size:11px;line-height:1.6;overflow-wrap:anywhere}.partner-contact a{color:#dfb781;text-decoration:underline;text-underline-offset:2px}
.calendar-entry .cancel-purchase{display:block;width:fit-content;margin:14px 0 0}

.currency-control{padding:10px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.search-filters .currency-control{padding:0}.currency-control .chips{padding:0;margin:0}.currency-control small{font-size:11px;line-height:1.5;flex:1 1 180px}

/* Card exchange local trial */
.v3-menu-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.v3-menu-links button{gap:4px;font-size:11px;letter-spacing:0}
.swap-side{margin:18px 0;padding:16px;border:1px solid #796148;border-radius:16px;background:radial-gradient(ellipse at top right,#393044,transparent 75%),#272322}
.swap-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0 14px}.swap-heading h3{margin:0;color:#e2b780}.swap-heading span{font-size:13px}
.swap-card{display:flex;gap:12px;border-top:1px solid #57483b;padding:14px 0}.swap-card>.card-art{width:64px;height:90px;min-width:64px}.swap-card-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.swap-card-copy small{font-size:11px;line-height:1.5}.swap-card-copy strong{font-size:15px}.swap-money{display:flex;flex-direction:column;gap:7px;font-size:12px;margin:12px 0}.swap-money input,.swap-search input{width:100%;min-width:0;box-sizing:border-box;background:#1b1919;border:1px solid #8b7056;border-radius:9px;padding:12px;color:#f4e7d5;font-size:16px}.swap-money input[aria-invalid=true]{border-color:#df9393}.swap-side>.secondary{width:100%}.swap-result{border:1px solid #c69b6e;border-radius:16px;background:#28212e;padding:20px;text-align:center}.swap-result h3{font-size:18px}.swap-result p{font-size:12px;line-height:1.6;color:#cbbbae}.swap-difference{font-size:30px;color:#e2b780}.swap-search{display:flex;gap:8px;margin:14px 0}.swap-search button{flex-shrink:0}.swap-picks{display:flex;flex-direction:column;gap:8px}.swap-pick{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px;background:#29242d;border:1px solid #6b5745;border-radius:10px;color:#f0e2d2}.swap-pick>.card-art{width:44px;min-width:44px;height:62px}.swap-pick span{font-size:13px;line-height:1.6}.swap-side .text-button{align-self:flex-start;margin:0;padding:6px 0}.swap-side .art-name,.swap-pick .art-name{font-size:9px}.swap-side .art-placeholder,.swap-pick .art-placeholder,.swap-side .art-mark,.swap-pick .art-mark{display:none}

/* Compact side-by-side exchange worksheet, scoped to this page. */
.sheet:has(.swap-columns){height:100%;border-radius:0}
.sheet:has(.swap-columns) .sheet-head{height:48px}
.sheet:has(.swap-columns) .sheet-head small{display:none}
.sheet:has(.swap-columns) .sheet-head button{top:2px}
.sheet-body:has(.swap-columns){padding:8px!important}
.swap-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;margin-bottom:6px;color:#cbbbae}
.swap-toolbar .currency-control{padding:0;flex:none}.swap-toolbar .currency-control small{display:none}.swap-toolbar .chips button{min-height:28px;padding:3px 10px}
.swap-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch}
.swap-columns .swap-side{min-width:0;margin:0;padding:8px;border-radius:10px}
.swap-columns .swap-heading{gap:3px;margin:0 0 6px;font-size:11px}.swap-columns .swap-heading h3{font-size:14px}.swap-columns .swap-heading span{font-size:10px}.swap-columns .swap-heading strong{font-size:12px}
.swap-columns .swap-card{position:relative;gap:6px;padding:6px 0;min-height:68px}.swap-columns .swap-card>.card-art{width:32px;min-width:32px;height:45px;margin:0;padding:0;align-self:center}
.swap-columns .swap-card-copy{gap:2px}.swap-columns .swap-card-copy strong{font-size:11px;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swap-columns .swap-card-copy small{font-size:9px;line-height:12px}.swap-columns .swap-sample{display:none}
.swap-columns .swap-money{gap:3px;margin:4px 0;font-size:10px}.swap-columns .swap-money input{height:30px;padding:3px 5px;border-radius:5px;font-size:16px}
.swap-columns .swap-card .swap-money{margin:0;font-size:0}.swap-columns .swap-card .swap-money input{padding-right:29px;height:28px}
.swap-columns .swap-card .text-button{position:absolute;right:3px;bottom:10px;font-size:9px;padding:4px 0;color:#ccb9a8}
.swap-columns .swap-side>.secondary{padding:6px 2px;min-height:30px;font-size:11px;border-radius:6px}.swap-columns .swap-side>p{font-size:11px;line-height:1.5;margin:12px 0}
.swap-columns .swap-side>.swap-heading:last-child{margin:7px 0 0;flex-wrap:wrap}
.swap-result{margin-top:8px;padding:9px;border-radius:10px}.swap-result small{font-size:10px}.swap-result h3{margin:4px 0;font-size:13px}.swap-difference{font-size:23px}.swap-result p{margin:3px 0 0;font-size:10px;line-height:1.4}
.swap-notes{margin:7px 0;font-size:10px;color:#bdae9e}.swap-notes summary{cursor:pointer}.swap-notes .notice{margin:5px 0;padding:8px;font-size:11px}
.sheet-body:has(.swap-columns)>.wide-link{margin:0;padding:5px;min-height:28px;font-size:11px}
.exchange-entry{width:100%;margin:0 0 7px;border:1px solid #846b51;background:#302937;color:#e2b780;border-radius:6px;padding:7px;font-size:12px}.exchange-hint{font-size:11px;line-height:1.6;color:#c4b4a7;margin:8px 0}.exchange-code{text-align:center;font-size:24px;letter-spacing:3px;color:#e2b780;padding:8px}.sheet-body:has(.exchange-code),.sheet-body:has(.exchange-hint){padding:10px}.sheet-body:has(.exchange-hint)>button{margin:4px;padding:8px;font-size:12px}.exchange-edit-row{display:grid;grid-template-columns:1fr 90px;gap:6px;align-items:center;margin:8px 0;font-size:12px}.exchange-edit-row label{display:flex;align-items:center;gap:5px}.exchange-edit-row input[type=number]{width:90px}.exchange-edit-row input,.dialog:has(.exchange-edit)>label input{font-size:16px;background:#211e23;color:#eee1cc;border:1px solid #81684f;border-radius:5px;padding:6px}.dialog:has(.exchange-edit)>label{font-size:12px;display:flex;gap:8px;align-items:center}
/* One-card code exchange: compact, two columns and collapsed supplementary details. */
.sheet:has(.exchange-panel){height:100%;border-radius:0}.sheet:has(.exchange-panel) .sheet-head{height:44px}.sheet:has(.exchange-panel) .sheet-head small{display:none}.sheet:has(.exchange-panel) .sheet-head button{top:0}
.sheet-body:has(.exchange-panel){padding:8px!important}.exchange-panel{font-size:12px}.exchange-panel .swap-toolbar{margin:0}.exchange-panel .swap-toolbar button{font-size:11px;padding:3px;margin:0;min-height:26px}
.exchange-panel>.segments{margin:4px 0;padding:3px}.exchange-panel>.segments button{min-height:30px;padding:5px;font-size:12px}.exchange-panel .exchange-hint{font-size:10px;line-height:1.4;margin:5px 0}.exchange-panel .exchange-code{font-size:21px;letter-spacing:2px;padding:4px;text-align:center}
.exchange-panel .swap-side>h3{font-size:13px;margin:0 0 5px}.exchange-panel .swap-side>p{font-size:10px;margin:5px 0}.exchange-panel .swap-side>small{font-size:10px}.exchange-panel .swap-card-copy{font-size:11px;line-height:1.5}.exchange-panel .swap-card{min-height:60px}.exchange-panel .exchange-empty{min-height:60px;display:flex;align-items:center;margin:0!important;color:#c8bbae}
.exchange-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:6px 0}.exchange-actions button,.exchange-panel>.primary,.exchange-panel>.secondary{font-size:12px;padding:7px;min-height:32px;margin:0;border-radius:6px}.exchange-panel>.primary{width:100%}.exchange-panel>.wide-link{font-size:10px;padding:5px;min-height:26px;margin:0;width:100%}.exchange-panel .swap-notes{font-size:10px;margin:5px 0;line-height:1.5}.exchange-panel .swap-search{margin:6px 0}.exchange-panel .swap-search input{padding:8px}

/* Clear contrast for the extraction-code join action. */
.exchange-panel .swap-search button{background:#e2b780;color:#30231b;border:1px solid #e2b780;border-radius:7px;font-weight:700;font-size:13px;min-width:64px;min-height:38px;padding:8px 14px;opacity:1}.exchange-panel .swap-search button:focus-visible{outline:2px solid #faf0df;outline-offset:2px}
.disclaimer-content{padding:16px 18px 24px;color:#eee3d2}.disclaimer-content h2{font-size:18px;margin:0 0 18px;color:#e2b780}.disclaimer-content h3{font-size:14px;margin:18px 0 7px;color:#e2b780}.disclaimer-content p{font-size:13px;line-height:1.85;margin:0;color:#d7cbbf}
.disclaimer-content ul{margin:10px 0 18px;padding-left:20px;color:#d7cbbf;font-size:13px;line-height:1.85}.disclaimer-content li{padding-left:2px;margin:8px 0}.disclaimer-content h3{line-height:1.6}
.disclaimer-content p+p{margin-top:8px}.disclaimer-content a{color:#e2b780;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}

/* Smaller identification artwork in transaction reports; keep the information columns intact. */
.unified-report .report-head>.card-art,.unified-report .report-head .card-art.has-image:has(img[src*="cdn.snkrdunk.com"]){width:136px;height:184px;min-width:0;flex-basis:136px;align-self:center;justify-self:center}
/* Compact inventory and wishlist artwork; retain original image files. */
.sheet-body .holding-row>.card-art{width:96px;height:134px;min-width:96px;flex:0 0 96px;align-self:flex-start}
.sheet-body:has(.wish-orbit) .wish-card{width:min(165.7143px,57.8571cqh);height:min(232px,81cqh);aspect-ratio:5/7}

/* Preserve the complete card face when the carousel is compact. */
.wish-card .card-art img{object-fit:contain;transform:none;flex:none;object-position:center}

/* Equal spacing above and below the daily search allowance. */
.search-filters>.currency-control+.eyebrow{margin:8px 0}
/* Use equal card frames; compensate for padding in marketplace single-card photos. */
.card-grid .card-tile>.card-art{width:100%;height:auto;aspect-ratio:5/7;position:relative;overflow:hidden;flex:none}
.card-grid .card-tile>.card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.card-grid .card-tile>.card-art.has-image.art-snkr:not(.art-sealed) img{transform:scale(1.5);transform-origin:center}
/* Carousel uses the same source-padding compensation as the search grid. */
.wish-card .card-art.has-image{position:relative;overflow:hidden}
.wish-card .card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.wish-card .card-art.has-image.art-snkr:not(.art-sealed) img{transform:scale(1.5);transform-origin:center}
/* Keep report artwork consistent with the source-aware search and carousel frames. */
.unified-report .report-head>.card-art{width:136px;height:190.4px;max-width:100%;min-width:0;flex-basis:136px;aspect-ratio:5/7;position:relative;overflow:hidden;align-self:center;justify-self:center}
.unified-report .report-head .card-art.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.unified-report .report-head .card-art.has-image.art-snkr:not(.art-sealed) img{transform:scale(1.5);transform-origin:center}


/* Local image/import controls: use the saved v3 notice, record-form, swap-side,
   primary/secondary and modal components without restyling existing pages. */
.sheet-body.local-form-page{padding:10px;box-sizing:border-box;overflow-x:hidden}
.local-form-page *{box-sizing:border-box;min-width:0}
.local-form-page .notice:empty{display:none}
.import-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;cursor:pointer;position:relative}
.import-upload span{font-size:10px;font-weight:400}
.import-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.import-upload:focus-within{outline:2px solid currentColor;outline-offset:2px}
.import-preview{display:block;max-width:100%;max-height:270px;margin:10px auto;object-fit:contain}
.import-preview[hidden]{display:none}
.import-gallery:empty,.import-review:empty{display:none}
.import-gallery>small{display:block;overflow-wrap:anywhere}
.image-tabs{display:flex;gap:5px;flex-wrap:wrap;margin:6px 0}
.image-tabs button{width:auto;min-width:30px;margin:0;padding:5px 8px}
.import-rows{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:10px 0}
.import-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.import-row-heading{display:flex;align-items:center;justify-content:space-between}
.import-row strong{font-size:13px}
.import-row select{width:100%;max-width:100%;padding:11px;border:1px solid #4a3d32;border-radius:9px;background:#2b2727;color:#eee6da;font-size:16px}
.import-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:5px 0}
.import-fields label{display:flex;flex-direction:column;gap:5px}
.import-fields label:last-child{grid-column:1/-1}
.import-fields input{min-width:0;font-size:16px}
.import-confirm{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1.7}
.import-confirm input{width:17px;height:17px;flex-shrink:0;accent-color:var(--brand)}
.import-review{position:static;margin:10px 0}
.import-review strong{font-size:13px}.import-review p{margin:4px 0;font-size:11px}
.import-manual{margin:12px 0}.import-manual-search .swap-search input{flex:1;width:0}
.import-manual-search .swap-search button{width:auto;min-width:62px;margin:0}
.import-manual-search .swap-pick span strong,.import-manual-search .swap-pick span small{display:block}
.import-manual-search .swap-pick span small{font-size:10px;margin-top:4px}
.pick-arrow{margin-left:auto}
.visual-match{display:flex;justify-content:center;gap:12px;padding:4px 0}
.visual-match figure{margin:0;display:grid;gap:4px;justify-items:center;width:45%}
.visual-match img{max-width:100%;width:auto;height:134px;object-fit:contain}
.visual-match figcaption{font-size:10px}
.visual-match.thumbnail-candidates{flex-wrap:wrap;align-items:start}.thumbnail-candidates img{height:110px}.thumbnail-candidates figcaption{text-align:center;overflow-wrap:anywhere}
.inventory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px}
.inventory-toolbar .currency-control{min-width:0;padding:0}
.inventory-toolbar+.segments{margin-top:0}
.inventory-import{flex-shrink:0;display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 13px;border:1px solid #a38b70;border-radius:9px;background:#443b4d;color:#eed9bb;font:inherit;font-size:12px;cursor:pointer}
.inventory-import::before{content:'＋';font-size:17px;line-height:1;color:#e2b780}
.inventory-import:hover{background:#514559}.inventory-import:focus-visible{outline:2px solid #e2b780;outline-offset:3px}

.search-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.search-toolbar .currency-control{min-width:0;padding:0}

.migration-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.migration-candidate{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px;min-width:0;background:#302b30;border:1px solid #806749;border-radius:12px;color:inherit}.migration-candidate img{width:100%;height:160px;object-fit:contain}.migration-candidate small{font-size:12px;line-height:1.5;overflow-wrap:anywhere}.migration-candidate.active{border:2px solid #e4b77d;background:#51402e}
.professional-analysis-entry{display:block;width:calc(100% - 24px);margin:8px 12px 12px;padding:13px;border:1px solid #b5a17e;border-radius:10px;background:linear-gradient(120deg,#40354d,#25202c);color:#f8eedc;font-weight:700;cursor:pointer}.analysis-identity{padding:20px 18px 8px;color:#eee6da}.analysis-identity h2{font-size:23px;margin:9px 0}.analysis-identity p{color:#bdb0c4;font-size:13px}.professional-analysis-page .market-analysis{padding:18px;margin:10px 12px}.professional-analysis-page .market-analysis-title h3{font-size:20px}.professional-analysis-page .market-analysis-title p,.professional-analysis-page .market-footnote{font-size:12px}.professional-analysis-page .market-stat{padding:14px}.professional-analysis-page .market-stat small,.professional-analysis-page .market-stat span{font-size:11px}.professional-analysis-page .market-stat strong{font-size:22px}.professional-analysis-page .monthly-heading strong{font-size:14px}.professional-analysis-page .monthly-bars{height:150px}.professional-analysis-page .month-column>small,.professional-analysis-page .month-column>span{font-size:10px}.professional-analysis-page .population-notes{display:none}.analysis-missing-grid{display:grid;gap:10px;margin:12px}.analysis-missing,.analysis-extra{background:#201e26;border:1px solid #48404f;border-radius:12px;padding:17px;color:#eee6da}.analysis-missing h3,.analysis-extra h3{font-size:15px;margin:0 0 10px}.analysis-missing strong{font-size:20px;color:#aea1ba}.analysis-missing p,.analysis-extra p{font-size:13px;line-height:1.7;margin-bottom:0}.analysis-extra{margin:12px}.analysis-extra small{display:block;color:#b8acbf;font-size:11px;line-height:1.7;margin-top:12px}.market-stat.positive strong{color:#ee989c}.market-stat.negative strong{color:#8ed6b5}
.sheet-body:has(.research-dashboard){background:#101116!important}.research-dashboard{padding:22px 18px 28px;color:#f5f5f8;font-family:Arial,'Microsoft JhengHei',sans-serif;font-variant-numeric:tabular-nums}.research-mast,.research-hero-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#b1a9ce;letter-spacing:1px}.research-pill,.research-grade{background:#a791ff1a;border:1px solid #9b83ed44;color:#c7b6ff;border-radius:8px;padding:6px 10px;font-size:10px}.research-identity{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:26px 0}.research-identity>div:first-child{flex:1;min-width:0}.research-identity h2{font-size:24px;line-height:1.35;margin:0 0 10px;color:#f7f6fb}.research-identity p{color:#858493;font-size:11px;line-height:1.6;margin:0 0 13px}.research-identity .card-art{width:76px;height:105px;flex:0 0 76px;border-radius:9px;overflow:hidden;filter:drop-shadow(0 8px 15px #0006)}.research-nav,.research-periods{display:flex;gap:4px;margin:20px 0;padding:4px;border-radius:11px;background:#1b1c25}.research-nav button,.research-periods button{flex:1;background:transparent;border:0;color:#898997;padding:11px 2px;border-radius:8px;font-size:12px;cursor:pointer}.research-nav button.selected,.research-periods button.selected{background:#a28beb24;color:#d2c0ff}.research-hero{border:1px solid #30303d;background:radial-gradient(ellipse at 100% 0,#7962bb22,transparent 65%),#191a22;border-radius:18px;padding:19px 14px 14px;overflow:hidden}.research-price{display:block;font-size:36px;letter-spacing:-1.5px;margin:10px 0 12px;line-height:1.1;color:#faf9ff}.research-change{display:inline-block;font-size:10px;padding:6px 9px;border-radius:6px;background:#ffffff06}.research-dashboard .rise{color:#f38b9a}.research-dashboard .fall{color:#6fdbbb}.research-dashboard .neutral{color:#a8a2b7}.research-chart.spark-quote{display:block;background:transparent!important;border:0;padding:4px 0 8px;color:#a38af7}.research-chart svg{width:100%;height:150px;overflow:visible}.research-chart .spark-price{display:none!important}.research-chart svg text{fill:#858293}.research-chart svg line{stroke:#373541}.research-chart svg polyline{stroke:#ac91ff;stroke-width:2}.research-chart svg polygon{fill:#a38af7;fill-opacity:.12}.research-chart svg circle{fill:#c1aaff}.research-range{display:grid;grid-template-columns:repeat(3,1fr);padding-top:15px;border-top:1px solid #2c2c37;gap:8px}.research-range small{display:block;color:#858291;font-size:10px;margin-bottom:7px}.research-range strong{font-size:12px;color:#dedce8}.research-caption{color:#888191;font-size:10px;line-height:1.8;margin:14px 0 0}.research-chart-empty{padding:40px 10px;text-align:center;color:#898391;font-size:12px;border:1px dashed #3a3545;border-radius:10px;margin:12px 0}.research-section-title{display:flex;align-items:center;gap:8px;margin:28px 0 14px}.research-section-title>span{font-size:10px;color:#8875bb}.research-section-title h3{font-size:15px;margin:0}.research-section-title>small{margin-left:auto;font-size:9px;color:#9992a2}.research-grid,.research-gauges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.research-metric{border:1px solid #34303f;border-radius:14px;padding:16px 12px;background:linear-gradient(140deg,#252130,#1a1922)}.research-metric:before{content:'';display:block;width:17px;height:3px;background:#ae8eff;border-radius:3px;margin-bottom:12px}.research-metric.mint{background:linear-gradient(140deg,#1d2929,#191d22);border-color:#2c3b3b}.research-metric.mint:before{background:#7fddc0}.research-metric.amber:before{background:#e6bd81}.metric-label{font-size:10px;color:#b0a9c0}.metric-value{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;margin:14px 0 10px}.metric-value strong{font-size:27px;font-weight:500;color:#f5f1ff}.metric-value>span{font-size:9px;color:#9d94af}.research-metric p{font-size:10px;line-height:1.6;color:#9990a7;margin:0}.research-rhythm{padding:17px 14px;border:1px solid #2c2d36;border-radius:13px;background:#181a21;margin-top:11px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:11px}.research-rhythm>strong{font-size:10px;color:#8ac9b8;font-weight:400}.research-tracks{display:flex;gap:3px;flex-basis:100%;height:22px}.research-tracks span{flex:1;background:#282a34;border-radius:3px}.research-tracks span.active{background:#70c4ae}.research-rhythm>small{font-size:9px;color:#9992a2}.research-gauge{background:#1a1b24;border:1px solid #30303e;border-radius:15px;padding:18px 10px;text-align:center}.research-gauge h4{font-size:12px;margin:0 0 17px;color:#c5bfce}.research-ring{width:96px;height:96px;border-radius:50%;border:7px solid #34303f;border-bottom-color:#24222e;box-sizing:border-box;margin:0 auto 14px;display:grid;place-items:center;transform:rotate(-30deg)}.research-ring>div{transform:rotate(30deg)}.research-ring strong{display:block;font-size:29px;color:#b8a9ce}.research-ring small{display:block;font-size:9px;color:#9992a2}.research-pending{font-size:9px;color:#b4a8c7;background:#bda0e00b;padding:5px 7px}.research-gauge p{font-size:10px;line-height:1.6;color:#9992a2;margin:14px 0 0}.research-grade-dist{margin-top:16px;padding:19px 15px;border:1px solid #302e3c;border-radius:14px;background:#1b1a24}.research-grade-dist h3{font-size:13px;margin:0 0 18px}.research-empty-bar{height:10px;background:repeating-linear-gradient(135deg,#37303f 0px,#37303f 5px,#2a2533 5px,#2a2533 10px);border-radius:4px}.research-grade-labels{display:grid;grid-template-columns:repeat(3,1fr);margin-top:16px}.research-grade-labels small{display:block;font-size:10px;color:#a99cbb}.research-grade-labels strong{display:block;font-size:20px;margin-top:7px;color:#c4b7d4}.research-grade-dist p,.research-insight p{font-size:10px;line-height:1.8;color:#a99cbb}.research-insight{margin-top:16px;padding:15px;border-left:2px solid #9880c9;background:#a18ad309;font-size:12px}.research-table{width:100%;border-collapse:collapse;font-size:11px;background:#191a22;border:1px solid #2e2d3b}.research-table th{padding:13px 7px;text-align:right;font-size:9px;color:#aca0bc;background:#22212d}.research-table td{padding:17px 7px;border-top:1px solid #2c2b36;text-align:right;font-size:11px}.research-table th:first-child,.research-table td:first-child{text-align:left}.research-table td strong{display:block;font-size:12px;color:#e6dfef}.research-table td small{display:block;font-size:10px;color:#aca0bc;margin-top:5px}.research-method{margin-top:26px;border-top:1px solid #292631;padding-top:17px;font-size:11px;color:#afa0be}.research-method summary{cursor:pointer}.research-method p{font-size:10px;line-height:1.9}.research-source{background:transparent;border:0;color:#b8a0e7;padding:10px 0;font-size:11px;cursor:pointer}.research-signoff{text-align:center;letter-spacing:1.8px;font-size:8px;color:#8a7b9b;margin-top:30px}
.rank-board{margin-top:20px;border:1px solid #34405a;border-radius:16px;background:linear-gradient(150deg,#1b263b,#161c2b);padding:18px 12px}.rank-board h3{font-size:15px;margin:0 0 7px}.rank-sub{font-size:10px;color:#8e9bb3}.rank-row{display:flex;align-items:center;gap:9px;width:100%;padding:15px 0;border:0;border-bottom:1px solid #ffffff08;background:transparent;color:#e7edf8;text-align:left;cursor:pointer}.rank-row:last-child{border-bottom:0}.rank-number{width:22px;height:23px;border-radius:6px;display:grid;place-items:center;background:#31405a;color:#aabedc;font-size:12px;flex-shrink:0}.rank-row:nth-of-type(1) .rank-number{background:#75633b55;color:#e4c987}.rank-row .card-art{width:35px;height:49px;flex:0 0 35px;border-radius:4px;overflow:hidden}.rank-copy{flex:1;min-width:0}.rank-copy strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-copy span{display:block;font-size:13px;font-weight:bold;margin:4px 0}.rank-copy small{font-size:8px;color:#7e8ba4}.rank-change{font-size:12px;white-space:nowrap}.gainers .rank-change{color:#7ee0bb}.losers .rank-change{color:#f17e8e}
/* Match CardSeek's existing charcoal, ivory and warm-gold palette. */
.sheet-body:has(.research-dashboard){background:linear-gradient(#151214dd,#151214dd),url('/assets/starfield-reference-v1.png') center/cover!important}.research-dashboard{color:#eee6da;font-family:inherit}.research-mast,.research-section-title>span,.research-source{color:#c5a77d}.research-pill,.research-grade{background:#b18d5319;border-color:#806749;color:#e4c99f}.research-hero,.research-metric,.research-metric.mint,.research-gauge,.research-grade-dist,.research-rhythm{background:linear-gradient(135deg,#302a2b,#211e20);border-color:#514238}.research-nav,.research-periods{background:#252123}.research-nav button,.research-periods button{color:#b4a89c}.research-nav button.selected,.research-nav button.active,.research-periods button.selected{background:#6b5032;color:#fff0d7}.research-price,.research-identity h2,.metric-value strong{color:#f5ecdf}.research-identity p,.research-caption,.research-metric p,.research-gauge p,.research-method{color:#b4a89c}.research-chart svg polyline{stroke:#d3b17c}.research-chart svg polygon{fill:#d3b17c}.research-chart svg circle{fill:#ead2aa}.research-chart svg text{fill:#b4a89c}.research-chart svg line{stroke:#4b403b}.research-metric:before,.research-metric.mint:before,.research-metric.amber:before{background:#d2ad77}.research-ring{border-color:#5d4c40;border-bottom-color:#322a28}.research-ring strong{color:#ddc4a0}.research-pending{color:#c7b395}.research-insight{border-left-color:#b18d72;background:#b18d720c}.research-table{background:#272223;border-color:#514238}.research-table th{background:#332a28;color:#d3bea3}.research-table td{border-color:#443831}.research-table td strong{color:#eee6da}.research-table td small{color:#b4a89c}.rank-board{background:linear-gradient(140deg,#30282a,#201d20);border-color:#68513b}.rank-row{color:#eee6da;border-bottom-color:#b39a7420}.rank-number{background:#4c3d33;color:#d8b98c}.rank-copy small,.rank-sub{color:#b4a89c}.gainers .rank-change{color:#ed939a}.losers .rank-change{color:#8fd1b5}.rank-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:19px 0 4px}.rank-switch button{min-height:46px;border:1px solid #735c43;border-radius:11px;background:#272225;color:#c5b8a7;font-weight:600;font-size:14px;transition:background .15s,color .15s}.rank-switch button.active{background:linear-gradient(135deg,#886a40,#63482e);color:#fff1d9;border-color:#d2ad77;box-shadow:0 3px 12px #0003}.rank-switch button:focus-visible{outline:2px solid #e8cca5;outline-offset:3px}.professional-analysis-entry{background:linear-gradient(120deg,#53402e,#2d2425);border-color:#a1835b;color:#f2ddba}
/* Research controls use the existing CardSeek segments/chips components. */
.research-dashboard .segments,.filters .research-tabs{background:#443d4d;border-color:#998496}.research-dashboard .segments button,.filters .research-tabs button{color:#eee4f0}.research-dashboard .segments button.active,.filters .research-tabs button.active{background:#e2b780;color:#30231b;border-color:#e2b780}.research-dashboard .ranking-direction{margin:16px 0 8px}.research-dashboard .research-range-tabs{justify-content:space-between}.research-dashboard .research-range-tabs button{flex:1;padding-left:8px;padding-right:8px}.professional-analysis-entry{background:#443d4d;border:1px solid #998496;color:#eee4f0;border-radius:8px;letter-spacing:normal}
.research-pop-bar{display:flex;height:10px;overflow:hidden;border-radius:5px}.research-pop-bar span{height:100%}.research-gauge .research-ring strong{font-size:21px}.research-grade-labels strong{font-size:18px}
/* Match the user's approved inventory, wishlist and search screens.
   Scoped to the new analysis/ranking UI so existing screens stay intact. */
.sheet-body:has(.research-dashboard){background:#1f1d1e!important;background-image:none!important}
.research-dashboard{--analysis-bg:#1f1d1e;--analysis-panel:#262222;--analysis-line:#44372f;--analysis-gold:#e2b780;--analysis-text:#eee6da;--analysis-muted:#c5ac90;padding:16px 14px 22px;color:var(--analysis-text);font-family:inherit}
.research-dashboard .research-mast{font-size:9px;letter-spacing:1.3px;color:var(--analysis-gold)}
.research-dashboard .research-pill{border:0;background:transparent;padding:0;color:var(--analysis-muted);font-size:9px;letter-spacing:.5px}
.research-dashboard>h2{font-size:20px;font-weight:500;margin:12px 0 8px;color:var(--analysis-text)}
.research-dashboard .research-identity{margin:18px 0;gap:14px;align-items:center}
.research-dashboard .research-identity h2{font-size:20px;line-height:1.45;font-weight:600;letter-spacing:0;color:var(--analysis-text)}
.research-dashboard .research-identity p{font-size:11px;color:var(--analysis-muted)}
.research-dashboard .research-grade{display:inline-block;background:#443d4d;border:1px solid #998496;color:#eee4f0;border-radius:8px;padding:5px 8px}
.research-dashboard .research-identity .card-art{margin:0;width:70px;height:98px;flex-basis:70px;filter:none}
.research-dashboard .segments,.filters .research-tabs{background:#2e2828;border:1px solid #44372f;border-radius:10px;padding:4px;margin:10px 0;gap:0}
.research-dashboard .segments button,.filters .research-tabs button{min-height:34px;padding:9px 5px;border:0;border-radius:7px;background:transparent;color:#d8c2a8;font-size:12px;font-weight:500;box-shadow:none;letter-spacing:0}
.research-dashboard .segments button.active,.filters .research-tabs button.active{background:#e2b780;color:#30231b;border-color:#e2b780}
.research-dashboard .chips button{background:#443d4d;color:#eee4f0;border:1px solid #998496;border-radius:20px;min-height:34px;padding:7px 12px;font-size:11px}
.research-dashboard .chips button.active{background:#73573e;color:#fff0d8;border-color:#e2b780}
.research-dashboard .ranking-direction{margin:14px 0}
.research-dashboard .research-hero{background:#262222;border:1px solid #44372f;border-radius:10px;padding:16px 14px;box-shadow:none}
.research-dashboard .research-hero-top{color:#c5ac90;letter-spacing:0}
.research-dashboard .research-price{font-size:30px;letter-spacing:0;font-weight:700;color:#edc89d;margin:12px 0}
.research-dashboard .research-change{background:transparent;padding:0;font-size:11px}
.research-dashboard .research-range-tabs{justify-content:flex-start;gap:6px;margin:16px 0 10px}
.research-dashboard .research-range-tabs button{flex:0 1 auto;padding:7px 12px}
.research-dashboard .research-chart svg{height:140px}
.research-dashboard .research-chart svg polyline{stroke:#d2a16d}.research-dashboard .research-chart svg polygon{fill:#d2a16d}.research-dashboard .research-chart svg circle{fill:#e2b780}
.research-dashboard .research-range{border-color:#44372f;padding-top:14px}
.research-dashboard .research-range small{color:#c5ac90}.research-dashboard .research-range strong{color:#eee6da}
.research-dashboard .research-section-title{margin:22px 0 12px}.research-dashboard .research-section-title h3{font-size:14px;color:#eee6da}.research-dashboard .research-section-title>span,.research-dashboard .research-section-title>small{color:#c5ac90}
.research-dashboard .research-metric,.research-dashboard .research-metric.mint,.research-dashboard .research-metric.amber,.research-dashboard .research-gauge,.research-dashboard .research-grade-dist,.research-dashboard .research-rhythm{background:#262222;border:1px solid #44372f;border-radius:10px;box-shadow:none}
.research-dashboard .research-metric{padding:14px 12px}.research-dashboard .research-metric:before{display:none}
.research-dashboard .metric-label{color:#c5ac90}.research-dashboard .metric-value{margin:12px 0 8px}.research-dashboard .metric-value strong{font-size:23px;font-weight:700;color:#eee6da}.research-dashboard .metric-value>span{color:#c5ac90}
.research-dashboard .research-metric p,.research-dashboard .research-caption,.research-dashboard .research-rhythm>small,.research-dashboard .research-gauge p,.research-dashboard .research-grade-dist p,.research-dashboard .research-insight p{font-size:10px;line-height:1.8;color:#c5ac90}
.research-dashboard .research-rhythm>strong{color:#e2b780}.research-dashboard .research-tracks span{background:#443d4d}.research-dashboard .research-tracks span.active{background:#d2a16d}
.research-dashboard .research-gauge h4{color:#eee6da;font-size:12px}.research-dashboard .research-ring{border-color:#806749;border-bottom-color:#3b3029}.research-dashboard .research-ring strong{color:#eee6da}.research-dashboard .research-ring small,.research-dashboard .research-pending{color:#c5ac90;background:transparent}
.research-dashboard .research-grade-labels small{color:#c5ac90}.research-dashboard .research-grade-labels strong{color:#eee6da}
.research-dashboard .research-insight{background:#302a25;border-left:2px solid #806749;border-radius:0;padding:12px}.research-dashboard .research-insight>span{color:#e2b780}
.research-dashboard .research-table{background:#262222;border-color:#44372f}.research-dashboard .research-table th{background:#302a25;color:#c5ac90}.research-dashboard .research-table td{border-color:#44372f}.research-dashboard .research-table td strong{color:#eee6da}.research-dashboard .research-table td small{color:#c5ac90}
.research-dashboard .research-method{border-color:#44372f;color:#c5ac90}.research-dashboard .research-source{color:#dfb88d}.research-dashboard .research-signoff{color:#b4a89c;letter-spacing:.5px}
.research-dashboard .rank-board{background:#262222;border:1px solid #44372f;border-radius:10px;padding:14px 12px;margin-top:12px}.research-dashboard .rank-board h3{font-size:14px;color:#eee6da;font-weight:600}.research-dashboard .rank-sub{color:#c5ac90}
.research-dashboard .rank-row{border-color:#44372f;color:#eee6da;padding:14px 0}.research-dashboard .rank-copy strong{font-size:12px}.research-dashboard .rank-copy span{font-size:13px;color:#edc89d}.research-dashboard .rank-copy small{color:#b4a89c}.research-dashboard .rank-number{background:#443d4d;color:#eee4f0;border-radius:6px}.research-dashboard .rank-row:nth-of-type(1) .rank-number{background:#73573e;color:#fff0d8}
.research-dashboard .rise,.research-dashboard .gainers .rank-change{color:#ed4368}.research-dashboard .fall,.research-dashboard .losers .rank-change{color:#8fd1b5}
.professional-analysis-entry{background:#443d4d;border:1px solid #998496;color:#eee4f0;border-radius:8px;font-size:12px;font-weight:500;padding:11px 10px;min-height:36px;box-shadow:none;letter-spacing:0}
.filters .trend-scope-tabs{background:#2e2828;border-color:#44372f}.filters .trend-scope-tabs button{font-size:11px;padding:9px 3px;white-space:nowrap}.filters .trend-scope-tabs button.active{background:#e2b780;color:#30231b}
.leader-chart{background:#262222;border:1px solid #44372f;border-radius:10px;overflow:hidden;margin-bottom:16px}.leader-chart summary{padding:14px;color:#e2b780;font-size:12px;cursor:pointer}.leader-chart>div{padding:12px;border-top:1px solid #44372f}.leader-price{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.leader-price small{font-size:10px;color:#c5ac90}.leader-price strong{font-size:28px;color:#edc89d}.leader-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:18px 0}.leader-stats div{display:flex;flex-direction:column;gap:8px}.leader-stats small{font-size:9px;color:#c5ac90}.leader-stats strong{font-size:12px;color:#eee6da}.leader-plot svg{width:100%;height:180px}.leader-plot .spark-price{display:none}
.research-dashboard .podium-board{padding:14px 0 0;overflow:hidden}.podium-board>h3,.podium-board>.rank-sub{margin-left:12px;margin-right:12px}.podium-board>.rank-sub{display:block;margin-bottom:14px;font-size:9px;line-height:1.7}.podium-row{border-top:1px solid #44372f;padding:16px 9px 12px}.podium-main{display:grid;grid-template-columns:20px 55px minmax(0,1fr) 88px;gap:7px;align-items:center;width:100%;padding:0;background:transparent;border:0;color:#eee6da;text-align:left;cursor:pointer;font-family:inherit}.podium-main:focus-visible{outline:2px solid #e2b780;outline-offset:4px}
.podium-rank{position:relative;display:flex;align-items:center;justify-content:center;height:30px;color:#c5ac90;font-size:13px}.podium-rank svg{position:absolute;width:26px;height:28px;filter:drop-shadow(0 2px 3px #0005)}.podium-rank b{position:relative;z-index:1}.podium-rank.place-1{color:#efd286}.podium-rank.place-2{color:#b9cddd}.podium-rank.place-3{color:#dba579}.podium-rank:is(.place-1,.place-2,.place-3) b{color:#3b3029;font-size:11px;margin-top:8px}.podium-main .card-art{width:55px;height:78px;min-width:0;margin:0;flex-basis:auto;border-radius:4px}
.podium-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.podium-copy>strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}.podium-copy>small{font-size:9px;color:#b4a89c;line-height:1.5;overflow-wrap:anywhere}.podium-change{font-size:13px;font-weight:700;margin:3px 0}.podium-prior{font-size:10px;font-weight:500;color:#d8c2a8}.podium-price{display:flex;flex-direction:column;align-items:flex-end;min-width:0;gap:4px}.podium-price>strong{font-size:14px;white-space:nowrap;color:#edc89d}.podium-price>small{font-size:9px;color:#b4a89c}.podium-spark{width:88px;max-height:42px;overflow:hidden}.podium-spark svg{width:100%;height:42px}.podium-spark svg text,.podium-spark svg line,.podium-spark .spark-price{display:none}.gainers .podium-spark svg polyline{stroke:#ed4368}.losers .podium-spark svg polyline{stroke:#8fd1b5}
.podium-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 0 27px}.podium-footer>small{font-size:9px;color:#b4a89c}.podium-footer button{background:#443d4d;color:#eee4f0;border:1px solid #998496;border-radius:7px;padding:7px 9px;font-size:10px;min-height:30px}
.podium-main{grid-template-columns:30px 55px minmax(0,1fr) 82px;gap:6px}
.podium-rank{height:42px;isolation:isolate;font-variant-numeric:tabular-nums}
.podium-rank svg{width:36px;height:36px;filter:drop-shadow(0 3px 3px #0006)}
.podium-rank:is(.place-1,.place-2,.place-3)::before{content:"";position:absolute;inset:3px -3px;border-radius:50%;background:radial-gradient(ellipse,currentColor 0%,transparent 70%);opacity:.1;z-index:-1}
.podium-rank:is(.place-1,.place-2,.place-3) b{font-family:Georgia,serif;font-size:13px;line-height:1;margin-top:7px;color:#49351e;text-shadow:0 1px 0 #ffffff70}
.podium-rank.place-2 b{color:#354454}.podium-rank.place-3 b{color:#593821}
.podium-footer{margin-left:36px}.podium-spark{width:82px}
/* Reference layout: slim rank rail, tall artwork, compact details and top-right price. */
.research-dashboard:has(.podium-board){padding-left:8px;padding-right:8px}
.research-dashboard .podium-board{border:0;border-radius:0;background:#262222;padding-top:16px}
.podium-row{border:0;padding:12px 8px 16px}
.podium-main{position:relative;grid-template-columns:16px 56px minmax(0,1fr);column-gap:10px;min-height:98px;align-items:center}
.podium-main .card-art{width:56px;height:91px;border-radius:2px;box-shadow:0 2px 5px #0005;align-self:center}
.podium-main .card-art.has-image{background:transparent;border:0;box-shadow:none}
.podium-main .card-art img{object-fit:contain}
.podium-main .card-art:not(.has-image){overflow:hidden;border:1px solid #746a60;background:#302b28;display:flex;align-items:center;justify-content:center}
.podium-main .card-art:not(.has-image) .art-name,.podium-main .card-art:not(.has-image) .art-top,.podium-main .card-art:not(.has-image) .art-number,.podium-main .card-art:not(.has-image) .art-mark{display:none}
.podium-main .card-art .art-placeholder{font-size:9px;color:#b4a89c}
.podium-copy{gap:0;align-self:center;padding:2px 0;min-height:74px;justify-content:center}
.podium-copy>strong{font-size:11px;line-height:1.5;font-weight:500;padding-right:102px;min-height:16px}
.podium-copy>.podium-version{font-size:9px;line-height:1.6;padding-right:100px;min-height:15px}
.podium-change-line,.podium-prior-line{display:flex;align-items:baseline;gap:5px;line-height:1.55;flex-wrap:wrap}
.podium-change-line{margin-top:5px}
.podium-change-line>small,.podium-prior-line>small{font-size:10px;color:#aba39d}
.podium-change{font-size:11px;margin:0;font-weight:600}
.podium-prior{font-size:10px;color:#eee6da;line-height:1.55}
.podium-price{position:absolute;right:0;top:17px;width:106px;gap:2px;isolation:isolate;pointer-events:none}
.podium-price>strong{font-size:15px;font-weight:600;line-height:1.15;color:#f4eee8;letter-spacing:-.4px}
.podium-price>small{font-size:9px;line-height:1.4;color:#a8a19c}
.podium-spark{display:none}
.podium-price::before{content:"";position:absolute;z-index:-1;right:0;top:4px;width:125px;height:17px;background:linear-gradient(180deg,#e2b78035,transparent);border-top:1px solid #e2b78080;mask-image:linear-gradient(90deg,transparent,#000 45%,transparent)}
.gainers .podium-price::before{border-color:#ed436899;background:linear-gradient(180deg,#ed436833,transparent)}
.losers .podium-price::before{border-color:#8fd1b599;background:linear-gradient(180deg,#8fd1b533,transparent)}
.podium-rank{height:22px;font-size:12px;align-self:center}
.podium-rank svg{width:19px;height:21px;filter:drop-shadow(0 1px 1px #0004)}
.podium-rank:is(.place-1,.place-2,.place-3)::before{display:none}
.podium-rank:is(.place-1,.place-2,.place-3) b{font-family:Arial,sans-serif;font-style:italic;font-size:8px;margin-top:4px;text-shadow:none}
.podium-rank::after{content:"";position:absolute;bottom:-6px;left:6px;width:5px;height:1px;background:#8d817666}
@media(min-width:420px){.podium-main{grid-template-columns:18px 64px minmax(0,1fr);gap:12px;min-height:108px}.podium-main .card-art{width:64px;height:100px}.podium-copy>strong{font-size:12px}.podium-copy>.podium-version{font-size:10px}.podium-price>strong{font-size:16px}}
.market-price-chart{margin:18px -4px 0;padding:18px 0 0;border-top:1px solid #e2b78020;min-width:0}
.market-chart-heading{display:flex;justify-content:space-between;align-items:center;padding:0 6px;color:#ede2d3;font-size:12px;font-weight:500}
.market-chart-heading>span::before{content:"";display:inline-block;width:14px;height:2px;margin:0 7px 3px 0;background:#e2b780;border-radius:2px}
.market-chart-heading small{font-size:9px;color:#9e948a;font-weight:400;letter-spacing:.3px}
.market-chart-readout{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:16px 6px 4px;min-height:30px}
.market-chart-readout strong{font-size:20px;color:#f0e7dc;font-weight:600;letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.market-chart-readout span{font-size:9px;color:#a99b8b}
.market-price-chart svg{display:block;width:100%;height:auto;overflow:visible;font-family:inherit}
.market-price-chart .market-axis{fill:#9d948b!important;font-size:9px;font-variant-numeric:tabular-nums}
.market-price-chart .market-grid{stroke:#ffffff0e!important;stroke-width:1;stroke-dasharray:3 4}
.market-price-chart .market-price-line{fill:none;stroke:#e2b780!important;stroke-width:2;stroke-linecap:butt;stroke-linejoin:round}
.market-price-chart .market-crosshair{stroke:#e2b78050;stroke-width:1;stroke-dasharray:3 4}
.market-price-chart .market-point{fill:#e2b780;stroke:#302a25;stroke-width:2}
.market-hit{cursor:crosshair;touch-action:pan-y}
.market-chart-hint{margin:0;text-align:center;font-size:9px;line-height:1.8;color:#8c8278}
.leader-chart>div{background:#24201f}
.leader-stats{padding:14px 0;border-top:1px solid #e2b78016;border-bottom:1px solid #e2b78016;gap:10px}
.leader-stats strong{font-size:13px;letter-spacing:-.2px;font-variant-numeric:tabular-nums}
.compact-leader-chart{margin:12px 0 0;width:100%;min-width:0}
.compact-leader-chart .spark-quote{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:8px;align-items:center;padding:10px 8px;background:#2b2726;border:1px solid #44392f;border-radius:10px;min-height:106px;box-sizing:border-box}
.compact-leader-chart .spark-quote svg{width:100%;height:90px;min-width:0;margin:0;overflow:visible}
.compact-leader-chart .spark-price{display:block;text-align:right;min-width:0}
.compact-leader-chart .spark-price strong{font-size:16px;line-height:1.2;letter-spacing:-.2px;color:#edc89d}
.compact-leader-chart .spark-price small{font-size:7px;line-height:1.5;margin:3px 0;color:#c5ac90}
.compact-leader-chart .spark-price .spark-time{font-size:6px;white-space:nowrap}
.compact-leader-chart .spark-badge{font-size:12px;line-height:1.2;padding:4px 9px;border-radius:5px;margin:5px 0 2px}
.compact-leader-chart .up .spark-badge{background:#58313d;color:#f0b2c1}
.compact-leader-chart .down .spark-badge{background:#29483e;color:#9cd9c5}
.compact-leader-chart .spark-quote.up{color:#c96b7b}.compact-leader-chart .spark-quote.down{color:#3b927d}
.compact-leader-chart .spark-quote svg polyline{stroke-width:2.3}
.compact-leader-chart .spark-quote svg polygon{fill-opacity:.05}
.compact-chart-period{text-align:center;font-size:8px;line-height:1.5;color:#c5ac90;margin:6px 0 0}
/* Price direction follows the first and last trades in the selected interval. */
.spark-quote.up{--price-direction:#ed4368}
.spark-quote.down{--price-direction:#8fd1b5}
.spark-quote.flat{--price-direction:#b4a89c}
.spark-quote:is(.up,.down,.flat) svg polyline{stroke:var(--price-direction)!important}
.spark-quote:is(.up,.down,.flat) svg polygon,.spark-quote:is(.up,.down,.flat) svg circle{fill:var(--price-direction)!important}
.psa-full-distribution{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 10px}.psa-full-distribution>div{padding:10px 5px;border-bottom:1px solid #44372f}.psa-full-distribution .psa-unclassified{background:#3c3024;border:1px solid #806749;border-radius:6px}.research-dashboard .psa-quality-note{padding:12px;background:#3c3024;border-radius:6px;color:#edc89d;font-size:11px;line-height:1.8}

/* Keep the analysis currency header stable in both currencies. */
.research-hero-top{gap:12px}.research-hero-top>span{white-space:nowrap;flex-shrink:0}.research-hero-top>.currency-control{flex:0 0 auto;margin-left:auto}

.research-currency-note{display:block;margin:10px 0 0;font-size:10px;line-height:1.6;overflow-wrap:anywhere;color:#c5ac90}

.leader-price{flex-direction:row;align-items:center;justify-content:space-between;gap:16px}.leader-price-copy{display:flex;flex-direction:column;gap:6px;min-width:0}.leader-price>.card-art{width:112px;height:156px;flex:0 0 112px;border-radius:8px;overflow:hidden}

/* Price-source label: readable at report and LINE image sizes. */
.unified-report .report-identity .report-source{display:inline-flex;align-items:center;max-width:100%;box-sizing:border-box;margin:3px 0 8px;padding:6px 9px;border:1px solid #a9804e;border-left:3px solid #edbd7c;border-radius:5px;background:#201b17;color:#ffe0ad;font-size:12px;font-weight:700;line-height:1.45;letter-spacing:.3px;overflow-wrap:normal;text-wrap:balance}


/* Compact leader summary: controls and metrics alongside the full card. */
.leader-price{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px 14px;align-items:start;margin-bottom:14px}.leader-price-copy{grid-column:1;grid-row:1;gap:5px}.leader-price>.card-art{grid-column:2;grid-row:1 / 4;align-self:center}.leader-price>.chips{grid-column:1;grid-row:2;display:flex;gap:4px;margin:0;flex-wrap:wrap}.leader-price>.chips button{padding:7px 8px;font-size:10px;min-height:30px}.leader-price>.leader-stats{grid-column:1;grid-row:3;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;margin:0;padding:10px 0 0;border-top:1px solid #44372f}.leader-price>.leader-stats div{gap:4px}.leader-price strong{font-size:27px}.leader-price .leader-stats strong{font-size:12px}


/* Balanced price hero with a separate, continuous metrics strip. */
.leader-chart>div{padding:16px 14px 12px}.leader-price{grid-template-columns:minmax(0,1fr) 94px;grid-template-rows:1fr auto;gap:14px 18px;min-height:132px;margin:0 0 16px;align-items:center}.leader-price-copy{align-self:center;gap:9px}.leader-price-copy small{font-size:10px;letter-spacing:.6px;color:#bba48b}.leader-price-copy>strong{font-size:30px;line-height:1.15;font-weight:700;letter-spacing:-.6px;color:#f2c792}.leader-price>.card-art{grid-column:2;grid-row:1 / 3;width:94px;height:132px;flex-basis:94px;align-self:center;border-radius:6px;filter:drop-shadow(0 5px 7px #0004)}.leader-price>.chips{grid-column:1;grid-row:2;display:flex;flex-wrap:nowrap;gap:2px;padding:3px;border-radius:8px;background:#191718;border:1px solid #4a3b30;width:max-content;max-width:100%;align-self:end}.leader-price>.chips button{padding:7px 9px;min-height:29px;border:0;border-radius:5px;background:transparent;color:#b6a99d;font-size:10px;box-shadow:none}.leader-price>.chips button.active{background:#dab17f;color:#251d17;font-weight:700}.leader-price+.leader-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 16px;padding:13px 0;border-top:1px solid #4b3c30;border-bottom:1px solid #4b3c30}.leader-price+.leader-stats>div{gap:7px;padding:0 8px;border-right:1px solid #44372f;align-items:center}.leader-price+.leader-stats>div:first-child{padding-left:0}.leader-price+.leader-stats>div:last-child{padding-right:0;border-right:0}.leader-price+.leader-stats small{font-size:9px;color:#baa58c;white-space:nowrap}.leader-price+.leader-stats strong{font-size:13px;color:#f1e4d3;font-weight:600;font-variant-numeric:tabular-nums}


/* Quiet editorial source line, not a second button. */
.unified-report .report-identity .report-source{display:block;width:auto;margin:7px 0 10px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#d8c6af;font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.45px;text-wrap:wrap}


/* Compact trend filters: currency and grade share one row. */
.filters:has(>.trend-scope-tabs){display:grid;grid-template-columns:1fr auto;gap:8px 10px;padding:12px 14px}.filters:has(>.trend-scope-tabs)>.currency-control{grid-column:1;grid-row:1;padding:0;margin:0;min-width:0}.filters:has(>.trend-scope-tabs)>.chips{grid-column:2;grid-row:1;margin:0;align-self:start}.filters:has(>.trend-scope-tabs)>.segments{grid-column:1 / -1;margin:0;padding:3px}.filters:has(>.trend-scope-tabs)>.segments:not(.trend-scope-tabs){grid-row:2}.filters:has(>.trend-scope-tabs)>.trend-scope-tabs{grid-row:3}.filters:has(>.trend-scope-tabs) .chips{gap:5px;margin:0}.filters:has(>.trend-scope-tabs) .chips button{min-height:30px;padding:5px 11px;font-size:11px}.filters:has(>.trend-scope-tabs)>.segments button{min-height:32px;padding:6px 4px;font-size:11px}.filters:has(>.trend-scope-tabs) .currency-control small{display:block;font-size:9px;line-height:1.4;margin-top:5px}


.leader-chart{scroll-margin-top:8px}.leader-chart .research-caption{font-size:9px;line-height:1.5;margin:8px 0 0}.leader-chart .compact-leader-chart{margin:0}.leader-chart .spark-quote{margin-top:0}


/* Keep the complete leader card above the bottom navigation. */
.sheet-body:has(.leader-chart){padding-bottom:20px;scroll-padding-bottom:20px}.leader-chart{margin-bottom:12px}.leader-chart summary{padding:11px 13px}.leader-chart>div{padding:12px 14px 10px}.leader-price{min-height:112px;gap:10px 16px;margin-bottom:12px;grid-template-columns:minmax(0,1fr) 80px}.leader-price>.card-art{width:80px;height:112px;flex-basis:80px}.leader-price+.leader-stats{padding:10px 0;margin-bottom:12px}.leader-chart .spark-quote{padding-top:8px;padding-bottom:8px}.leader-chart .compact-leader-chart>.research-caption{margin-top:5px}


.podium-rank:is(.place-1,.place-2,.place-3) b{margin:0;font-size:15px;font-weight:700;color:inherit}.podium-rank.place-1{color:#e4be78}.podium-rank.place-2{color:#bbc6d2}.podium-rank.place-3{color:#cc9b78}


/* Consistent vertical rhythm in the report identity column. */
.unified-report .report-identity>.eyebrow{display:block;margin:0 0 6px;line-height:1.4}.unified-report .report-identity>h2{margin:0 0 7px;line-height:1.4}.unified-report .report-identity>p{margin:0 0 9px;line-height:1.5}.unified-report .report-identity>.report-source{margin:0 0 12px;line-height:1.5}.unified-report .report-identity>.report-grade-badge{margin:0 0 10px}.unified-report .report-identity>.unified-price{margin:0;padding-top:0;padding-bottom:0;row-gap:5px}.unified-report .report-identity>.unified-price>strong{margin:0;line-height:1.2}


/* Compact, quiet month view inspired by the reference calendar. */
.trade-calendar{padding:16px 14px 24px;background:#191919}
.trade-calendar .calendar-head{margin:4px 0 0}
.trade-calendar .calendar-head h2{font-size:24px;font-weight:650;letter-spacing:-.6px;color:#f1efed;margin:8px 0}
.trade-calendar .calendar-arrow{width:30px;height:30px;border:0;background:#252525;color:#bababa;font-size:21px}
.trade-calendar>.wide-link{font-size:10px;color:#999;padding:3px 0 14px}
.trade-calendar .calendar-grid{gap:3px}
.trade-calendar .calendar-weekday{padding:4px 0 7px;color:#828282;font-size:10px}
.sheet-body .trade-calendar .calendar-day{min-height:0;height:53px;padding:6px 5px;align-items:flex-start;gap:2px;border:1px solid transparent;border-radius:10px;background:#272727;box-shadow:none;color:#d7d7d7}
.trade-calendar .calendar-day strong{font-size:11px;font-weight:550;line-height:15px}
.trade-calendar .calendar-day small{font-size:8px;line-height:10px}
.trade-calendar .calendar-day .buy{color:#dfb681}.trade-calendar .calendar-day .sell{color:#b6a8cf}
.sheet-body .trade-calendar .calendar-day.today{border-color:#777}
.trade-calendar .calendar-day.today strong{text-decoration:none;color:#fff}
.sheet-body .trade-calendar .calendar-day.selected{background:#303030;border-color:#e3e0dc;box-shadow:inset 0 0 0 1px #e3e0dc}
.sheet-body .trade-calendar .calendar-day.outside-month{background:transparent;color:#484848;font-size:11px}
.trade-calendar .calendar-legend{font-size:10px;line-height:1.6;color:#aaa;margin:12px 0 0;text-align:left;padding:7px 10px;background:#232323;border-radius:20px;width:fit-content}
.trade-calendar .calendar-date-title{margin-top:22px}
.trade-calendar .calendar-weekday{padding:3px 0;margin:0 3px 5px;border:1px solid #303030;border-radius:7px;background:#242424;color:#999;font-size:10px;line-height:14px}
/* Month boundaries stay visible through a quieter background and text. */
.sheet-body .trade-calendar .calendar-day{background:#2b2b2b;border-color:#333;color:#dedede}
.sheet-body .trade-calendar .calendar-day.outside-month{background:#1d1d1d;border-color:transparent;color:#4d4d4d}
.sheet-body .trade-calendar .calendar-day.today{border-color:#858585}
.sheet-body .trade-calendar .calendar-day.selected{background:#363636;border-color:#e3e0dc}
/* Three reference tones: weekday capsules, current month, adjacent months. */
.trade-calendar .calendar-weekday{background:#343434;border-color:#393939;color:#aaa}
.sheet-body .trade-calendar .calendar-day{background:#292929;border-color:#323232;color:#dedede}
.sheet-body .trade-calendar .calendar-day.outside-month{background:#1b1b1b;border-color:transparent;color:#454545}
.sheet-body .trade-calendar .calendar-day.today{border-color:#777}
.sheet-body .trade-calendar .calendar-day.selected{background:#292929;border-color:#e3e0dc;box-shadow:inset 0 0 0 1px #e3e0dc}
/* Past dates recede; upcoming dates remain clearer. */
.sheet-body .trade-calendar .calendar-day.past-day{background:#222;border-color:#292929;color:#777}
.trade-calendar .calendar-day.past-day .buy{color:#927b5e}
.trade-calendar .calendar-day.past-day .sell{color:#80758f}
.sheet-body .trade-calendar .calendar-day.future-day{background:#2c2c2c;border-color:#353535;color:#e0e0e0}
.sheet-body .trade-calendar .calendar-day.selected{border-color:#e3e0dc;box-shadow:inset 0 0 0 1px #e3e0dc}
.sheet-body .trade-calendar .calendar-day.today{background:#303030;color:#fff;border-color:#ccc}
/* Diary background sampled from the supplied reference. */
.sheet-body:has(.trade-calendar),.sheet-body .trade-calendar{background:#1b191a;background-image:none}
.trade-calendar .calendar-legend{display:flex;align-items:center;gap:12px}
.calendar-legend-item{display:inline-flex;align-items:center;gap:4px}
.calendar-legend-icon.buy{color:#dfb681}.calendar-legend-icon.sell{color:#b6a8cf}
.calendar-legend-icon{font-size:10px;line-height:1}
/* Overview is a compact screen; deeper metrics have their own entry. */
.research-dashboard.analysis-screen{padding:12px 14px 14px}
.analysis-screen .research-mast{display:none}
.research-dashboard.analysis-screen .research-identity{margin:0 0 8px;gap:12px}
.analysis-screen .research-identity h2{font-size:18px;margin-bottom:5px}
.analysis-screen .research-identity p{margin-bottom:7px}
.research-dashboard.analysis-screen .research-identity .card-art{width:54px;height:76px;flex-basis:54px}
.analysis-screen .research-tabs{margin:8px 0}
.research-dashboard.analysis-overview .research-hero{padding:12px}
.research-dashboard.analysis-overview .research-price{margin:8px 0;font-size:28px}
.research-dashboard.analysis-overview .research-range-tabs{margin:10px 0 6px}
.research-dashboard.analysis-overview .research-chart{padding:4px 0;margin:0}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(90px,18dvh,130px)}
.research-dashboard.analysis-overview .research-range{padding-top:8px;margin-top:5px}
.analysis-overview .research-caption{margin:7px 0 0;font-size:9px}
.analysis-next{display:block;width:100%;min-height:40px;margin-top:10px;border:1px solid #b69164;border-radius:9px;background:#e2b780;color:#30231b;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.analysis-back{border:0;background:transparent;color:#e2b780;padding:8px 0;font:inherit;font-size:12px;cursor:pointer}
.analysis-activity .research-section-title{margin-top:12px}
/* Rarity: four compact gauges and the full distribution on one screen. */
.research-dashboard.analysis-rarity .research-section-title{margin:8px 0}
.analysis-rarity .research-gauges{gap:8px}
.research-dashboard.analysis-rarity .research-gauge{padding:9px 7px;min-height:0}
.research-dashboard.analysis-rarity .research-gauge h4{font-size:11px;margin:0 0 5px;line-height:1.3}
.research-dashboard.analysis-rarity .research-ring{width:58px;height:58px;border-width:4px;margin:0 auto 5px}
.research-dashboard.analysis-rarity .research-ring strong{font-size:18px;line-height:1.1}
.analysis-rarity .research-ring small{font-size:9px}
.research-dashboard.analysis-rarity .research-pending{font-size:9px;padding:0;margin:0;line-height:1.4}
.research-dashboard.analysis-rarity .research-gauge p{font-size:9px;line-height:1.4;margin:4px 0 0}
.research-dashboard.analysis-rarity .research-grade-dist{padding:10px 12px;margin-top:8px}
.analysis-rarity .research-grade-dist h3{font-size:12px;margin:0 0 8px}
.analysis-rarity .research-grade-labels{margin-top:8px;gap:8px}
.analysis-rarity .research-grade-labels strong{font-size:16px}
.analysis-rarity .research-grade-labels small{font-size:9px}
.research-dashboard.analysis-rarity .research-grade-dist p{font-size:9px;line-height:1.4;margin:7px 0 0}
.analysis-rarity .research-method{margin-top:8px;padding-top:0;font-size:10px}
.analysis-rarity .research-signoff{display:none}
/* Transaction analysis fits alongside the shared card header in one screen. */
.research-dashboard.analysis-activity .research-section-title{margin:10px 0 7px}
.research-dashboard.analysis-activity .research-metric{padding:10px 11px}
.analysis-activity .metric-value{margin:7px 0}
.analysis-activity .metric-value strong{font-size:23px;line-height:1.15}
.research-dashboard.analysis-activity .research-metric p{margin:6px 0 0;line-height:1.5;font-size:9px}
.research-dashboard.analysis-activity .research-rhythm{padding:11px 12px;margin:10px 0 12px}
.analysis-activity .research-tracks{margin:9px 0;height:19px}
.analysis-activity .research-tracks span{height:19px}
.research-dashboard.analysis-activity .research-rhythm>small{font-size:9px;line-height:1.5}
.analysis-activity .research-signoff{display:none}
/* Use available overview height instead of leaving a blank lower panel. */
.sheet-body:has(>.analysis-overview){display:flex;flex-direction:column}
.research-dashboard.analysis-overview{flex:1;display:flex;flex-direction:column;min-height:min-content;box-sizing:border-box}
.research-dashboard.analysis-overview .research-hero{flex:1;display:flex;flex-direction:column;padding:16px 12px}
.research-dashboard.analysis-overview .research-chart{flex:1;display:flex;align-items:center;min-height:130px;padding:8px 0}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(130px,25dvh,200px);width:100%}
.research-dashboard.analysis-overview .research-range{margin-top:8px;padding-top:12px}
.research-dashboard.analysis-overview .research-price{font-size:30px;margin:10px 0}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(120px,19dvh,150px)}
/* Two overview topics: price movement and position in the observed range. */
.research-dashboard.analysis-overview .research-hero{padding:12px;flex:1}
.research-dashboard.analysis-overview .research-chart{min-height:95px;padding:3px 0}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(95px,15dvh,120px)}
.research-dashboard.analysis-overview .research-price{margin:8px 0;font-size:29px}
.analysis-overview .research-position{margin-top:9px;padding:10px 12px;border:1px solid #44372f;border-radius:10px;background:#262222}
.research-position-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.research-position-head strong{font-size:12px;color:#edc89d;font-weight:500}
.research-position-head small{font-size:9px;color:#bba78d}
.research-dashboard.analysis-overview .research-position .research-range{border:0;margin:0;padding:0}
.research-position .research-range small{margin-bottom:4px;font-size:9px}
.research-position .research-range strong{font-size:12px}
.research-position-track{height:4px;border-radius:4px;background:linear-gradient(90deg,#736f62,#b4a084,#d6b174);margin:10px 4px 6px;position:relative}
.research-position-track span{position:absolute;top:50%;width:8px;height:8px;border:2px solid #f3d7aa;background:#262222;border-radius:50%;transform:translate(-50%,-50%)}
.research-position-note{display:block;font-size:9px;color:#c5ac90;line-height:1.4}
/* Actual sale counts grouped into eight price bands, low to high. */
.research-histogram{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;height:49px;margin:0 0 8px;border-bottom:1px solid #514238;padding:0 3px}
.research-histogram-column{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px}
.research-histogram-column small{font-size:8px;line-height:10px;color:#c5ac90}
.research-histogram-column>span{display:block;width:100%;max-width:28px;background:#8b7560;border-radius:3px 3px 0 0}
.research-histogram-column>span.peak{background:#e2b780}
.research-dashboard.analysis-overview .research-chart{min-height:80px}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(80px,12dvh,100px)}
.analysis-overview .research-position{padding:9px 12px}

/* Warm lightning accents for observed transaction activity. */
.activity-heat{display:flex;align-items:center;gap:5px;margin-top:7px;line-height:18px;color:#d5af78}
.activity-heat strong{font-size:10px;font-weight:600;white-space:nowrap}
.activity-heat small{font-size:8px;color:#a89986;margin-left:auto;white-space:nowrap}
.activity-bolt{display:inline-block;width:13px;height:20px;flex:0 0 13px;background:linear-gradient(150deg,#ffe7a2 5%,#ffc354 60%,#d28c3d);clip-path:polygon(53% 0,13% 53%,44% 53%,33% 100%,94% 36%,60% 36%,75% 0)}
.activity-heat.hot .activity-bolt{filter:drop-shadow(0 0 4px #e6a44055)}
.activity-heat.steady{color:#c4b397}.activity-heat.steady .activity-bolt{background:#bfa37a}
.activity-heat.cool{color:#a9b5c6}.activity-heat.cool .activity-bolt{background:#8c9cb2}
.activity-heat.unknown{color:#999}.activity-heat.unknown .activity-bolt{background:#777}
/* Keep both overview charts and the position marker inside the mobile sheet. */
.research-dashboard.analysis-overview{padding:9px 14px 10px}
.research-dashboard.analysis-overview .research-identity{margin-bottom:5px}
.research-dashboard.analysis-overview .research-identity .card-art{width:47px;height:66px;flex-basis:47px}
.research-dashboard.analysis-overview .research-tabs{margin:5px 0 7px}
.research-dashboard.analysis-overview .research-hero{padding:10px 12px}
.research-dashboard.analysis-overview .research-price{font-size:28px;margin:6px 0}
.research-dashboard.analysis-overview .research-range-tabs{margin:7px 0 3px}
.research-dashboard.analysis-overview .research-chart{min-height:72px;padding:0}
.research-dashboard.analysis-overview .research-chart svg{height:clamp(72px,10dvh,86px)}
.research-dashboard.analysis-overview .research-caption{margin:4px 0 0;font-size:8px;line-height:1.5}
.analysis-overview .research-position{margin-top:7px;padding:8px 12px}
.analysis-overview .research-position-head{margin-bottom:5px}
.analysis-overview .research-histogram{margin-bottom:5px}
.analysis-overview .research-position-track{margin-top:7px;margin-bottom:5px}
/* Shared geometry across analysis tabs: stable header, content and bottom edge. */
.sheet-body:has(>.analysis-screen){display:block;scrollbar-gutter:stable;padding:0}
.research-dashboard.analysis-screen{height:100%;min-height:600px;padding:12px 14px 16px;box-sizing:border-box;display:flex;flex-direction:column;gap:0}
.research-dashboard.analysis-screen .research-identity{height:76px;min-height:76px;flex:none;margin:0 0 8px;gap:12px}
.research-dashboard.analysis-screen .research-identity .card-art{width:54px;height:76px;flex-basis:54px}
.research-dashboard.analysis-screen .research-tabs{height:42px;min-height:42px;box-sizing:border-box;flex:none;margin:0 0 10px}
.analysis-screen .analysis-content{flex:1;min-height:0;display:grid;gap:8px}
.analysis-overview .analysis-content{flex:none;grid-template-rows:minmax(330px,auto) 158px;min-height:0}
.analysis-activity .analysis-content{grid-template-rows:18px minmax(110px,1fr) 104px 18px minmax(96px,1fr)}
.analysis-rarity .analysis-content{grid-template-rows:18px minmax(260px,1fr) 138px}
.analysis-monthly .analysis-content{display:block}
.research-dashboard.analysis-screen .analysis-content>.research-section-title{margin:0;align-self:center}
.research-dashboard.analysis-screen .analysis-content>.research-position,
.research-dashboard.analysis-screen .analysis-content>.research-rhythm,
.research-dashboard.analysis-screen .analysis-content>.research-grade-dist{margin:0;box-sizing:border-box}
.analysis-screen .analysis-content>.research-grid,.analysis-screen .analysis-content>.research-gauges{min-height:0;gap:8px}
.research-dashboard.analysis-screen .analysis-content .research-metric{display:flex;flex-direction:column;justify-content:center;padding:10px 11px;box-sizing:border-box}
.research-dashboard.analysis-screen .analysis-content .research-gauge{display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;padding:8px 6px}
.research-dashboard.analysis-screen .analysis-content>.research-hero{min-height:0;box-sizing:border-box;padding:10px 12px}
.research-dashboard.analysis-overview .analysis-content .research-chart{min-height:65px;flex:1}
.research-dashboard.analysis-overview .analysis-content .research-chart svg{height:85px}
.research-dashboard.analysis-overview .analysis-content .research-position{padding:8px 12px}
.research-dashboard.analysis-screen .analysis-content>.research-rhythm{display:flex;flex-direction:column;justify-content:center;padding:10px 12px}
.analysis-screen .analysis-content>.research-rhythm>strong{align-self:flex-end}
.research-dashboard.analysis-screen .analysis-content>.research-rhythm{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 19px auto;gap:7px;align-content:center}
.analysis-screen .analysis-content>.research-rhythm>strong{align-self:center}
.analysis-screen .analysis-content>.research-rhythm>.research-tracks{grid-column:1 / -1;width:100%;margin:0}
.analysis-screen .analysis-content>.research-rhythm>small{grid-column:1 / -1}
/* Preserve compact transaction tiles; use remaining room for weekly counts. */
.analysis-activity .analysis-content{grid-template-rows:18px minmax(108px,1fr) 80px 18px 84px minmax(116px,1fr);gap:5px}
.activity-weekly{padding:8px 11px;border:1px solid #44372f;border-radius:10px;background:#262222;display:flex;flex-direction:column;justify-content:center}
.activity-weekly-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.activity-weekly-head strong{font-size:11px;font-weight:500;color:#edc89d}
.activity-weekly-head small{font-size:8px;color:#bca88e}
.activity-week-bars{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.activity-week-item{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px}
.activity-week-item>strong{font-size:9px;line-height:10px;color:#edc89d;font-weight:500}
.activity-week-item>span{width:100%;max-width:45px;background:#8d7961;border-radius:3px 3px 0 0}
.activity-week-item:last-child>span{background:#e2b780}
.activity-week-item>small{font-size:8px;line-height:10px;color:#bca88e}

/* Give the price plot the full available canvas, without currency controls. */
.research-dashboard.analysis-overview .analysis-content>.research-hero{display:flex;flex-direction:column;padding:24px 12px 10px;gap:0}
.research-dashboard.analysis-overview .research-hero-top{min-height:12px;line-height:12px}
.research-dashboard.analysis-overview .research-price{font-size:30px;line-height:1.15;margin:8px 0 5px}
.research-dashboard.analysis-overview .research-change{padding:0;background:none;font-size:10px;line-height:15px;flex:none}
.research-dashboard.analysis-overview .research-range-tabs{margin:9px 0 10px;padding:0;flex:none}
.research-dashboard.analysis-overview .analysis-content .research-chart{position:relative;display:block;flex:1;min-height:115px;width:100%;padding:0;margin:0}
.research-dashboard.analysis-overview .analysis-content .research-chart svg{position:absolute;inset:0;width:100%;height:100%;max-height:none;display:block}
.research-dashboard.analysis-overview .research-caption{margin:6px 0 0;font-size:8px;line-height:12px;flex:none}

/* Prioritize weekly volume over empty space inside the price metrics. */
.analysis-activity .activity-weekly{padding:10px 12px}
.analysis-activity .activity-week-bars{flex:1;min-height:0;align-items:stretch;gap:16px}
.analysis-activity .activity-week-item{position:relative;min-height:0;padding-top:14px;padding-bottom:12px;justify-content:flex-end}
.analysis-activity .activity-week-item>span{min-height:2px;max-width:52px}
.analysis-activity .activity-week-item>strong{position:absolute;bottom:calc(14px + (100% - 26px) * var(--week-ratio));line-height:12px}
.analysis-activity .activity-week-item>small{position:absolute;bottom:0}

/* Compact shared identity; the card image belongs to the market overview. */
.research-dashboard.analysis-screen .research-identity{height:auto;min-height:36px;margin:0 0 10px;flex:none}
.research-dashboard.analysis-screen .research-identity>div:first-child{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;width:100%;min-width:0}
.research-dashboard.analysis-screen .research-identity h2{font-size:14px;line-height:1.4;margin:0;flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.research-dashboard.analysis-screen .research-identity p{font-size:9px;line-height:1.5;margin:0;flex:0 1 auto}
.research-dashboard.analysis-screen .research-identity .research-grade{font-size:8px;padding:4px 6px;white-space:nowrap;flex:none}
.research-dashboard.analysis-overview .analysis-content>.research-hero{position:relative}
.research-dashboard.analysis-overview .research-hero-top,
.research-dashboard.analysis-overview .research-price,
.research-dashboard.analysis-overview .research-change{padding-right:74px}
.research-dashboard.analysis-overview .analysis-price-art{position:absolute;top:12px;right:12px;width:58px;height:81px;border-radius:5px;overflow:hidden}
.research-dashboard.analysis-overview .research-range-tabs{margin-top:13px;margin-bottom:12px}
.analysis-screen .analysis-content{gap:10px}
.analysis-activity .analysis-content{grid-template-rows:18px minmax(108px,1fr) 86px 18px 84px minmax(116px,1fr);gap:8px}
.analysis-rarity .analysis-content{grid-template-rows:18px minmax(260px,1fr) 146px;gap:10px}
.research-dashboard.analysis-screen .analysis-content .research-gauge{padding:12px 8px}
.analysis-monthly .research-table th{padding-top:15px;padding-bottom:15px}
.analysis-monthly .research-table td{padding-top:19px;padding-bottom:19px}

/* Dedicated art column keeps image cropping independent of the hero layout. */
.analysis-price-summary{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:12px;align-items:center;flex:none;margin-bottom:12px}
.analysis-price-copy{min-width:0}
.analysis-art-slot{width:76px;height:106px;display:grid;place-items:center;align-self:start}
.research-dashboard.analysis-overview .analysis-art-slot .analysis-price-art{position:relative;inset:auto;width:76px;height:106px;margin:0;flex:none}
.research-dashboard.analysis-overview .research-hero-top,
.research-dashboard.analysis-overview .research-price,
.research-dashboard.analysis-overview .research-change{padding-right:0}
.research-dashboard.analysis-overview .research-range-tabs{margin:10px 0 0;gap:5px;flex-wrap:wrap}
.research-dashboard.analysis-overview .research-range-tabs button{padding:6px 9px;min-height:30px;font-size:10px}
.research-dashboard.analysis-screen .research-tabs{margin-bottom:16px}
.research-dashboard.analysis-screen .analysis-content>.research-section-title{min-height:22px;line-height:22px;align-self:stretch;margin:0}
.analysis-activity .analysis-content{grid-template-rows:22px minmax(116px,1fr) 86px 22px 98px minmax(116px,1fr);gap:10px}
.research-dashboard.analysis-activity .analysis-content .research-metric{min-height:0;padding:9px 10px}
.research-dashboard.analysis-activity .analysis-content .metric-value{margin:6px 0;line-height:27px}
.research-dashboard.analysis-activity .analysis-content .research-metric p{margin:0;font-size:9px;line-height:14px}
.analysis-rarity .analysis-content{grid-template-rows:22px minmax(260px,1fr) 146px;gap:10px}
.research-dashboard.analysis-monthly .analysis-content>.research-section-title{margin:0 0 10px}
/* Compact gold grade pill in the professional-analysis identity row. */
.research-dashboard.analysis-screen .research-identity .research-grade{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto;min-width:46px;max-width:max-content;min-height:22px;padding:3px 9px;border:1px solid #bd945e;border-radius:999px;background:#51402e;color:#f3d6aa;font-size:9px;font-weight:400;line-height:14px;white-space:nowrap}

/* Rounded two-tone lightning inspired by the reference. */
.activity-heat .activity-bolt{width:20px;height:27px;flex:0 0 20px;background:none;clip-path:none;overflow:visible;filter:drop-shadow(0 2px 4px #ffae3233)}
.activity-bolt svg{display:block;width:100%;height:100%;overflow:visible}
.activity-heat.hot .activity-bolt{filter:drop-shadow(0 1px 5px #ffaf4866)}
.activity-heat.steady .activity-bolt,.activity-heat.cool .activity-bolt,.activity-heat.unknown .activity-bolt{background:none}
.activity-heat.unknown .activity-bolt{opacity:.45;filter:none}

/* Keep each count and bar in the same normal-flow stack. */
.analysis-activity .activity-week-item{padding:0;display:flex;flex-direction:column;justify-content:flex-end;gap:3px}
.analysis-activity .activity-week-item>strong{position:static;bottom:auto;line-height:12px;flex:none}
.analysis-activity .activity-week-item>span{flex:none}
.analysis-activity .activity-week-item>small{position:static;bottom:auto;line-height:10px;flex:none}
/* Equal tab spacing and a clear separation before the page content. */
.research-dashboard.analysis-screen .research-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:4px;height:44px;min-height:44px;margin:0 0 20px}
.research-dashboard.analysis-screen .research-tabs button{min-width:0;width:100%;margin:0;padding:7px 2px;font-size:11px;line-height:20px;white-space:nowrap;border-radius:7px}
/* Align all identity fields to one shared row instead of independent text boxes. */
.research-dashboard.analysis-screen .research-identity>div:first-child{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;column-gap:9px;row-gap:5px}
.research-dashboard.analysis-screen .research-identity h2{margin:0;padding:0;line-height:24px;align-self:center}
.research-dashboard.analysis-screen .research-identity p{margin:0;padding:0;line-height:24px;align-self:center;white-space:nowrap}
.research-dashboard.analysis-screen .research-identity .research-grade{height:24px;min-height:24px;line-height:16px;margin:0;padding:3px 9px;align-self:center}
/* Larger overview artwork with a dedicated proportional column. */
.analysis-price-summary{grid-template-columns:minmax(0,1fr) clamp(112px,33vw,132px);gap:10px}
.analysis-art-slot{width:clamp(112px,33vw,132px);height:clamp(157px,46vw,184px)}
.research-dashboard.analysis-overview .analysis-art-slot .analysis-price-art{width:100%;height:100%}

/* Overview uses the compact chart-and-quote composition of the trend card. */
.research-dashboard.analysis-overview .analysis-compact-chart{display:grid;grid-template-columns:minmax(0,1fr) 76px;align-items:center;gap:7px;width:100%;padding:10px 8px;background:#2b2627;border:0;border-radius:12px;min-height:112px;margin:16px 0 0;color:#eb4973}
.research-dashboard.analysis-overview .analysis-compact-chart svg{position:static;display:block;width:100%;height:auto;min-width:0;overflow:visible}
.research-dashboard.analysis-overview .analysis-compact-chart .spark-price{display:block!important;text-align:right;min-width:0}
.analysis-compact-chart .spark-price strong{font-size:16px;line-height:20px}
.analysis-compact-chart .spark-price small{font-size:8px;line-height:12px;margin:2px 0}
.analysis-compact-chart .spark-price .spark-time{font-size:7px;white-space:nowrap}
.analysis-compact-chart .spark-badge{font-size:12px;padding:4px 7px;margin:4px 0 2px}
.analysis-compact-chart svg polyline{stroke:#ed4976;stroke-width:2.5}
.analysis-compact-chart svg polygon{fill:#ed4976;fill-opacity:.08}
.analysis-compact-chart svg circle{fill:#ed4976}
.analysis-compact-chart svg line{stroke:#55483e}
.analysis-compact-chart svg text{fill:#c5ac90}
.research-dashboard.analysis-overview .research-caption{margin-top:8px}

/* The illuminated area grows with the same 30-day activity count as the label. */
.activity-bolt .bolt-energy{clip-path:inset(var(--bolt-unlit,100%) 0 0 0);transition:clip-path .25s ease}
.activity-heat.cool .activity-bolt{filter:none}
.activity-heat.steady .activity-bolt{filter:drop-shadow(0 1px 3px #ffb63f33)}
.activity-heat.hot .activity-bolt{filter:drop-shadow(0 0 4px #ffc35c99) drop-shadow(0 0 8px #ffac3c44)}
/* Compact, balanced monthly table with stable numeric columns. */
.analysis-monthly .research-table{table-layout:fixed;width:100%}
.analysis-monthly .research-table th:nth-child(1){width:25%}
.analysis-monthly .research-table th:nth-child(2){width:35%}
.analysis-monthly .research-table th:nth-child(3){width:20%}
.analysis-monthly .research-table th:nth-child(4){width:20%}
.research-dashboard.analysis-monthly .research-table th{padding:10px 10px;font-size:9px;line-height:14px;vertical-align:middle}
.research-dashboard.analysis-monthly .research-table td{padding:12px 10px;line-height:18px;vertical-align:middle}
.analysis-monthly .research-table th:not(:first-child),.analysis-monthly .research-table td:not(:first-child){text-align:center}
.analysis-monthly .research-table td strong{font-size:12px;line-height:18px}
.analysis-monthly .research-table td small{font-size:9px;line-height:13px;margin-top:2px}

/* Population rings encode actual known proportions; missing values stay unfilled. */
.research-dashboard .research-ring.ring-measured{position:relative;border:0;transform:none;background:conic-gradient(#dfb779 0 var(--ring-fill),#443b32 var(--ring-fill) 100%)}
.research-dashboard .research-ring.ring-measured:before{content:'';position:absolute;inset:5px;border-radius:50%;background:#262222}
.research-dashboard .research-ring.ring-measured>div{position:relative;z-index:1;transform:none}
.research-dashboard .research-ring.ring-unknown{border:2px dashed #65594a;background:none;transform:none}
.research-dashboard .research-ring.ring-unknown>div{transform:none}
.research-dashboard .research-ring.ring-unknown strong{color:#b7a891}
/* Quiet charcoal report palette; reserve gold for selected controls and key values. */
.sheet-body:has(>.analysis-screen){background:#211e20!important}
.research-dashboard.analysis-screen{--analysis-bg:#211e20;--analysis-panel:#2b2628;--analysis-line:#443c3c;--analysis-text:#eee9e3;--analysis-muted:#aaa0a0;color:#eee9e3;background:#211e20}
.research-dashboard.analysis-screen .research-hero,
.research-dashboard.analysis-screen .research-position,
.research-dashboard.analysis-screen .research-metric,
.research-dashboard.analysis-screen .research-gauge,
.research-dashboard.analysis-screen .research-grade-dist,
.research-dashboard.analysis-screen .research-rhythm,
.research-dashboard.analysis-screen .activity-weekly{background:#2b2628;border-color:#443c3c}
.research-dashboard.analysis-screen .research-tabs{background:#302a2d;border-color:#473e41}
.research-dashboard.analysis-screen .research-tabs button:not(.active){color:#d0c8c8}
.research-dashboard.analysis-screen .research-identity h2,
.research-dashboard.analysis-screen .research-section-title h3,
.research-dashboard.analysis-screen .research-gauge h4,
.research-dashboard.analysis-screen .research-grade-dist h3,
.research-dashboard.analysis-screen .research-position-head strong,
.research-dashboard.analysis-screen .activity-weekly-head strong{color:#eee9e3}
.research-dashboard.analysis-screen .research-identity p,
.research-dashboard.analysis-screen .research-hero-top,
.research-dashboard.analysis-screen .metric-label,
.research-dashboard.analysis-screen .research-metric p,
.research-dashboard.analysis-screen .research-caption,
.research-dashboard.analysis-screen .research-gauge p,
.research-dashboard.analysis-screen .research-pending,
.research-dashboard.analysis-screen .research-grade-dist p,
.research-dashboard.analysis-screen .research-range small,
.research-dashboard.analysis-screen .research-position-note,
.research-dashboard.analysis-screen .research-section-title>small,
.research-dashboard.analysis-screen .research-rhythm>small,
.research-dashboard.analysis-screen .activity-weekly-head small,
.research-dashboard.analysis-screen .activity-week-item>small,
.research-dashboard.analysis-screen .research-position-head small{color:#aaa0a0}
.research-dashboard.analysis-screen .metric-value strong,
.research-dashboard.analysis-screen .research-range strong,
.research-dashboard.analysis-screen .research-ring strong,
.research-dashboard.analysis-screen .research-grade-labels strong{color:#eee9e3}
.research-dashboard.analysis-screen .metric-value>span,
.research-dashboard.analysis-screen .research-grade-labels small,
.research-dashboard.analysis-screen .research-ring small{color:#b3a8ab}
.research-dashboard.analysis-screen .research-ring.ring-measured:before{background:#2b2628}
.research-dashboard.analysis-screen .research-ring.ring-unknown{border-color:#62565d}
.research-dashboard.analysis-screen .analysis-compact-chart{background:#322b2e}
.research-dashboard.analysis-screen .analysis-compact-chart svg text{fill:#b9adb0}
.research-dashboard.analysis-screen .research-table{background:#2b2628;border-color:#443c3c}
.research-dashboard.analysis-screen .research-table th{background:#332c30;color:#bcb0b5}
.research-dashboard.analysis-screen .research-table td{border-color:#443c3c;color:#e4dfe1}
.research-dashboard.analysis-screen .research-table td small{color:#aaa0a0}
.research-dashboard.analysis-screen .research-range-tabs button:not(.active){background:#3f3745;border-color:#776b80;color:#e0d8e6}
.research-dashboard.analysis-screen .research-section-title>span{color:#9d8b99}
.research-dashboard.analysis-screen .research-tracks span.active{background:#b5a2a9}
.research-dashboard.analysis-screen .research-rhythm>strong{color:#d4c6cc}
.research-dashboard.analysis-screen .research-histogram-column>span:not(.peak),
.research-dashboard.analysis-screen .activity-week-item:not(:last-child)>span{background:#897b85}
.research-dashboard.analysis-screen .research-histogram-column small,
.research-dashboard.analysis-screen .activity-week-item>strong{color:#c6b8bf}
/* Recorded trading days retain their gold highlight. */
.research-dashboard.analysis-screen .research-tracks span.active{background:#d6aa74}

/* Background sampled from the supplied reference. */
.sheet-body:has(>.analysis-screen){background:#252121!important}
.research-dashboard.analysis-screen{--analysis-bg:#252121;background:#252121}

/* Separate outer background and inset surfaces from the user's two swatches. */
.sheet-body:has(>.analysis-screen){background:#1b191a!important}
.research-dashboard.analysis-screen{--analysis-bg:#1b191a;--analysis-panel:#252121;background:#1b191a}
.research-dashboard.analysis-screen .research-hero,
.research-dashboard.analysis-screen .research-position,
.research-dashboard.analysis-screen .research-metric,
.research-dashboard.analysis-screen .research-gauge,
.research-dashboard.analysis-screen .research-grade-dist,
.research-dashboard.analysis-screen .research-rhythm,
.research-dashboard.analysis-screen .activity-weekly,
.research-dashboard.analysis-screen .analysis-compact-chart,
.research-dashboard.analysis-screen .research-table,
.research-dashboard.analysis-screen .research-table th,
.research-dashboard.analysis-screen .research-tabs{background:#252121}
.research-dashboard.analysis-screen .research-ring.ring-measured:before{background:#252121}
/* Match the compact segmented controls used by the search filters. */
.research-dashboard.analysis-screen .research-tabs{height:38px;min-height:38px;padding:3px;gap:3px;border:1px solid #44372f;border-radius:9px;background:#2b2726;margin:0 0 16px}
.research-dashboard.analysis-screen .research-tabs button{height:30px;min-height:30px;padding:6px 4px;border:0;border-radius:6px;font-size:11px;font-weight:400;line-height:18px;box-shadow:none}
.research-dashboard.analysis-screen .research-tabs button:not(.active){color:#d8c2a8;background:transparent}
.research-dashboard.analysis-screen .research-tabs button.active{background:#e2b780;color:#30231b}
/* One shared horizontal gutter across all four analysis views. */
.sheet-body:has(>.analysis-screen){padding:0;scrollbar-gutter:stable both-edges;overflow-x:hidden}
.research-dashboard.analysis-screen{width:100%;max-width:100%;min-width:0;padding-left:12px;padding-right:12px;box-sizing:border-box}
.research-dashboard.analysis-screen>.research-identity,
.research-dashboard.analysis-screen>.research-tabs,
.research-dashboard.analysis-screen>.analysis-content{width:100%;min-width:0;max-width:100%;margin-left:0;margin-right:0;box-sizing:border-box}
.research-dashboard.analysis-screen .analysis-content>section,
.research-dashboard.analysis-screen .analysis-content>.research-grid,
.research-dashboard.analysis-screen .analysis-content>.research-gauges,
.research-dashboard.analysis-screen .analysis-content>.research-rhythm,
.research-dashboard.analysis-screen .analysis-content>.research-section-title,
.research-dashboard.analysis-screen .analysis-content>.research-table{width:100%;min-width:0;max-width:100%;box-sizing:border-box;margin-left:0;margin-right:0}

/* Preserve the preview sheet framing inside the LINE webview. */
.line-app .overlay:has(.analysis-screen){align-items:flex-end;justify-content:center;padding:clamp(48px,8dvh,72px) 0 max(16px,env(safe-area-inset-bottom));box-sizing:border-box}
.line-app .overlay:has(.analysis-screen)>.sheet{width:100%;max-width:393px;height:min(100%,calc(100vw * 1.84));max-height:100%;flex:0 0 auto;border-radius:21px;overflow:hidden;transform:none}
.research-dashboard.analysis-rarity .research-ring{width:82px;height:82px;min-height:82px;max-height:82px;flex:0 0 82px;aspect-ratio:1;margin:4px auto 11px}
.research-dashboard.analysis-rarity .research-ring.ring-measured{background:conic-gradient(#e2b780 0 var(--ring-fill),#4d443b var(--ring-fill) 100%)}
.research-dashboard.analysis-rarity .research-ring.ring-measured:before{inset:9px}
.research-dashboard.analysis-rarity .research-ring.ring-measured:after{content:'';position:absolute;inset:-11px;border-radius:50%;background:repeating-conic-gradient(#9c7750 0deg 2deg,transparent 2deg 16deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1px));opacity:.55}
.research-dashboard.analysis-rarity .research-ring strong{font-size:21px;line-height:1.05;letter-spacing:-.4px;white-space:nowrap;font-variant-numeric:tabular-nums}
.research-dashboard.analysis-rarity .research-ring.ring-long-value strong{font-size:17px;letter-spacing:-.4px}
.research-dashboard.analysis-rarity .research-pop-bar{height:12px;background:#383238}
.research-dashboard.analysis-rarity .research-pop-bar span+span{box-shadow:inset 2px 0 #252121}
.research-dashboard.analysis-rarity .research-grade-heading{display:flex;align-items:center;gap:5px;color:#b3a8ab}
.research-dashboard.analysis-rarity .research-grade-key{display:inline-block;flex:0 0 8px;width:8px;height:8px;border-radius:2px}
.research-dashboard.analysis-rarity .research-ring.ring-measured{background:none}
.research-dashboard.analysis-rarity .research-ring.ring-measured:before,
.research-dashboard.analysis-rarity .research-ring.ring-measured:after{display:none}
.research-dashboard.analysis-rarity .research-ring-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.research-dashboard.analysis-rarity .ring-track{fill:none;stroke:#77634b;stroke-width:7}
.research-dashboard.analysis-rarity .ring-progress{fill:none;stroke:#e2b780;stroke-width:7;stroke-linecap:round}
.research-dashboard.analysis-rarity .ring-dot{fill:#6b604a;opacity:.55}
.research-dashboard.analysis-rarity .ring-dot.active{fill:#e2b780;opacity:1}
.research-dashboard.analysis-rarity .research-ring>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}

.research-dashboard.analysis-rarity .ring-start-dot{fill:#fff3df;stroke:#d7a568;stroke-width:1.5}

/* Keep ring units readable without crowding the value. */
.research-dashboard.analysis-rarity .research-ring>div>small{font-size:12px;line-height:1.2}

/* Center the value and place its unit beside the lower-right of the ring. */
.research-dashboard.analysis-rarity .research-ring>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.research-dashboard.analysis-rarity .research-ring>div>small{position:absolute;right:-16px;bottom:0;font-size:12px;line-height:1.2}

.research-dashboard.analysis-rarity .research-ring strong{font-size:26px;line-height:1.1}
.research-dashboard.analysis-rarity .research-ring.ring-long-value strong{font-size:20px;letter-spacing:-.5px}

.research-dashboard.analysis-rarity .research-ring{position:relative}

.research-dashboard.analysis-rarity .research-ring>div>small{font-weight:700}

.research-dashboard.analysis-rarity .research-ring>div>small{font-weight:700;color:#eee6da}

/* Align each row's headings, rings and unit baselines even when notes differ. */
.research-dashboard.analysis-rarity .research-gauge{justify-content:flex-start!important;padding-top:16px}
.research-dashboard.analysis-rarity .research-ring.ring-unknown{border:0;outline:2px dashed #665e66;outline-offset:-2px}

/* Let analysis sections keep their readable height inside shorter LINE webviews. */
.research-dashboard.analysis-screen{height:auto;min-height:100%}
.analysis-activity .analysis-content,.analysis-rarity .analysis-content{flex:none;min-height:0}
.analysis-activity .analysis-content{grid-template-rows:auto auto auto auto auto auto}
.analysis-rarity .analysis-content{grid-template-rows:auto auto auto}
.analysis-activity .analysis-content>.research-grid{min-height:112px}
.analysis-activity .analysis-content>.research-rhythm{min-height:86px}
.analysis-activity .analysis-content>.activity-weekly{min-height:130px}
.research-dashboard.analysis-rarity .research-gauges{grid-auto-rows:minmax(158px,auto)}
.research-dashboard.analysis-rarity .research-gauge{min-height:158px}

/* Fill the LINE webview while retaining the original phone-width content proportions. */
.line-app .overlay:has(.analysis-screen){align-items:stretch;padding:0}
.line-app .overlay:has(.analysis-screen)>.sheet{width:100%;max-width:none;height:100%;max-height:none;flex:1 1 auto;border-radius:0}
.line-app .research-dashboard.analysis-screen{max-width:393px;margin:0 auto}

.dialog a.primary{display:block;width:100%;padding:14px;margin:14px 0 4px;text-align:center;text-decoration:none;font-weight:800}
