:root{--ink:#ebe5d8;--muted:#9e9789;--line:#39342b;--panel:#181611;--deep:#0d0c09;--gold:#c99345;--red:#8d2922;--felt:#173a2d}*{box-sizing:border-box}body{margin:0;background:var(--deep);color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:16px;min-height:100vh}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#12100d;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:42px;height:48px;background:var(--red);color:#f6d08d;font-family:Georgia,serif;font-weight:800;clip-path:polygon(50% 0,100% 17%,88% 87%,50% 100%,12% 87%,0 17%)}.brand strong,.brand small{display:block}.brand strong{font-family:Georgia,serif;font-size:1.08rem}.brand small{color:var(--gold);letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;margin-top:2px}.top-actions{display:flex;align-items:center;gap:10px}.top-actions>span{color:var(--muted);font-size:.8rem;margin-right:8px}.button,.mini-button,.icon-button{border:1px solid var(--line);color:var(--ink);background:#242019;border-radius:6px;padding:10px 15px;font-weight:750;cursor:pointer}.button:hover,.mini-button:hover,.icon-button:hover{filter:brightness(1.18)}.gold{background:var(--gold);border-color:var(--gold);color:#171109}.red{background:var(--red);border-color:#ad3930}.ghost{background:transparent}.app-shell{display:grid;grid-template-columns:230px minmax(520px,1fr) 285px;gap:14px;padding:14px;min-height:calc(100vh - 74px)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:9px}.library,.settings{padding:18px}.panel-title,.editor-head,.canvas-toolbar{display:flex;align-items:center;justify-content:space-between}.panel small,.editor small,.canvas-toolbar small,.dialog-card>small,.save-card>small{font-size:.68rem;letter-spacing:.14em;color:var(--gold);font-weight:800}.panel h2,.editor h1,.canvas-toolbar h2{font-family:Georgia,serif;margin:4px 0 0}.panel h2,.canvas-toolbar h2{font-size:1.2rem}.editor h1{font-size:1.35rem}.count{display:grid;place-items:center;background:#2b261d;color:var(--gold);border-radius:99px;min-width:27px;height:27px}.deck-list{margin-top:18px;display:grid;gap:8px}.deck-item{border:1px solid var(--line);border-radius:6px;padding:10px;cursor:pointer;background:#211e18}.deck-item.active{border-color:var(--gold)}.deck-item b,.deck-item small{display:block}.deck-item small{color:var(--muted);margin-top:4px;letter-spacing:0}.library-empty{text-align:center;color:var(--muted);margin-top:70px}.library-empty span{font-size:2rem;color:#665b49}.workspace{min-width:0;display:grid;grid-template-rows:auto 1fr;gap:14px}.editor{padding:18px}.editor-head{margin-bottom:12px}textarea,input,select{font:inherit;color:var(--ink);background:#0f0e0b;border:1px solid var(--line);border-radius:5px}textarea{width:100%;min-height:126px;resize:vertical;padding:12px 14px;line-height:1.48;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#ddd3c2}.input-foot,.canvas-note{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.78rem;margin-top:9px}.input-foot b{color:var(--ink)}.canvas-panel{padding:14px;display:flex;flex-direction:column;min-height:510px}.canvas-toolbar{padding:2px 4px 12px}.view-actions{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.78rem}.icon-button{padding:5px 10px}.deck-canvas{position:relative;min-height:420px;flex:1;border:1px solid #4d463a;border-radius:6px;overflow:auto;padding:22px;background-color:var(--felt);background-image:radial-gradient(#ffffff0b 1px,transparent 1px);background-size:5px 5px}.deck-canvas.black{background:#0b0b0b}.deck-canvas.wood{background:repeating-linear-gradient(93deg,#26170e 0,#321e12 80px,#20130c 82px,#2c1a10 160px)}.empty-canvas{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#cad4ca}.empty-canvas .orb{margin:auto;border:1px solid #ffffff38;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;font-size:1.9rem}.empty-canvas h3{font-family:Georgia,serif;margin:14px 0 3px}.empty-canvas p{margin:0;color:#aab6ad}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--card-width,105px),1fr));gap:9px;align-items:start;padding-bottom:100px}.card-tile{position:relative;border:0;padding:0;background:none;cursor:pointer}.card-tile img{display:block;width:100%;aspect-ratio:488/680;object-fit:cover;border-radius:5.5% / 4%;box-shadow:0 4px 12px #000b}.card-tile .fallback{aspect-ratio:488/680;border:5px solid #16130f;background:#d7c8a8;color:#16130f;border-radius:6px;display:grid;place-content:center;padding:8px;text-align:center;font-family:Georgia,serif}.card-tile em{position:absolute;right:4px;top:4px;background:var(--red);color:white;font-size:.63rem;padding:3px 5px;border-radius:3px;font-style:normal}.watermark{position:absolute;right:18px;bottom:15px;display:flex;align-items:flex-end;gap:8px;pointer-events:none;filter:drop-shadow(0 3px 5px #000a)}.watermark img{width:86px;max-height:106px;object-fit:contain}.watermark span{font-family:Georgia,serif;font-size:1.15rem;color:#f1ca81;text-shadow:0 2px 4px #000}.canvas-note{align-items:center}.settings{display:flex;flex-direction:column;gap:15px}.settings label,.save-card label{display:grid;gap:7px;color:var(--muted);font-size:.8rem;font-weight:700}.settings input,.settings select,.save-card input{width:100%;padding:10px}.upload-box,.status-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:6px;padding:10px}.upload-box img{width:44px;height:52px;object-fit:contain}.upload-box div,.status-card div{min-width:0;flex:1}.upload-box b,.upload-box small,.status-card b,.status-card small{display:block}.upload-box small,.status-card small{color:var(--muted);font-size:.68rem;line-height:1.35;margin-top:3px}.mini-button{font-size:.7rem;padding:6px 8px}.status-card{margin-top:auto}.status-dot{width:8px;height:8px;border-radius:50%;background:#56a66e;box-shadow:0 0 0 4px #56a66e1d}dialog{background:transparent;border:0;padding:0;color:var(--ink)}dialog::backdrop{background:#000b}.dialog-card,.save-card{position:relative;background:#1b1813;border:1px solid #514a3c;border-radius:10px;padding:24px;width:min(440px,calc(100vw - 30px));box-shadow:0 25px 80px #000}.dialog-card h2,.save-card h2{font-family:Georgia,serif;margin:4px 0 15px}.dialog-card>img{display:block;width:210px;max-height:295px;object-fit:contain;margin:0 auto 18px;border-radius:8px}.close{position:absolute;right:12px;top:10px;border:0;background:none;color:var(--muted);font-size:1.7rem;cursor:pointer}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.file-button{display:inline-block}.save-card p{color:var(--muted);line-height:1.5}.save-card label{margin:16px 0}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,30px);opacity:0;background:#eee5d4;color:#17130e;padding:11px 16px;border-radius:6px;font-weight:750;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1050px){.app-shell{grid-template-columns:190px 1fr}.settings{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.settings .panel-title,.settings .status-card{grid-column:1/-1}.status-card{margin-top:0}}@media(max-width:760px){.topbar{padding:0 12px}.brand strong{font-size:.9rem}.top-actions>span,.top-actions .ghost{display:none}.app-shell{display:flex;flex-direction:column;padding:9px}.library{order:3}.settings{order:2;display:flex}.workspace{order:1}.editor-head{align-items:flex-start;gap:10px}.red{padding:9px;font-size:.75rem}.deck-canvas{min-height:430px;padding:10px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:5px}.watermark img{width:62px}.canvas-note span{display:none}}
/* Hidden sections must stay hidden even when their normal layout uses display:grid. */
[hidden]{display:none!important}
.embedded-mode .topbar{height:auto;min-height:60px;padding:10px 14px;position:relative;flex-wrap:wrap}.embedded-mode .topbar .brand,.embedded-mode #gameRoomButton{display:none}.embedded-mode .top-actions{width:100%;flex-wrap:wrap}.embedded-mode .top-actions #saveState{margin-right:auto}.embedded-mode #newDeck{display:inline-flex}
.embedded-mode .app-shell{min-height:100vh}

.builder-file-actions{display:flex;flex-wrap:wrap;gap:10px;padding:16px 0;position:sticky;top:0;background:#10211a;z-index:3}.builder-file-actions .button{font-size:1rem;min-height:44px}@media(max-width:600px){.builder-file-actions .button{flex:1 1 100%}}

.builder-shortcuts .button{background:#f04444;color:#000;border:1px solid #f04444;font-weight:700}.builder-shortcuts .button:hover{background:#ff6666;color:#000;border-color:#ff6666}.builder-shortcuts .button:focus-visible{outline:3px solid #fff;outline-offset:3px}



.deck-format-panel{padding:16px;border:1px solid #59694a;border-radius:10px;background:#14251b;margin:12px 0 18px}.deck-format-fields{display:flex;flex-wrap:wrap;align-items:end;gap:16px}.deck-format-fields label{display:grid;gap:6px;min-width:200px;font-weight:700}.deck-format-fields select{width:100%;min-height:44px;background:#07150e;color:#fff;padding:8px;border:1px solid #728062;border-radius:6px}.deck-format-fields a{color:#f4d58b;font-size:.875rem;padding-bottom:10px}.deck-format-panel p,.format-verdict{font-size:.875rem;line-height:1.5}.format-verdict{padding:12px;border-left:3px solid #b4bc88;background:#0c1b12}.format-verdict.has-errors{border-color:#f04444}.format-verdict ul{margin:8px 0;padding-left:22px}.deck-format-fields [hidden],.builder-shortcuts .button[hidden]{display:none!important}@media(max-width:600px){.deck-format-fields label{min-width:0;width:100%}}

.format-card-overview{margin:14px 0;border-top:1px solid #536347;padding-top:12px}.format-card-overview summary{cursor:pointer;font-size:1rem;font-weight:700;color:#f4d58b}.format-card-overview[hidden]{display:none!important}.format-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;max-height:460px;overflow:auto;padding:4px 8px 8px 0;scrollbar-color:#728062 #0c1b12}.format-point-heading{grid-column:1/-1;margin:8px 0 0;color:#f4d58b;font-size:1.125rem}.format-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;background:#09170f;border:1px solid #536347;border-radius:7px;padding:8px;color:#fff;cursor:pointer}.format-card:hover{border-color:#f4d58b;background:#1e3020}.format-card:focus-visible{outline:3px solid #f4d58b;outline-offset:2px}.format-card img{width:100%;max-width:146px;height:auto;aspect-ratio:146/204;object-fit:contain;border-radius:5px}.format-card-name{font-size:.875rem;line-height:1.3;text-align:center;overflow-wrap:anywhere}.format-card-badge{font-size:.875rem;font-weight:700;border-radius:4px;background:#f04444;color:#000;padding:3px 7px;margin-top:auto}@media(max-width:600px){.format-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:420px}}

.format-color-heading{padding:8px 12px;border-left:5px solid #b8b8b8;background:#0c1b12;color:#fff}.format-color-heading.color-white{border-color:#fff3cf}.format-color-heading.color-blue{border-color:#64adff}.format-color-heading.color-black{border-color:#b294ca}.format-color-heading.color-red{border-color:#ff6b62}.format-color-heading.color-green{border-color:#6fcb83}.format-color-heading.color-multicolor{border-color:#e5ba4c}.format-color-heading.color-lands{border-color:#b89267}

.deck-export-menu{margin:12px 0}.deck-export-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px;padding:12px 0}.deck-export-actions .button{position:static;width:100%;min-height:42px;white-space:normal;text-align:left}.deck-control-menu>.builder-file-actions{position:static}.builder-deck-head{gap:12px}

.settings label.remember-player-name{display:flex;align-items:center;gap:9px;margin:8px 0;font-size:14px;line-height:1.4}.settings .remember-player-name input[type=checkbox]{appearance:auto;width:18px;height:18px;min-height:18px;flex:0 0 18px;padding:0;margin:0;accent-color:#d9ad59}.remember-player-help{display:block;line-height:1.4;color:#c5baa0;margin-bottom:14px}

#deckList label{display:grid;gap:8px}#archiveDeckSelect{width:100%;min-width:0;box-sizing:border-box;padding:10px;background:#13251a;color:#f3e4c4;border:1px solid #927546;border-radius:6px}.archive-picker-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.deck-title-error{color:#ffd1b7;padding:10px;border-left:3px solid #e99360;background:#482a20}
