@font-face{font-family:Manrope;src:url('./assets/manrope.ttf') format('truetype');font-weight:400 800;font-display:swap}
:root{--ground:#e9efed;--surface:#fffefa;--raised:#edf3f5;--text:#283d4b;--muted:#586c75;--accent:#426b92;--accent-ink:#315373;--accent-soft:#dfebf4;--positive:#3b6d55;--negative:#a74750;--control:#b7c8cd;--rule:#e7eeec;--gap:20px;--radius-card:28px;--font:Manrope,'Yuanti SC','PingFang SC','Microsoft YaHei',sans-serif;--display:'Yuanti SC',Manrope,'PingFang SC',sans-serif;--chart-1:#426b92;--grid:#e7eeec;--ink:#283d4b;--axis-ink:#586c75}
*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--text);font:14px/1.55 var(--font);font-variant-numeric:tabular-nums}button,input,select,textarea{font:inherit}button,a,input{touch-action:manipulation}button{border:0;cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button:disabled{cursor:not-allowed;background:#e4ebe8!important;color:#60736e!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.025em}h1{font-size:30px;line-height:1.3}h2{font-size:19px;line-height:1.4}h3{font-size:17px}small,.small{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.positive{color:var(--positive)}.negative{color:var(--negative)}.num{font-variant-numeric:tabular-nums}.inline-icon{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:16px;font-weight:700;background:var(--accent);color:#fff;line-height:1.4;transition:transform .16s ease-out,background .16s ease-out}.button:hover{background:#345a7f}.button:active{transform:translateY(2px)}.button.secondary{background:#e8eef1;color:#395566}.button.secondary:hover{background:#dbe6eb}.button.soft{background:#e4eee7;color:#375b4e}.button.soft:hover{background:#d5e5db}.button.accent{background:#46705e}.button.accent:hover{background:#375d4d}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;background:none;color:var(--muted);padding:4px 0}.text-button:hover{color:var(--accent-ink)}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:10px;background:#e8efed;color:#4e625b;font-size:12px;font-weight:600;line-height:20px;white-space:nowrap}.pill.blue{background:var(--accent-soft);color:var(--accent-ink)}.pill.good{background:#e1ecdf;color:#3c6545}.dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:currentColor;flex:none}
/* At 1440: 220 sidebar + 2x28 gutter + 1164 canvas. Main room and rail share a 20px gutter. */
.shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:100dvh}.sidebar{display:flex;flex-direction:column;padding:30px 18px 22px;gap:26px;position:sticky;top:0;height:100dvh}.brand{display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:18px;line-height:1.3;font-weight:700;letter-spacing:-.03em}.brand img{height:43px;width:43px;object-fit:contain;flex:none}.brand small{display:block;margin-top:3px;font:11px/1.3 var(--font);letter-spacing:0;color:var(--muted)}.workspace{padding:15px 14px;background:#dde7e2;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:8px}.workspace strong{font-size:13px}.workspace small{display:block;margin-top:4px}.workspace>svg{color:#547362}.nav{display:flex;flex-direction:column;gap:8px}.nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;color:#536b72;min-height:46px}.nav a:hover{background:#e1e9e6}.nav a.active{background:var(--surface);font-weight:700;color:#315373}.nav .inline-icon{width:19px;height:19px}.side-note{margin-top:auto;padding:16px 14px;background:#dce7eb;border-radius:20px}.side-note strong{font-family:var(--display);font-size:14px}.side-note p{font-size:12px;margin:8px 0;color:#516773}.side-note .text-button{font-size:12px}.side-account{display:flex;align-items:center;gap:10px;padding:0 6px}.side-account img{width:42px;height:42px;object-fit:contain;background:#dce6e1;border-radius:14px;padding-top:3px}.side-account strong{display:block;font-size:13px}.side-account small{font-size:11px}.main{width:100%;max-width:1680px;margin:0 auto;padding:24px 28px 28px;min-width:0}.mobile-head{display:none}.demo-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#566d73;font-size:12px;margin-bottom:20px}.demo-notice>span{display:flex;gap:8px;align-items:center}.demo-notice .text-button{font-size:12px}.demo-notice .dot{color:#749289}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head p{font-size:13px;color:var(--muted);margin-top:6px}.head-actions{display:flex;align-items:center;gap:10px;flex:none}.panel{background:var(--surface);border-radius:28px;padding:22px;min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-head p{font-size:12px;color:var(--muted);margin-top:4px}.panel-head .text-button{font-size:12px}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:20px;align-items:start}.room{padding:0;overflow:hidden}.room>.panel-head{padding:22px 22px 0;margin-bottom:16px}.room-status{display:flex;align-items:center;gap:10px;font-size:12px;flex:none}
.room-scene{background:#d1e4da url('./assets/art/office-room.png') center/100% 100% no-repeat;position:relative}.workstations{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:78px 18px 16px;align-items:start}.station{min-width:0;position:relative}.station-card{display:block;position:relative;background:transparent;width:100%;padding:0;text-align:center}.station-figure{display:block;height:124px;position:relative;transition:transform .18s ease-out}.station-figure img{width:100%;height:100%;object-fit:contain;display:block;object-position:center bottom}.station-card:hover .station-figure{transform:translateY(-4px)}.station-plinth{display:block;height:15px;margin:-1px 2px 0;border-radius:50%;background:#b5cabd}.station-label{display:block;background:#f8fbf5;padding:10px 5px 8px;border-radius:16px;margin:4px 0 0;min-height:89px}.card-identity{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px}.card-identity strong{font-size:14px;font-family:var(--display)}.card-rarity{font-size:11px;color:#526a67}.station-label>small{display:block;font-size:11px;margin-top:3px}.station-state{display:flex;gap:5px;align-items:center;justify-content:center;font-size:11px;color:#446a54;margin-top:6px}.station-bottom{display:flex;justify-content:space-between;align-items:center;gap:4px;padding:3px 8px 0;font-size:12px;color:#3e5f50}.station-bottom>.num{font-weight:700}.station-bottom .text-button{min-height:32px;font-size:11px;color:#3e5f50}.station-bottom svg{width:14px;height:14px}.queue{min-height:17px;font-size:11px;color:#3c5c4e;text-align:center}.station.empty .station-figure{display:grid;place-items:center}.empty-chair{display:grid;place-items:center;width:70px;height:80px;border-radius:22px;background:#d6e2d6;color:#73978a}.empty-chair svg{height:48px;width:48px;stroke-width:1.7}.station.empty .station-label{background:#e5eee2;color:#4f6c60}.station.empty .station-label>strong{font-size:13px;font-family:var(--display)}.station.empty .station-label>small{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:10px;color:#496354}.station.empty .station-label>small svg{width:14px;height:14px}.station.empty .station-bottom{color:#4e695c}.room-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 22px;font-size:12px;color:var(--muted)}.room-footer strong{color:var(--text)}.room-footer .text-button{font-size:12px;flex:none}.earnings{align-self:start;display:flex;flex-direction:column}.earnings .balance{font-size:31px;letter-spacing:-.045em;font-weight:700;margin-top:15px;white-space:nowrap;line-height:1.3}.balance .unit{font-size:12px;letter-spacing:0;margin-left:5px;color:var(--muted);font-weight:500}.balance-note{font-size:12px;color:var(--muted);margin-top:6px}.earnings .button{width:100%;margin:22px 0 12px}.keyvalue{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-top:14px}.keyvalue>span{color:var(--muted)}.keyvalue strong{font-weight:600;text-align:right}.earnings .foot{font-size:11px;color:var(--muted);line-height:1.8;margin-top:20px;padding-top:0}.collection-preview{grid-column:1}.mini-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mini-card{display:flex;gap:10px;align-items:center;background:#f0f3ee;border-radius:18px;padding:12px;min-width:0}.mini-card img{width:58px;height:65px;object-fit:contain;flex:none;align-self:flex-end}.mini-card strong{display:block;font-size:14px;font-family:var(--display)}.mini-card small{display:block;font-size:11px;line-height:1.6;margin-top:3px}.mini-card button{background:none;color:var(--accent-ink);padding:5px 0;font-size:12px;min-height:30px}.pack-preview{grid-column:2;grid-row:2;min-height:210px;display:flex;align-items:center;gap:8px;position:relative;overflow:hidden;background:#e0eaf0}.pack-preview>div{min-width:0;flex:1}.pack-preview h2{font-size:18px}.pack-preview p{font-size:12px;line-height:1.8;color:#4f6877;margin:8px 0 12px;max-width:150px}.pack-preview .button{font-size:12px;min-height:38px;padding:8px 12px;background:var(--surface)}.pack-preview .pack-prop{display:block;width:104px;height:130px;object-fit:contain;flex:none;transform:rotate(7deg)}.daily-panel{grid-column:1/-1}.state-caption{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.table{width:100%;border-collapse:collapse;table-layout:fixed}.table th{font-size:12px;color:var(--muted);font-weight:500;text-align:left;padding:0 8px 13px}.table td{font-size:13px;vertical-align:middle;padding:13px 8px;border-top:1px solid var(--rule)}.table th:first-child,.table td:first-child{padding-left:0}.table th:last-child,.table td:last-child{padding-right:0}.table .right{text-align:right}.identity-cell{display:flex;gap:12px;align-items:center;text-align:left}.identity-cell img{width:46px;height:50px;object-fit:contain;background:#edf2ef;border-radius:14px;padding:3px 3px 0;flex:none}.identity-cell small{display:block;font-size:11px;margin-top:2px}.inline-action{padding:10px 0 10px 10px;min-height:40px;background:none;font-size:12px;color:var(--accent-ink);font-weight:600}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-top:22px}.site-footer .text-button{font-size:11px}.full-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.collectible{background:var(--surface);padding:14px 16px 16px;border-radius:28px;min-width:0}.collectible .portrait-button{display:block;background:var(--tint);border-radius:20px;width:100%;padding:16px 16px 0;overflow:hidden}.collectible .portrait{display:block;width:100%;height:200px;object-fit:contain;object-position:center bottom;transition:transform .18s ease-out}.portrait-button:hover .portrait{transform:translateY(-4px)}.identity-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:16px}.identity-row strong{font-size:18px;font-family:var(--display)}.collectible>small{display:block;margin-top:5px;font-size:12px}.card-metrics{display:flex;justify-content:space-between;gap:12px;margin:16px 0;font-size:12px;color:var(--muted)}.card-metrics strong{display:block;font-size:16px;color:var(--text);font-weight:600;margin-top:4px}.card-action{width:100%;font-size:13px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{padding:10px 14px;background:#dce6e2;border-radius:14px;font-size:13px;min-height:40px;color:#486356}.filters button.selected{background:#4f705f;color:#fff}.search{min-height:44px;border:2px solid #c3d2cd;border-radius:14px;background:#f8fbf8;color:var(--text);padding:9px 13px;width:230px}.search::placeholder{color:#62766d}.empty-message{grid-column:1/-1;background:var(--surface);text-align:center;padding:30px 18px;border-radius:28px;color:var(--muted)}.market-layout,.ledger-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.market-list .table td{height:83px}.market-portrait{height:180px;background:#e6eeeb;border-radius:20px;padding:14px 12px 0;margin-bottom:18px}.market-portrait img{height:100%;width:100%;object-fit:contain;object-position:center bottom}.curve-figure{height:190px;margin-top:18px}.explanation{font-size:12px;line-height:1.9;color:var(--muted);margin-top:16px}.fund-split{display:flex;height:12px;gap:4px;overflow:hidden;border-radius:10px;margin:22px 0}.fund-split i:nth-child(1){width:60%;background:#426b92}.fund-split i:nth-child(2){width:20%;background:#9ab5c7}.fund-split i:nth-child(3){width:10%;background:#bfd0d9}.fund-split i:nth-child(4){width:10%;background:#e0e8eb}.feed{display:flex;flex-direction:column;gap:18px}.feed-item{display:grid;grid-template-columns:6px minmax(0,1fr) auto;align-items:start;gap:12px;font-size:12px}.feed-item>.dot{margin-top:7px;color:#83a092}.feed-item small{font-size:11px;white-space:nowrap}
dialog{width:660px;max-width:calc(100vw - 32px);max-height:90dvh;overflow:auto;border:0;padding:0;border-radius:28px;background:var(--surface);color:var(--text);box-shadow:0 22px 70px #233e4930}dialog::backdrop{background:#243d475c}.dialog-inner{padding:28px}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.dialog-header h2{font-size:22px}.close{height:40px;width:40px;border-radius:14px;background:#e8eeea;display:grid;place-items:center;flex:none}.dialog-subtitle{font-size:13px;color:var(--muted);margin:-7px 0 20px}.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.dialog-footer small{font-size:12px}.select-list{display:flex;flex-direction:column;gap:9px}.select-row{display:flex;align-items:center;gap:13px;padding:10px 14px;background:#ecf1ed;border-radius:18px;text-align:left;min-width:0}.select-row:hover{background:#dfe9e2}.select-row:disabled{opacity:.65}.select-row img{width:58px;height:64px;object-fit:contain;flex:none}.select-row .grow{flex:1}.select-row strong{display:block}.select-row small{display:block;font-size:12px;margin-top:3px}.select-row>.num{font-size:14px;font-weight:700}.detail-hero{display:flex;align-items:center;gap:26px;margin-bottom:22px}.detail-hero img{display:block;width:160px;height:180px;object-fit:contain;object-position:center bottom;background:var(--tint);padding:12px 10px 0;border-radius:22px;flex:none}.detail-hero p{font-size:13px;margin-top:9px;color:var(--muted)}.big-return{font-size:31px;font-weight:700;letter-spacing:-.035em}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-grid>div{padding:16px;background:#eaf0ec;border-radius:18px}.detail-grid small{display:block}.detail-grid strong{display:block;margin-top:5px;font-size:16px;font-weight:600}.notice-box{font-size:12px;line-height:1.9;background:#e4edf0;color:#415f6d;padding:14px 16px;border-radius:18px;margin-top:20px}.prompt-box{padding:18px;font-size:14px;line-height:1.9;margin-top:16px;background:#eaf0ec;border-radius:18px}.pack-dialog{text-align:center}.pack-large{width:100%;height:228px;background:#e5edf0;border-radius:22px;margin:8px auto 22px;padding:12px;display:flex;align-items:center;justify-content:center;gap:20px}.pack-large img{display:block;width:185px;height:200px;object-fit:contain}.pack-large span{font-family:var(--display);font-size:17px;font-weight:700;color:#3b6078;max-width:90px}.pack-dialog p{font-size:13px;color:var(--muted);line-height:1.9}.pack-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.pack-result article{background:#e9efea;border-radius:20px;padding:12px;text-align:center;min-width:0}.pack-result img{display:block;width:100%;height:136px;object-fit:contain;object-position:center bottom}.pack-result strong{display:block;font-family:var(--display);font-size:16px;margin:14px 0 7px}.pack-result .pill{background:var(--surface)}
.character-heading{align-items:center}.character-caption{font-size:13px;color:var(--muted);white-space:nowrap}.character-gallery{display:flex;flex-wrap:wrap;gap:20px}.character-sheet{flex:1 1 calc((100% - 60px)/4);min-width:210px;background:var(--surface);border-radius:28px;overflow:hidden}.character-art{display:block;width:100%;height:254px;background:var(--character-tint);padding:18px 12px 0;overflow:hidden}.character-art img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transition:transform .18s ease-out}.character-art:hover img{transform:translateY(-4px)}.character-info{padding:18px 20px}.character-name{display:flex;align-items:center;justify-content:space-between;gap:10px}.character-name h2{font-size:19px}.character-name a{display:grid;place-items:center;width:36px;height:36px;border-radius:14px;background:#e9efea;font-size:19px;color:var(--muted)}.character-handle{font-size:12px;overflow-wrap:anywhere;color:var(--muted);margin-top:4px}.character-title{font-size:15px;margin:14px 0 8px}.character-info .text-button{font-size:12px;min-height:38px;justify-content:flex-start;gap:10px}.character-note{background:#dce7e1;border-radius:28px;margin-top:24px;padding:24px}.character-note h2{margin-bottom:10px}.character-note p{font-size:13px;line-height:1.9;color:#496359;max-width:820px}.character-note p+p{margin-top:6px}.character-comparison{display:grid;grid-template-columns:minmax(0,1fr) 136px;gap:20px;align-items:center}.character-comparison figure{margin:0;min-width:0}.character-full{height:300px;padding:14px 8px 0;background:var(--character-tint);border-radius:22px}.character-full img{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom}.character-comparison figcaption{font-size:12px;color:var(--muted);margin-top:10px}.reference-figure img{display:block;width:100%;height:auto;border-radius:18px}.character-description{font-size:15px;line-height:1.9;margin-top:22px}.character-cues{font-size:12px;color:var(--muted);margin-top:8px}.character-binding{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0 0}.character-binding>div{padding:16px;border-radius:18px;background:#eaf0ec}.character-binding dt{font-size:12px;color:var(--muted)}.character-binding dd{font-size:15px;margin:5px 0 0}.character-binding+.dialog-footer a{white-space:normal;overflow-wrap:anywhere}#toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);z-index:10;pointer-events:none;opacity:0;background:#2b4848;color:#fff;padding:13px 20px;border-radius:18px;max-width:calc(100vw - 32px);font-size:13px;transition:opacity .15s ease-out}#toast.visible{opacity:1}
@media(min-width:1650px){.station-figure{height:160px}.workstations{padding-top:100px;gap:16px}.collectible .portrait{height:240px}.earnings .balance{font-size:35px}.character-art{height:290px}}
@media(max-width:1250px){.shell{grid-template-columns:192px minmax(0,1fr)}.sidebar{padding:26px 12px 20px}.brand{font-size:16px;gap:8px}.brand img{width:38px;height:38px}.main{padding:22px}.overview-grid{grid-template-columns:minmax(0,1fr) 260px;gap:16px}.panel{padding:20px}.room{padding:0}.room>.panel-head{padding:20px 20px 0}.room-status>span:first-child{display:none}.workstations{padding:73px 12px 14px;gap:8px}.station-figure{height:105px}.station-label{min-height:91px;padding:9px 4px}.card-identity strong{font-size:13px}.station-bottom{padding:3px 3px 0}.station-bottom>.num{font-size:11px}.station-bottom .text-button{font-size:11px}.station-bottom svg{display:none}.room-footer{padding:12px 20px;font-size:11px;gap:8px}.room-footer .text-button{font-size:11px}.earnings .balance{font-size:28px}.mini-card{gap:8px;padding:10px;flex-direction:column;align-items:flex-start}.mini-card img{width:56px;height:65px;align-self:center}.mini-card strong{font-size:13px}.pack-preview .pack-prop{width:90px;height:115px}.market-layout,.ledger-layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.character-sheet{flex-basis:calc((100% - 40px)/3)}.character-sheet:last-child{display:grid;grid-template-columns:1fr 1fr}.character-sheet:last-child .character-info{display:flex;flex-direction:column;justify-content:center}.character-sheet:last-child .character-art{height:230px}.full-cards{gap:16px}.collectible .portrait{height:180px}}
@media(max-width:1050px){.shell{display:block}.sidebar{display:none}.mobile-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px 0}.mobile-head .brand{font-size:18px}.mobile-head .brand img{height:42px;width:42px}.mobile-head .brand small{display:none}.mobile-nav{display:flex;flex-wrap:wrap;gap:4px}.mobile-nav a{min-height:40px;padding:9px 11px;border-radius:14px;color:var(--muted);font-size:12px}.mobile-nav a.active{background:var(--surface);color:var(--text);font-weight:700}.main{padding:22px 24px}.workstations{padding-top:85px}.station-figure{height:128px}.earnings .balance{font-size:30px}.mini-card{flex-direction:row;align-items:center}.mini-card img{align-self:flex-end}.head-actions .button{font-size:12px;padding:10px 14px}.page-head h1{font-size:28px}}
@media(max-width:820px){.overview-grid{grid-template-columns:minmax(0,1fr);gap:18px}.room{grid-column:1}.earnings{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.earnings .panel-head{grid-column:1/-1;margin-bottom:10px}.earnings .balance{font-size:33px;margin-top:0}.earnings .balance-note{margin-top:0}.earnings .button{grid-column:2;grid-row:2/4;margin:0;align-self:center}.earnings .keyvalue{margin-top:16px}.earnings .foot{grid-column:1/-1;padding-top:16px}.collection-preview,.pack-preview,.daily-panel{grid-column:1}.pack-preview{grid-row:auto;min-height:180px}.pack-preview p{max-width:320px}.pack-preview .pack-prop{width:145px;height:150px;transform:rotate(5deg)}.mini-cards{gap:12px}.mini-card{padding:12px}.workstations{padding-top:85px}.station-figure{height:120px}.market-layout,.ledger-layout{grid-template-columns:minmax(0,1fr)}.market-portrait{height:200px}.market-list .table th:nth-child(3),.market-list .table td:nth-child(3){display:none}.market-list .table th:first-child{width:38%!important}.market-list .table th:nth-child(2){width:24%!important}.market-list .table th:nth-child(4){width:25%!important}.daily-panel .table th:nth-child(3),.daily-panel .table td:nth-child(3){display:none}.daily-panel .table th:first-child{width:35%!important}.daily-panel .table th:nth-child(2){width:25%!important}.daily-panel .table th:nth-child(4){width:25%!important}.character-gallery{gap:16px}.character-sheet{flex-basis:calc((100% - 16px)/2);min-width:0}.character-art{height:250px}.character-sheet:last-child .character-art{height:240px}.character-caption{display:none}.full-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.collectible{padding:12px}.collectible .portrait{height:160px}.collectible .portrait-button{padding:12px 6px 0}.collectible .identity-row strong{font-size:17px}}
@media(max-width:600px){.mobile-head{align-items:flex-start;flex-wrap:wrap;gap:14px;padding:18px 16px 0}.mobile-head .brand{font-size:19px}.mobile-nav{width:100%;gap:3px;justify-content:space-between}.mobile-nav a{padding:9px 10px;font-size:12px}.main{padding:18px 16px 26px}.demo-notice{margin-bottom:18px}.demo-notice>span{font-size:11px;line-height:1.8}.demo-notice .text-button{display:none}.page-head{align-items:flex-start;gap:12px;margin-bottom:18px}.page-head h1{font-size:25px}.page-head p{font-size:12px;max-width:210px}.head-actions{gap:6px}.head-actions .button{font-size:12px;min-height:40px;padding:9px 12px}.head-actions>.secondary{display:none}.head-actions>.pill{font-size:11px;white-space:normal;max-width:136px}.panel{padding:20px;border-radius:24px}.panel-head{gap:10px;margin-bottom:16px}.panel-head h2{font-size:18px}.panel-head p{font-size:11px}.room{padding:0}.room>.panel-head{padding:20px 18px 0}.room-status .pill{font-size:11px;padding:4px 8px}.room-scene{background-size:auto 100%;background-position:center top}.workstations{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:75px 14px 16px}.station-figure{height:95px}.station:nth-child(n+4){margin-top:4px}.station:nth-child(4){grid-column:1}.station-label{min-height:82px;border-radius:14px;padding:8px 4px}.station-plinth{height:12px}.card-identity{gap:4px}.card-identity strong{font-size:13px}.card-rarity{font-size:11px}.station-state{font-size:11px}.station-bottom{padding:3px 5px 0}.station-bottom svg{display:block}.station-bottom .text-button{font-size:11px}.station.empty .station-label>strong{font-size:12px}.empty-chair{height:65px;width:65px;border-radius:20px}.empty-chair svg{height:40px;width:40px}.queue{font-size:11px;min-height:16px}.room-footer{padding:12px 18px;flex-wrap:wrap;gap:2px;font-size:11px}.room-footer .text-button{min-height:32px}.earnings{column-gap:14px}.earnings .balance{font-size:28px}.earnings .keyvalue{font-size:11px;gap:6px}.earnings .foot{font-size:11px}.earnings .button{font-size:12px;padding:10px}.mini-cards{grid-template-columns:minmax(0,1fr);gap:9px}.mini-card{padding:10px 13px;gap:15px}.mini-card img{width:52px;height:58px}.mini-card>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap;flex:1;min-width:0}.mini-card small{margin:0}.mini-card button{margin-left:auto;min-height:38px;font-size:11px}.mini-card strong{font-size:14px}.pack-preview{min-height:170px}.pack-preview p{max-width:200px}.pack-preview .pack-prop{height:135px;width:110px}.daily-panel .table th:nth-child(2),.daily-panel .table td:nth-child(2){display:none}.daily-panel .table th:first-child{width:48%!important}.daily-panel .table th:nth-child(4){width:30%!important}.table td,.table th{font-size:12px;padding-left:4px;padding-right:4px}.identity-cell{gap:8px}.identity-cell img{width:36px;height:40px;border-radius:12px}.identity-cell small{font-size:11px}.table .inline-action{font-size:11px}.state-caption{font-size:11px}.state-caption svg{display:none}.site-footer{align-items:flex-start;flex-direction:column;gap:5px;font-size:11px}.site-footer .text-button{min-height:28px}.full-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.collectible{padding:10px;border-radius:24px}.collectible .portrait{height:155px}.collectible .identity-row strong{font-size:16px}.collectible .identity-row .pill{padding:3px 7px;font-size:11px}.collectible>small{font-size:11px}.card-metrics{font-size:11px;gap:6px;margin:13px 0}.card-metrics strong{font-size:13px}.card-action{font-size:12px;min-height:40px;padding:9px 10px}.toolbar{flex-direction:column;align-items:stretch;gap:12px}.search{width:100%}.filters button{font-size:12px;min-height:40px;padding:9px 12px}.market-list .table th:nth-child(4),.market-list .table td:nth-child(4){display:none}.market-list .table th:first-child{width:48%!important}.market-list .table th:nth-child(2){width:28%!important}.market-portrait{height:170px}.ledger-history .table th:nth-child(2),.ledger-history .table td:nth-child(2){display:none}.feed-item{gap:9px}.feed-item small{font-size:11px}.dialog-inner{padding:22px 18px}.dialog-header h2{font-size:20px}.dialog-subtitle{font-size:12px}.dialog-footer{flex-wrap:wrap}.dialog-footer>.button{flex:1}.dialog-footer small{width:100%}.detail-hero{gap:17px}.detail-hero img{width:115px;height:145px;border-radius:18px}.detail-hero .big-return{font-size:27px}.detail-hero p{font-size:12px}.detail-grid>div{padding:14px}.detail-grid strong{font-size:15px}.select-row{gap:10px;padding:9px 10px}.select-row img{height:55px;width:50px}.select-row small{font-size:11px}.select-row strong{font-size:13px}.select-row>.num{font-size:12px}.pack-large{height:195px;gap:10px}.pack-large img{width:155px;height:175px}.pack-large span{font-size:15px;max-width:75px}.pack-result{gap:8px}.pack-result article{padding:9px;border-radius:18px}.pack-result img{height:100px}.pack-result strong{font-size:14px}.pack-result .pill{font-size:11px;padding:3px 8px}.prompt-box{font-size:13px;padding:16px}.character-gallery{gap:12px}.character-sheet{flex-basis:calc((100% - 12px)/2);border-radius:24px}.character-art{height:190px;padding:14px 8px 0}.character-info{padding:13px}.character-name{gap:6px}.character-name h2{font-size:16px}.character-name a{height:30px;width:30px;flex:none;border-radius:12px}.character-handle{font-size:11px}.character-title{font-size:13px;margin:10px 0 5px}.character-info .text-button{font-size:11px}.character-sheet:last-child .character-art{height:200px}.character-note{padding:20px;border-radius:24px}.character-note h2{font-size:18px}.character-note p{font-size:12px}.character-comparison{grid-template-columns:minmax(0,1fr) 88px;gap:12px}.character-full{height:235px}.character-description{font-size:14px}.character-binding{gap:10px}.character-binding>div{padding:14px}.character-binding dd{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-width:600px){.workstations{grid-template-columns:repeat(6,minmax(0,1fr))}.station{grid-column:span 2}.station:nth-child(4){grid-column:2/span 2}.station:nth-child(5){grid-column:4/span 2}}

@media(max-width:600px){.earnings .keyvalue{grid-column:1/-1;font-size:12px}.earnings .keyvalue strong{white-space:nowrap}.room-scene{background-size:auto 320px;background-color:#c5ddca}}

.card-source{font-size:11px;color:var(--muted);margin:0 0 12px}.wallet-binding{display:flex;flex-direction:column;gap:8px;padding:18px;background:#eaf0ec;border-radius:18px;margin-top:20px}.wallet-binding a{overflow-wrap:anywhere;color:var(--accent-ink);font-size:12px}.wallet-binding small{line-height:1.8}.big-return{overflow-wrap:anywhere}.station .card-identity strong{overflow-wrap:anywhere}.collectible .identity-row{flex-wrap:wrap}.collectible>small{overflow-wrap:anywhere}@media(max-width:600px){.daily-panel .table th:nth-child(2),.daily-panel .table td:nth-child(2){display:table-cell}.daily-panel .table th:nth-child(4),.daily-panel .table td:nth-child(4){display:none}.daily-panel .table th:first-child{width:45%!important}.daily-panel .table th:nth-child(2){width:38%!important}.daily-panel .table th:last-child{width:17%!important}.detail-hero .big-return{font-size:23px}.station .card-identity strong{font-size:12px}}

.full-cards.seven .collectible:last-child{grid-column:1/-1;display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:24px;align-items:center}.full-cards.seven .collectible:last-child .portrait-button{grid-column:1;grid-row:1/span 5;align-self:stretch}.full-cards.seven .collectible:last-child .portrait{height:100%;min-height:200px;max-height:250px}.full-cards.seven .collectible:last-child>.identity-row,.full-cards.seven .collectible:last-child>small,.full-cards.seven .collectible:last-child>.card-metrics,.full-cards.seven .collectible:last-child>.card-source,.full-cards.seven .collectible:last-child>.card-action{grid-column:2}.full-cards.seven .collectible:last-child .identity-row{margin-top:0}@media(max-width:600px){.full-cards.seven .collectible:last-child{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:14px}.full-cards.seven .collectible:last-child .card-metrics{flex-direction:column;gap:8px}.full-cards.seven .collectible:last-child .card-metrics>div{text-align:left!important}.full-cards.seven .collectible:last-child .portrait{min-height:200px}}
/* 打狗工作室：详情使用同一20px网格；(可用宽度-40)/3组成快照、月历、日报。 */
.daily-brief-panel{grid-column:1/-1}.brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.brief-preview{min-width:0}.brief-person{display:flex;align-items:center;gap:8px;background:none;width:100%;text-align:left;padding:0 0 10px}.brief-person img{width:40px;height:44px;object-fit:contain}.brief-person strong{font-size:14px}.brief-person>span{font-size:11px;color:var(--muted);margin-left:auto;max-width:115px;overflow:hidden;text-overflow:ellipsis}.brief-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--accent-ink);font-size:12px;margin-bottom:10px}.brief-label small{color:var(--muted);font-size:11px}.trader-brief h3{font-size:17px;margin-bottom:12px;line-height:1.5}.trader-brief p{font-size:14px;line-height:1.85;color:var(--text)}.trader-brief.compact{margin:12px 0;padding:14px 0 0;border-top:1px solid var(--rule)}.trader-brief.compact p{font-size:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.trader-brief.compact .text-button{font-size:12px;padding:10px 0 0}.brief-sources{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0}.brief-sources a{font-size:12px;color:var(--accent-ink)}.source-stamp{display:block;color:var(--muted);font-size:11px;line-height:1.8;margin-top:16px}.trader-page{min-width:0}.trader-topline{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:20px}.trader-topline .text-button{font-size:13px}.trader-profile{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}.trader-identity{display:flex;gap:20px;align-items:center;min-width:0}.trader-avatar{width:108px;height:120px;background:var(--tint);border-radius:24px;flex:none;overflow:hidden;padding:8px 6px 0}.trader-avatar img{width:100%;height:100%;object-fit:contain;object-position:center bottom}.trader-identity h1{font-size:30px;line-height:1.3;margin-bottom:7px}.trader-identity p{font-size:13px;color:var(--muted);margin:6px 0}.trader-identity a{font-size:13px;color:var(--accent-ink)}.trader-identity .wallet-id{font-size:12px;color:var(--muted)}.trader-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:16px}.period-switch{display:flex;background:#dde7e4;border-radius:13px;padding:4px;gap:3px}.period-switch button{min-height:36px;padding:8px 14px;background:none;border-radius:10px;font-size:13px;white-space:nowrap}.period-switch button[aria-pressed=true]{background:var(--surface);color:var(--text)}.trader-header-actions .text-button{font-size:12px}.trader-metrics{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;background:var(--surface);border-radius:24px;padding:22px 0}.trader-metrics>div{padding:0 22px;border-left:1px solid var(--rule);min-width:0;display:flex;flex-direction:column;justify-content:center;gap:9px}.trader-metrics>div:first-child{border-left:0}.trader-metrics small{font-size:12px;color:var(--muted)}.trader-metrics strong{font-size:22px;line-height:1.25;font-weight:600;overflow-wrap:anywhere}.trader-metrics .lead strong{font-size:30px}.trader-metrics span{font-size:11px;color:var(--muted);line-height:1.5}.trader-metrics i{font-style:normal;color:var(--muted);font-weight:400}.data-period{font-size:12px;color:var(--muted);margin:12px 0 20px}.trader-insights{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}.trader-insights .panel{padding:20px;min-width:0;border-radius:24px}.trader-insights .panel-head{margin-bottom:12px}.trader-insights h2{font-size:16px}.trader-insights .panel-head>span{font-size:11px;color:var(--muted)}.history-chart svg{width:100%;height:auto;display:block;min-height:135px}.chart-note{font-size:11px;line-height:1.8;color:var(--muted);margin-top:12px}.calendar-title{font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.calendar-title>span{font-weight:400;font-size:11px;color:var(--muted)}.pnl-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-week{text-align:center;font-size:11px;color:var(--muted);padding-bottom:4px}.calendar-day{display:flex;min-height:33px;flex-direction:column;align-items:center;justify-content:center;background:#f0f3ef;border-radius:5px;gap:2px}.calendar-day small{font-size:11px}.calendar-day span{font-size:11px;white-space:nowrap}.calendar-day.unknown{color:#73817c}.calendar-day.profit{background:#dcece1;color:#2c6044}.calendar-day.loss{background:#f3e2e0;color:#913f3a}.calendar-day.zero{color:var(--muted)}.transaction-panel{min-width:0}.transaction-panel .panel-head p{font-size:12px;line-height:1.8}.transaction-panel .panel-head>.text-button{font-size:12px;flex:none}.trade-tabs{display:flex;gap:20px;align-items:center;border-bottom:1px solid var(--rule);margin-bottom:15px}.trade-tabs button{background:none;padding:10px 0;font-size:13px;color:var(--muted);border-bottom:2px solid transparent;min-height:42px}.trade-tabs button[aria-pressed=true]{color:var(--text);border-bottom-color:var(--accent)}.trade-tabs>span{margin-left:auto;font-size:12px;color:var(--muted)}.transaction-scroll{max-width:100%;overflow-x:auto}.transaction-table{width:100%;border-collapse:collapse;table-layout:fixed}.transaction-table th:first-child{width:28%}.transaction-table th:nth-child(2){width:17%}.transaction-table th:nth-child(3){width:21%}.transaction-table th:nth-child(4){width:17%}.transaction-table th:nth-child(5){width:17%}.transaction-table th{font-size:12px;font-weight:400;text-align:left;color:var(--muted);padding:8px 10px 14px 0}.transaction-table td{font-size:13px;padding:14px 10px 14px 0;border-top:1px solid var(--rule);vertical-align:middle}.transaction-table .num{text-align:right;font-variant-numeric:tabular-nums}.transaction-table td strong{font-size:13px;font-weight:500}.transaction-table td small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.trade-token{display:flex;gap:10px;align-items:center;min-width:0}.trade-token>a{display:block;min-width:0}.trade-token strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trade-kind{flex:none;white-space:nowrap;font-size:11px;padding:5px 7px;border-radius:6px;background:#e6eaf0;color:#51627b}.trade-kind.buy{background:#deeee4;color:#32644a}.trade-kind.sell{background:#f4e3df;color:#924a3a}.transactions-empty{text-align:center!important;padding:40px 10px!important;color:var(--muted)}.load-trades{display:block;margin:16px auto 0;padding:10px 15px;border:1px solid var(--control);background:none;border-radius:10px;font-size:12px;min-height:40px}.trader-card-footer{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:20px;font-size:13px}.trader-card-footer>span{margin-right:auto}.trader-page+.trader-card-footer .button{min-height:40px;font-size:13px}
@media(max-width:1200px){.trader-insights{grid-template-columns:repeat(2,minmax(0,1fr))}.grok-daily{grid-column:1/-1}.grok-daily .trader-brief p{max-width:850px}.trader-metrics>div{padding:0 15px}.trader-metrics strong{font-size:19px}.trader-metrics .lead strong{font-size:26px}.trader-metrics span{font-size:11px}.trader-profile{gap:16px}.brief-grid{gap:16px}}
@media(max-width:700px){.trader-topline{margin-bottom:16px}.trader-topline>span{font-size:11px}.trader-profile{flex-wrap:wrap;margin-bottom:18px}.trader-identity{gap:14px}.trader-avatar{width:82px;height:96px;border-radius:20px}.trader-identity h1{font-size:25px}.trader-header-actions{width:100%;flex-direction:row;align-items:center;justify-content:space-between}.period-switch button{min-height:40px;padding:7px 12px}.trader-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 0;padding:20px 0}.trader-metrics>div:nth-child(3){border-left:0}.trader-metrics .lead strong{font-size:26px}.trader-metrics strong{font-size:20px}.trader-metrics>div{padding:0 16px;gap:8px}.trader-insights{grid-template-columns:minmax(0,1fr);gap:16px}.trader-insights .panel{padding:20px}.grok-daily{grid-column:auto}.trader-insights .history-chart svg{max-height:190px}.calendar-day{min-height:40px}.calendar-day small,.calendar-day span{font-size:11px}.brief-grid{grid-template-columns:minmax(0,1fr);gap:18px}.brief-preview+.brief-preview{padding-top:16px;border-top:1px solid var(--rule)}.transaction-table{min-width:620px}.transaction-panel .panel-head{align-items:flex-start}.trade-tabs{gap:18px}.trade-tabs>span{font-size:11px}.trader-card-footer{flex-wrap:wrap;gap:12px}.trader-card-footer>span{width:100%;margin:0}.daily-brief-panel .panel-head .text-button{font-size:12px}.collectible .trader-brief.compact p{font-size:12px}}

/* Rarity is a card property; color, rank and stars carry the same meaning everywhere. */
[data-rarity="0"]{--rarity:#667b85;--rarity-ink:#425760;--rarity-tint:#edf1f2;--rarity-border:#a8b7be}
[data-rarity="1"]{--rarity:#226abb;--rarity-ink:#155091;--rarity-tint:#e7f1ff;--rarity-border:#4a8fdc}
[data-rarity="2"]{--rarity:#8b42b3;--rarity-ink:#70318f;--rarity-tint:#f3eafb;--rarity-border:#a56ac7}
[data-rarity="3"]{--rarity:#a5680d;--rarity-ink:#815009;--rarity-tint:#fff3cc;--rarity-border:#dba62c}
.rarity-badge{display:inline-flex;align-items:center;gap:7px;flex:none;vertical-align:middle;color:var(--rarity-ink);background:var(--rarity-tint);border-radius:8px;padding:3px 8px 3px 3px;font-size:12px;font-weight:800;line-height:1.5;white-space:nowrap}
.rarity-badge>b{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 4px;border-radius:5px;color:#fff;background:var(--rarity);font:800 11px/1 var(--font);letter-spacing:0}
.rarity-badge>span{display:inline}
.rarity-stars{display:inline-flex;gap:4px;align-items:center;justify-content:center;color:var(--rarity)}
.rarity-stars svg{width:15px;height:15px;fill:currentColor;stroke:none}
.rarity-share{font-size:12px;color:var(--rarity-ink);font-weight:700;font-variant-numeric:tabular-nums}
.rarity-legend{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px;margin:0 0 22px;font-size:12px;color:var(--muted)}
.rarity-legend>span{display:inline-flex;align-items:center;gap:7px}
.rarity-legend>span:first-child{font-weight:600}
.rarity-legend small{font-size:12px;white-space:nowrap}
.pack-dialog .rarity-legend{justify-content:center;margin:20px 0}
.pack-result .reveal-card{border:3px solid var(--rarity-border);background:var(--rarity-tint);padding:12px 9px 16px;border-radius:21px;position:relative}
.pack-result .reveal-card[data-rarity="2"],.pack-result .reveal-card[data-rarity="3"]{border-style:double;border-width:5px;padding:10px 7px 14px}
.pack-result .reveal-card>.rarity-badge{display:flex;width:max-content;margin:0 auto 10px;padding-right:9px;background:#fff}
.pack-result .reveal-card>img{height:140px}
.pack-result .reveal-card>strong{margin:13px 0 8px;font-size:17px}
.pack-result .rarity-stars{display:flex;min-height:18px}
.pack-result .rarity-share{display:block;margin-top:9px;font-size:11px}
.collectible[data-rarity]{border:3px solid var(--rarity-border);padding:11px 13px 13px}
.collectible .portrait-button{position:relative;background:var(--rarity-tint);padding-top:40px}
.collectible .portrait-button>.rarity-badge{position:absolute;top:10px;left:10px;background:#fff}
.collectible .portrait-button>.rarity-stars{position:absolute;bottom:9px;right:10px;padding:5px 7px;border-radius:9px;background:#fffffff0}
.collectible[data-rarity="2"],.collectible[data-rarity="3"]{border-style:double;border-width:5px;padding:9px 11px 11px}
.station[data-rarity] .station-label{border-top:4px solid var(--rarity);padding-top:7px;background:var(--rarity-tint)}
.station[data-rarity] .station-plinth{background:var(--rarity-border)}
.station .card-identity{flex-direction:column;gap:4px}
.station .rarity-badge{font-size:11px;gap:4px;padding:2px 5px 2px 2px;background:#fff}
.station .rarity-badge>b{font-size:10px;min-width:19px;min-height:18px;border-radius:4px}
.mini-card[data-rarity]{border-left:4px solid var(--rarity-border);background:var(--rarity-tint)}
.mini-card .rarity-badge{margin-top:5px;font-size:11px;gap:4px;padding:2px 5px 2px 2px}
.mini-card .rarity-badge>b{min-width:20px;min-height:20px;font-size:10px}
.select-row[data-rarity]{border-left:4px solid var(--rarity-border);background:var(--rarity-tint)}
.select-row .rarity-badge{margin-top:5px;font-size:11px}
.owned-card-grade{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
@media(max-width:700px){
  .rarity-legend{gap:10px 14px}.rarity-legend>span:first-child{width:100%}
  .pack-result{gap:9px}.pack-result .reveal-card{padding:9px 5px 12px;border-radius:15px}
  .pack-result .reveal-card[data-rarity="2"],.pack-result .reveal-card[data-rarity="3"]{padding:7px 3px 10px}
  .pack-result .reveal-card>img{height:104px}.pack-result .reveal-card>strong{font-size:14px}
  .pack-result .reveal-card>.rarity-badge{font-size:12px;gap:5px;padding-right:6px}
  .pack-result .rarity-share{line-height:1.65;font-size:11px}
  .pack-result .rarity-stars svg{width:13px;height:13px}
  .collectible .portrait-button{padding-top:42px}.collectible .identity-row{flex-wrap:wrap}
}
