@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap");:root{color-scheme:dark;--ink:#fff4dc;--muted:#cfc7af;--paper:#05110d;--panel:#0b2018;--green:#75e2ac;--line:#28503e;--soft:#123324;--input:#081a12;--danger:#f08c8c}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at top,#103d2b,var(--paper) 620px);color:var(--ink);font-family:DM Sans,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:var(--green)}a:hover{color:#a1f0c8}.shell{max-width:1120px;margin:auto;padding:24px 24px 80px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:54px}.brand{color:var(--ink);text-decoration:none;font:700 22px Space Grotesk;letter-spacing:-.7px}.brand span{color:inherit}.brand,.hero h1,.panel h2{text-shadow:0 2px 5px #006647,0 0 16px #00865480}.nav{display:flex;gap:24px;color:var(--muted);font-size:14px}.nav strong{color:var(--ink)}.hero{max-width:720px;margin-bottom:36px}.eyebrow{color:var(--green);font-size:11px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.hero h1{margin:12px 0;font:600 clamp(34px,5vw,54px)/1.08 Space Grotesk;letter-spacing:-2px}.hero p{max-width:580px;color:var(--muted);font-size:16px;line-height:1.65}.grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:18px;gap:18px}.panel{border:1px solid var(--line);border-radius:16px;padding:22px;background:var(--panel);box-shadow:0 8px 28px #003e2c99}.panel h2{margin:0 0 5px;font:600 19px Space Grotesk}.sub{margin:0 0 18px;color:var(--muted);font-size:13px}.searchrow{display:flex;gap:8px}.field,select,textarea{min-width:0;border:1px solid var(--line);border-radius:9px;padding:12px 13px;outline:none;background:var(--input);color:var(--ink)}.field{flex:1 1}.field::placeholder,textarea::placeholder{color:#b4ad96}.field:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #75e2ac25}.btn{border:0;border-radius:9px;padding:0 16px;background:#156144;color:var(--ink);font-weight:700}.btn:hover:not(:disabled){background:#1b7350}.btn:disabled{cursor:not-allowed;opacity:.55}.btn.secondary{border:1px solid var(--line);padding:10px 13px;background:var(--soft);color:var(--ink)}.btn.secondary:hover:not(:disabled){background:#194632}.results{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-top:18px}.card{overflow:hidden;border:1px solid var(--line);border-radius:11px;background:var(--input)}.card img{display:block;width:100%;aspect-ratio:.72;object-fit:cover;background:var(--soft)}.cardbody{padding:9px}.cardname{font-size:12px;font-weight:700;line-height:1.3}.cardmeta{margin-top:4px;font-size:10px}.cardmeta,.empty{color:var(--muted)}.empty{border:1px dashed var(--line);border-radius:10px;padding:26px 12px;background:var(--input);font-size:13px;text-align:center}.textarea{width:100%;min-height:178px;resize:vertical;font-size:13px;line-height:1.5}.actions{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.hint{color:var(--muted);font-size:11px}.notice{margin-top:12px;color:var(--green);font-size:13px}.assistant{margin-top:18px;border-color:#284738;background:#0d251b}.assistant .field{background:var(--input)}.footer{margin-top:20px;color:var(--muted);font-size:11px}input[type=number]{color-scheme:dark}::selection{background:#75e2ac55;color:var(--ink)}@media (max-width:760px){.shell{padding:18px 15px 50px}.topbar{margin-bottom:38px}.nav{flex-wrap:wrap;justify-content:flex-end;gap:12px;font-size:12px}.grid{grid-template-columns:1fr}.results{grid-template-columns:repeat(3,1fr)}}.collection-import-actions,.collection-letters{display:flex;flex-wrap:wrap;gap:6px}.collection-letters .btn{min-width:34px;min-height:36px;padding:6px 8px}.collection-import{align-self:start;min-width:0;padding:12px 16px}.collection-import summary{cursor:pointer;font-weight:600}.collection-import .textarea{min-height:45px;height:45px}.catalog-search{flex-wrap:wrap}.catalog-search select{flex:0 1 auto}.catalog-search input{flex:1 1 180px}.catalog-filters{flex:1 1 100%;min-width:0;display:flex;flex-wrap:wrap;align-items:end;gap:8px;margin:4px 0 0;padding:8px 0 0;border:0}.catalog-filters legend{padding:0;font-weight:700}.catalog-filters label{display:grid;grid-gap:4px;gap:4px;color:var(--muted);font-size:13px}.catalog-filters input{flex:initial;width:100%}.card-price{display:block;color:var(--green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.printing-dialog{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:16px;background:#08100edb}.printing-panel{display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:10px;gap:10px;width:min(100%,540px);height:min(860px,calc(100dvh - 32px))}.printing-controls{display:grid;grid-gap:8px;gap:8px;max-height:42dvh;overflow:auto}.printing-field{display:grid;grid-gap:5px;gap:5px}.printing-art{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.btn.printing-trigger{padding:6px 4px;font-size:11px}.btn.catalog-add{width:100%;margin-top:8px;padding:8px 5px;font-size:12px}.library-storage{max-width:1120px;margin:0 auto;padding:10px 24px 0;display:flex;justify-content:flex-end;align-items:center;gap:10px}.collection-sort{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.collection-sort select{flex:0 1 auto}.deck-frames{display:grid;grid-gap:18px;gap:18px}.deck-frame{padding:0;min-width:0}.deck-frame-title{margin:0!important}.deck-frame-toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:76px;padding:18px 22px;border:0;border-radius:16px;text-align:left;color:var(--ink);background:transparent}.deck-frame-toggle:hover{background:var(--soft)}.deck-frame-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px}.deck-frame-name{display:block;font:600 19px Space Grotesk;overflow-wrap:anywhere}.deck-frame-meta{display:block;margin-top:6px;color:var(--muted);font:400 12px DM Sans,sans-serif}.deck-frame-chevron{color:var(--green);font-size:24px}.deck-frame-body{padding:0 18px 18px}.deck-frame-body[hidden]{display:none}.deck-editor-actions{gap:12px;flex-wrap:wrap}@media (max-width:760px){.deck-create{flex-wrap:wrap}.deck-create .btn{min-height:44px}.deck-frame-body{padding:0 8px 10px}.deck-frame-body .panel{padding:14px}.deck-frame-body .grid>*{min-width:0}}.deck-card-row{grid-template-columns:42px minmax(0,1fr) 70px 120px 34px}@media (max-width:760px){.deck-card-row{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr) 34px}.deck-card-row>:first-child{grid-column:1;grid-row:1/3}.deck-card-row>:nth-child(2){grid-column:2/4;grid-row:1}.deck-card-row>:nth-child(3){grid-column:2;grid-row:2;width:100%}.deck-card-row>:nth-child(4){grid-column:3/5;grid-row:2;width:100%}.deck-card-row>:nth-child(5){grid-column:4;grid-row:1;padding:6px}}.deck-import-frame{margin-bottom:18px}.deck-frame-header{display:flex;align-items:center;gap:8px;padding-right:18px}.deck-frame-header .deck-frame-title{flex:1 1;min-width:0}.deck-delete{color:var(--danger)!important;white-space:nowrap;min-height:44px}@media (max-width:480px){.deck-frame-header{flex-wrap:wrap;padding:0 0 12px}.deck-frame-header .deck-frame-title{flex-basis:100%}.deck-delete{margin-left:18px}}.collection-card-row{grid-template-columns:50px minmax(0,1fr) auto auto}.collection-quantity{display:flex;align-items:center;gap:8px}.collection-quantity .btn{min-width:44px;min-height:44px;padding:6px;font-size:20px}@media (max-width:760px){.collection-card-row{grid-template-columns:50px minmax(0,1fr) auto}.collection-card-row>:first-child{grid-column:1;grid-row:1/3}.collection-card-row>:nth-child(2){grid-column:2/4;grid-row:1}.collection-card-row>:nth-child(3){grid-column:2;grid-row:2}.collection-card-row>:nth-child(4){grid-column:3;grid-row:2}}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.brand-icon{display:block;border-radius:10px;flex-shrink:0}.brand-name{white-space:nowrap}.topbar{gap:16px}@media (max-width:480px){.topbar{flex-wrap:wrap;align-items:flex-start}.topbar .nav{flex-basis:100%;justify-content:flex-start}}