/* Compact catalogue: navigation, filters, then the collection. */
:root{--ink:#333936;--muted:#6e756e;--mint:#398a32;--line:#d7ddd4;--paper:#f5f5f0}
body{font-family:"Malgun Gothic",system-ui,sans-serif;font-size:13px;background:#f5f5f0;color:var(--ink)}
aside{position:static;width:auto;height:auto;display:grid;grid-template-columns:1fr auto;padding:0;background:#fff;border:0;border-top:4px solid #64af40;border-bottom:1px solid #cdd6c8;overflow:visible}
.brand{padding:17px 28px 15px;gap:9px;font-size:24px;letter-spacing:-1px;align-items:center}.brand-mark{width:29px;height:31px;background:#64a447;color:white;border-radius:3px;box-shadow:none;font-size:22px;font-weight:700}.brand-sub{margin:4px 0 0 14px;font-size:11px!important;letter-spacing:0!important;font-weight:400;color:#777!important}.local{grid-column:2;grid-row:1;align-self:center;margin:0 28px;padding:0;border:0;font-size:11px;color:#6a7664}.status-dot{background:#62a746}.local small{display:none}
nav{grid-column:1/-1;display:flex;gap:0;margin:0;padding:0 24px;border-top:1px solid #edf0e9;background:#fafbf7;overflow-x:auto}nav button{width:auto;flex-shrink:0;border-radius:0;border:0;border-bottom:3px solid transparent;padding:12px 19px!important;font-size:13px;font-weight:600;color:#656b60;justify-content:center}nav button:hover{background:#f0f4e9}nav button.active{background:#fff;color:#39822f;border-bottom-color:#5caa3b}.nav-icon,.nav-arrow{display:none}
main{margin:0 auto;padding:26px 28px 30px;max-width:1440px}header{align-items:center;flex-direction:row;gap:20px}h1{font-size:23px;margin:0 0 5px;letter-spacing:-1px;border-left:4px solid #68ac42;padding-left:10px;line-height:1.3}#page-description{font-size:12px;color:#72786e;padding-left:14px}.actions{gap:5px}.actions button,.actions .button{font-size:12px;padding:7px 10px;border-radius:3px}button,.button{border-radius:4px;padding:7px 11px;font-weight:500;transition:background .12s}button:active{transform:none}.primary,#suggest-deck{background:#5c9f3a;border-color:#4e8b30}.primary:hover,#suggest-deck:hover{background:#4a872d}:focus-visible{outline-color:#568a33}
#stats,body[data-view]:not([data-view=cards]):not([data-view=supports]) #stats{display:flex;flex-wrap:wrap;gap:0;margin:21px 0 0;background:#fff;border:1px solid #d8dfd1;border-radius:0;padding:9px 0}.stat{flex:0 1 auto;background:none;border:0;border-right:1px solid #e2e6dc;border-radius:0;padding:0 22px;display:flex;align-items:baseline;gap:10px;font-size:12px;color:#737b6b}.stat:last-child{border-right:0}.stat strong{display:inline;font-size:17px;margin:0;color:#437b32;letter-spacing:0}.stat strong small{font-size:11px;color:#7c8673}.stat:after{display:none!important}
.release-toolbar{border:1px solid #d8dfd1;border-top:0;background:#fbfcf8;margin:0;padding:9px 13px;gap:8px}.release-toolbar small{font-size:11px;color:#747c6d}.release-toolbar label{font-size:12px;color:#5b6555}.toolbar{gap:12px}#content>.toolbar:first-child{margin:0 0 18px;padding:13px;background:#fff;border:1px solid #d8dfd1;border-top:0}.toolbar label{color:#565f50;font-size:12px}input,select{border-radius:3px;padding:7px 9px;border-color:#c9d1c3;color:#333c2f}input[type=checkbox]{accent-color:#5b9c37;width:14px;height:14px}#search{max-width:370px;font-size:13px}#count{background:none;border-radius:0;font-size:12px;font-weight:600;color:#4c5845;padding:0}
.grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:11px}.card{border:1px solid #d4d9ce;border-radius:5px;box-shadow:none;transition:border-color .12s;background:#fff}.card:hover{transform:none;border-color:#8d9d7c;box-shadow:none}.card.owned{border-color:#80ac50;box-shadow:inset 0 0 0 1px #80ac50}.card.owned:after{content:'보유';top:6px;right:6px;border:0;border-radius:2px;background:#5e9635;font-size:10px;padding:1px 5px;line-height:1.6;box-shadow:0 1px 2px #0002}.card img,.card:nth-child(4n+2) img,.card:nth-child(4n+3) img,.card:nth-child(4n) img{height:145px;padding:5px 3px 0;object-fit:contain;background:#f2f3ee;border-bottom:1px solid #eceee7}.card.owned img{background:#f2f6e9}.card .body{padding:8px 9px 0}.badge{font-size:9px;color:#7d826f;margin-bottom:3px;letter-spacing:0}.card strong{font-size:12px;line-height:1.5;color:#333c2d;letter-spacing:-.4px}.card small{font-size:10px;min-height:30px;margin:3px 0 6px;color:#73776a}.card label{margin:0 -9px;padding:5px 8px;gap:5px;border-top:1px solid #e5e8df;background:#fafbf7;font-size:11px;color:#747e69}.card.owned label{background:#f1f6e8;color:#4a792e}
.panel{border-radius:4px;padding:20px;border-color:#d5dccd}.panel h2{font-size:17px;border-bottom:1px solid #e4e7dc;padding-bottom:10px}.panel p{color:#606a58}.panel small{color:#717b69}.node{border-radius:4px;border-color:#d4dccb;border-top:3px solid #84a75e;padding:16px}.node:first-child{background:#f2f6e9;border-color:#bed29d}.node strong{color:#527934}.node select{margin:10px 0}.deck-select label{border-radius:3px;background:#f4f6ee;color:#55753b}.recommend-card{border-radius:4px;border-color:#d9dfd0}.skill-item{padding:13px 0}.screens>div{border-radius:4px}.empty{border-radius:4px;color:#707969}.notice{color:#6c7664}.error,.panel p.error{color:#b44759}.ok,.panel p.ok{color:#4d842e}#toast{border-radius:4px;background:#475b37}footer{margin-top:24px}footer>p{color:#7e8575}
@media(min-width:1600px){.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.card img{height:155px}}
@media(max-width:900px){header{flex-direction:column;align-items:flex-start;gap:14px}.brand-sub{display:none!important}nav{padding:0 12px}nav button{padding:11px 15px!important}.stat{padding:0 13px;font-size:11px;gap:7px}main{padding:20px}.grid{grid-template-columns:repeat(auto-fill,minmax(125px,1fr))}}
@media(max-width:600px){.brand{padding:13px 14px;font-size:22px}.local{margin:0 14px;font-size:10px}.brand-mark{width:25px;height:28px;font-size:19px}nav{padding:0 6px}nav button{font-size:12px;padding:10px 12px!important}main{padding:18px 12px}h1{font-size:21px}.actions .button,.actions button{font-size:11px;padding:7px 9px}#stats{padding:5px 0;margin-top:16px}.stat{flex-basis:50%;padding:4px 10px;font-size:10px;justify-content:space-between}.stat:nth-child(2){border-right:0}.stat strong{font-size:15px}.release-toolbar{padding:8px 10px}.release-toolbar small{font-size:10px}#content>.toolbar:first-child{padding:10px;gap:9px;margin-bottom:12px}#search{flex-basis:100%;width:100%;max-width:none}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.card img,.card:nth-child(4n+2) img,.card:nth-child(4n+3) img,.card:nth-child(4n) img{height:110px}.card .body{padding:7px 6px 0}.card strong{font-size:11px}.card small{font-size:9px;min-height:28px}.card label{margin-inline:-6px;padding:5px 6px;font-size:10px}.badge{font-size:8px}.card.owned:after{font-size:9px;right:4px;top:4px}.panel{padding:14px}}

/* Original racecourse artwork; game-like chrome without a promotional banner. */
:root{--ink:#39344e;--mint:#458424;--line:#dad8e2;--paper:#f8f7fb}
body{background:#cbdfe1 url('data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201920%201080%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22sky%22%20x2%3D%220%25%22%20y2%3D%22100%25%22%3E%3Cstop%20stop-color%3D%22%2379b9e0%22%2F%3E%3Cstop%20offset%3D%22.65%22%20stop-color%3D%22%23d7eff5%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23f8f6dc%22%2F%3E%3C%2FlinearGradient%3E%3ClinearGradient%20id%3D%22grass%22%20x2%3D%220%25%22%20y2%3D%22100%25%22%3E%3Cstop%20stop-color%3D%22%239ac571%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23477b58%22%2F%3E%3C%2FlinearGradient%3E%3Cpattern%20id%3D%22lanes%22%20width%3D%221920%22%20height%3D%2236%22%20patternUnits%3D%22userSpaceOnUse%22%3E%3Cpath%20d%3D%22M0%2035H1920%22%20stroke%3D%22%23fff%22%20stroke-opacity%3D%22.48%22%20stroke-width%3D%222%22%2F%3E%3C%2Fpattern%3E%3C%2Fdefs%3E%3Cpath%20fill%3D%22url(%23sky)%22%20d%3D%22M0%200h1920v1080H0z%22%2F%3E%3Cg%20fill%3D%22%23fff%22%20opacity%3D%22.7%22%3E%3Cellipse%20cx%3D%22180%22%20cy%3D%22150%22%20rx%3D%22310%22%20ry%3D%2244%22%2F%3E%3Cellipse%20cx%3D%221630%22%20cy%3D%22240%22%20rx%3D%22360%22%20ry%3D%2255%22%2F%3E%3Cellipse%20cx%3D%221120%22%20cy%3D%2285%22%20rx%3D%22250%22%20ry%3D%2228%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M0%20620Q200%20490%20410%20570T800%20550T1230%20560T1640%20500T1920%20550V1080H0Z%22%20fill%3D%22%2390b6a0%22%2F%3E%3Cpath%20d%3D%22M0%20680Q480%20600%201000%20660T1920%20620V1080H0Z%22%20fill%3D%22url(%23grass)%22%2F%3E%3Cg%20fill%3D%22%23497657%22%20opacity%3D%22.8%22%3E%3Cpath%20d%3D%22M0%20520l70-90%2060%20110%2065-100%2060%20150%2065-80%2055%20110H0z%22%2F%3E%3Cpath%20d%3D%22M1550%20600l80-150%2065%20100%2080-200%2080%20160%2065-90v220z%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M-100%20970Q700%20620%202020%20750%22%20fill%3D%22none%22%20stroke%3D%22%23c2ae8b%22%20stroke-width%3D%22160%22%2F%3E%3Cpath%20d%3D%22M-100%20970Q700%20620%202020%20750%22%20fill%3D%22none%22%20stroke%3D%22%23eadbc2%22%20stroke-width%3D%224%22%2F%3E%3Cpath%20d%3D%22M-100%20935Q700%20585%202020%20715%22%20fill%3D%22none%22%20stroke%3D%22%23efe4d2%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20d%3D%22M-100%201005Q700%20655%202020%20785%22%20fill%3D%22none%22%20stroke%3D%22%23efe4d2%22%20stroke-width%3D%223%22%2F%3E%3Cpath%20d%3D%22M-100%20860Q700%20510%202020%20640%22%20fill%3D%22none%22%20stroke%3D%22%23fafcf7%22%20stroke-width%3D%2210%22%2F%3E%3Cg%20stroke%3D%22%23f8faf4%22%20stroke-width%3D%227%22%3E%3Cpath%20d%3D%22M70%20797v78m200-157v75m220-142v75m220-119v75m240-97v75m240-80v75m240-66v75m240-54v75%22%2F%3E%3C%2Fg%3E%3Cpath%20d%3D%22M-100%20851Q700%20501%202020%20631%22%20fill%3D%22none%22%20stroke%3D%22%2375a7a2%22%20stroke-width%3D%223%22%2F%3E%3C%2Fsvg%3E%0D%0A') center center/cover fixed no-repeat;color:var(--ink)}
body>aside{border-top:0;border-bottom:0;background:#fff;box-shadow:0 3px 12px #34334a24}
.brand{color:#fff;background:#514668;padding:12px max(24px,calc((100vw - 1320px)/2));padding-right:24px;font-size:25px;font-style:italic;letter-spacing:-1px;white-space:nowrap}.brand-mark{background:#93c934;color:#fff;border:2px solid #fff;border-radius:50%;width:31px;height:31px;font-style:normal;font-size:19px;box-shadow:2px 2px 0 #302944}.brand-sub{color:#e2dced!important;font-size:11px!important;font-style:normal}.local{background:#514668;color:#f0ecf5;margin:0;padding:0 28px;height:100%;display:flex;align-items:center;gap:5px}.status-dot{background:#b4de73}
nav{justify-content:center;padding:6px 16px;background:#fff;border:0;gap:5px}nav button{font-size:12px;min-height:46px;padding:8px 15px!important;border:1px solid #e2dfe8;border-bottom:3px solid #d5d1df;border-radius:5px;color:#565068;background:linear-gradient(#fff,#f5f3f8);gap:7px}nav button.active{color:#fff;background:linear-gradient(#87c945,#65a62c);border-color:#68a735;border-bottom-color:#42731f;text-shadow:0 1px #4d8125}nav button:hover{background:#e9f0e0;color:#3d6528}
main{max-width:1280px;margin:22px auto 36px;padding:20px 24px 24px;background:#faf9fdef;border:1px solid #fff;border-radius:5px;box-shadow:0 8px 24px #34495620;min-height:65vh}main>header{padding:0 0 14px;border-bottom:2px solid #625376}h1{border:0;padding:5px 18px 5px 12px;background:#5d5073;color:white;font-size:20px;display:inline-block;transform:skew(-7deg);border-right:5px solid #a7d65f;line-height:1.35;margin-bottom:6px}#page-description{padding-left:1px;color:#6e6579;font-size:11px}.actions button,.actions .button{background:linear-gradient(#fff,#f1eef5);border-color:#cbc6d4;border-bottom:2px solid #b2a9c0;color:#59506a;border-radius:5px;font-weight:600;font-size:11px}.actions .primary{background:linear-gradient(#8ecf48,#69aa2d);color:#fff;border-color:#77aa43;border-bottom-color:#477d24}.primary:hover,#suggest-deck:hover{background:#6daa32;color:white}button,.button{color:#50475d;border-color:#cfc9d8}button:hover,.button:hover{background:#eeebf4;border-color:#aca0be}
#stats{margin-top:12px;border-color:#ded9e6;padding:7px 0;background:#fff}.stat{font-size:11px;color:#776d83;padding:0 17px}.stat strong{color:#5e4c78;font-size:16px}.release-toolbar{background:#f2f0f6;border-color:#ded9e6;padding-block:7px}.release-toolbar label,.release-toolbar small,.toolbar label{color:#665b72}#content>.toolbar:first-child{border-color:#ded9e6;padding:10px 12px;margin-bottom:14px}input,select{border-color:#c9c2d2;color:#42394e;background:#fff}input[type=checkbox]{accent-color:#70a936}#count{color:#665279}#search{background:#fff}
.grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.card{border-color:#d4cedd;border-radius:5px;background:#fff;box-shadow:0 2px 0 #d8d3e3}.card img,.card:nth-child(4n+2) img,.card:nth-child(4n+3) img,.card:nth-child(4n) img{background-color:#f2eff7;background-image:linear-gradient(135deg,#fff8 25%,transparent 25%,transparent 75%,#fff8 75%),linear-gradient(135deg,#fff8 25%,transparent 25%,transparent 75%,#fff8 75%);background-size:22px 22px;background-position:0 0,11px 11px;border-bottom-color:#e2dcea;height:148px;padding-top:5px}.card.owned{border-color:#8bb84b;box-shadow:0 2px 0 #a0bd77}.card.owned:after{background:#78a839;border:1px solid #fff;border-radius:3px;content:'✓ 보유';padding:0 4px}.card.owned img{background-color:#f0f5e5}.card label{background:#f8f7fa;color:#72677e;border-top-color:#e8e2ed}.card.owned label{background:#f0f7e4;color:#507b2d}.card strong{color:#42344f}.card small{color:#776a83}.badge{color:#8d7e9c}.card:hover{border-color:#8d78a8;box-shadow:0 2px 0 #a493b9}
.panel{padding:16px 18px;margin:14px 0;border-color:#dcd5e5;border-radius:5px;background:#fff}.panel h2{color:#5a486d;border-bottom:1px solid #dcd4e6;font-size:16px;padding-bottom:7px;margin-bottom:10px}.panel p{font-size:12px;color:#655c6d;line-height:1.65}.panel details{margin:9px 0}.panel summary{color:#65517d;font-size:12px}.panel small{color:#786e82}.panel .panel{box-shadow:none;background:#faf9fc}.panel table{background:#fff}.node{border-color:#d9d0e3;border-top-color:#9f87b5}.node:first-child{background:#f5f0fa;border-color:#bdaaca}.node strong{color:#68527e}.lineage-diagram{background:#f8f6fb}.notice,footer>p{color:#81758c;font-size:10px}.notice{border-color:#ddd5e6}.error,.panel p.error{color:#b34261}.ok,.panel p.ok{color:#4e802e}#toast{background:#554268;color:white}
body[data-view]:not([data-view=cards]):not([data-view=supports]) #stats{display:none}body[data-view]:not([data-view=cards]):not([data-view=supports]) .release-toolbar{margin-top:12px;border-top:1px solid #ded9e6}.character-search-results{box-shadow:0 4px 12px #4b36511a}
@media(min-width:1500px){main{margin-top:28px}.grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}}
@media(max-width:1100px){nav{justify-content:flex-start}.brand{padding-left:20px}.brand-sub{display:none!important}main{margin:16px 18px;padding:18px}.local{padding-right:20px}}
@media(max-width:600px){body{background-attachment:scroll;background-size:auto 100vh}.brand{padding:12px;font-size:22px}.local{display:none}body>aside{grid-template-columns:1fr}nav{padding:5px 7px;gap:4px}nav button{padding:6px 10px!important;min-height:40px;font-size:11px}nav button:before{width:24px;height:24px;font-size:19px!important;line-height:20px!important}main{margin:10px 7px 20px;padding:12px 10px;border-radius:4px}h1{font-size:18px}main>header{gap:10px;padding-bottom:12px}.actions button,.actions .button{font-size:10px;padding:6px 8px}#stats{margin-top:10px}.stat{padding:3px 9px;font-size:10px}.stat strong{font-size:14px}.release-toolbar{padding:7px 9px}.release-toolbar label{font-size:10px}#content>.toolbar:first-child{padding:9px;margin-bottom:10px}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.card img,.card:nth-child(4n+2) img,.card:nth-child(4n+3) img,.card:nth-child(4n) img{height:105px}.panel{padding:12px;margin:10px 0}.panel h2{font-size:15px}footer{margin-top:18px}}

@media(min-width:1101px){main{width:calc(100% - 96px);max-width:1280px}}

/* Character portraits: opaque white backing and bottom aligned artwork. */
body img[src*="assets/cards/"]{background:#fff!important;object-fit:contain;object-position:center bottom;padding-bottom:0}

/* Distinct local vector emblems, one per workspace tab. */
nav button::before{display:none!important;content:none!important}
nav .nav-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:0 0 32px;border-radius:9px;background:#eef4e7;color:#4f773a;border:1px solid #d7e3cb;box-shadow:inset 0 1px #ffffffb3}
nav .nav-icon svg{width:22px;height:22px;display:block}
nav [data-tab=supports] .nav-icon{background:#eaf1fa;color:#4b719b;border-color:#d4e0ef}
nav [data-tab=planner] .nav-icon{background:#e5f2ec;color:#34775f;border-color:#cae2d6}
nav [data-tab=deck] .nav-icon{background:#f4eddf;color:#977137;border-color:#e8dcc4}
nav [data-tab=skills] .nav-icon{background:#fff3cf;color:#aa7c15;border-color:#efdfa8}
nav [data-tab=screens] .nav-icon{background:#e7f3f5;color:#41818c;border-color:#cce4e7}
nav [data-tab=receipts] .nav-icon{background:#f1eaf7;color:#80629b;border-color:#e0d5ed}
nav button.active .nav-icon{background:#ffffffed;color:#41692d;border-color:#ffffff90;box-shadow:0 1px 3px #31531e24}
@media(max-width:600px){nav .nav-icon{width:28px;height:28px;flex-basis:28px;border-radius:7px}nav .nav-icon svg{width:20px;height:20px}}
