/* BihmanDecks application composition. Shared primitives live in design-system.css. */
body{background:var(--bg-0);color:var(--text)}
.shell{width:min(100% - 40px,var(--container-product));margin-inline:auto}.bar{min-height:80px;display:flex;align-items:center;gap:var(--space-4)}
header{position:relative;z-index:4;border-bottom:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-0) 94%,transparent);backdrop-filter:blur(12px)}
.logo{display:flex;align-items:center;gap:var(--space-2);font-size:var(--type-h3);font-weight:800;letter-spacing:-.03em;white-space:nowrap}.logo-mark{display:inline-flex;flex:0 0 auto;width:104px;height:70px}.home-logo-image{width:100%;height:100%;object-fit:contain}.logo-wordmark{color:var(--text-strong)}.tagline{color:var(--text-muted);font-size:var(--type-body-small)}
.nav-links{display:flex;align-items:center;gap:var(--space-3);margin-left:auto;color:var(--text-muted);font-size:var(--type-label);font-weight:700}.nav-links a{text-decoration:none}.nav-links a:hover{color:var(--focus-cyan)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}
main{padding-block:var(--space-8) var(--space-9)}.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(310px,.88fr);gap:var(--space-7);align-items:center;min-height:480px}.intro{max-width:720px}.eyebrow{color:var(--focus-cyan);font-size:var(--type-label);font-weight:800;letter-spacing:.12em}.intro h1{max-width:740px;margin:var(--space-3) 0 var(--space-4);color:var(--text-strong);font-size:var(--type-display);letter-spacing:-.06em;line-height:.94}.intro h1 em{color:var(--action-gold);font-style:normal}.intro p{max-width:650px;margin:0;color:var(--text-muted);font-size:var(--type-body-large);line-height:1.6}.hero-points{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block:var(--space-4)}.hero-points span{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text);font-size:var(--type-body-small);font-weight:700}
.lookup{display:grid;grid-template-columns:minmax(140px,1fr) 176px 156px;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-sm)}.lookup:focus-within{border-color:var(--focus-cyan);box-shadow:var(--shadow-focus)}.lookup-field{display:grid;gap:var(--space-1);min-width:0}.lookup-field span{padding-left:var(--space-1);color:var(--text-muted);font-size:var(--type-label);font-weight:800;letter-spacing:.08em}.lookup button{min-height:48px;border:0;border-radius:var(--radius-md);background:var(--action-blue);color:var(--text-strong);font:800 var(--type-button)/1 var(--font-body);cursor:pointer}.lookup button:hover{background:var(--action-blue-hover)}.lookup button b{margin-left:var(--space-1);font-size:18px}.tool-links{margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--type-body-small)}.tool-links a{color:var(--focus-cyan)}
.metabar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;color:var(--text-muted);font-size:var(--type-body-small)}.pill{padding:5px var(--space-2);border:1px solid color-mix(in srgb,var(--success) 55%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--success) 12%,var(--surface-1));color:var(--success);font-size:var(--type-label);font-weight:800}.pill.snapshot{border-color:color-mix(in srgb,var(--warning) 55%,var(--border));background:color-mix(in srgb,var(--warning) 12%,var(--surface-1));color:var(--warning)}.metabar button{padding:0;border:0;background:transparent;color:var(--focus-cyan);font:700 var(--type-body-small)/1 var(--font-body);text-decoration:underline;cursor:pointer}.mode-help{margin:var(--space-2) 0;color:var(--text-muted);font-size:var(--type-body-small)}.message{min-height:24px;margin-top:var(--space-3);color:var(--text);font-size:var(--type-body-small)}.message.error{color:var(--danger)}
.hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-4)}.hero-proof>div{display:grid;gap:2px;padding:var(--space-3);border-left:2px solid var(--border-strong);background:var(--surface-1)}.hero-proof strong{color:var(--text-strong);font-size:var(--type-metric)}.hero-proof span{color:var(--text-muted);font-size:var(--type-body-small)}
.arena{position:relative;min-height:390px;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-xl);background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--action-blue) 44%,transparent),transparent 20%),var(--surface-1);box-shadow:var(--shadow-md)}.arena:before{content:"";position:absolute;inset:18%;border:1px solid color-mix(in srgb,var(--focus-cyan) 70%,transparent);border-radius:50%;box-shadow:0 0 0 22px color-mix(in srgb,var(--action-blue) 9%,transparent)}.arena:after{content:"";position:absolute;inset:calc(50% - 53px);border-radius:50%;background:var(--action-blue);box-shadow:var(--shadow-focus)}.arena-topline,.arena-label{position:absolute;z-index:1;left:var(--space-4);right:var(--space-4);color:var(--text-muted);font-size:var(--type-label);font-weight:800;letter-spacing:.12em;text-align:center}.arena-topline{top:var(--space-4)}.arena-label{bottom:var(--space-4);color:var(--text)}.arena-card{position:absolute;z-index:2;width:96px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text);font-size:var(--type-label);font-weight:800;text-align:center;box-shadow:var(--shadow-sm)}.arena-card i{display:block;margin-bottom:4px;color:var(--focus-cyan);font-size:24px;font-style:normal}.arena-card.one{top:21%;left:10%}.arena-card.two{top:33%;right:8%}.arena-card.three{bottom:20%;left:24%}
.generated-deck{scroll-margin-top:98px;margin-top:var(--space-7);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-1);box-shadow:var(--shadow-md)}.generated-deck .choice.primary{grid-column:span 2}.generated-deck .choice.primary .deck{grid-template-columns:repeat(8,minmax(0,1fr))}.profile{display:none;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2)}.profile.show{display:flex}.avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:var(--radius-md);background:var(--action-gold);color:var(--bg-0);font-size:22px}.profile h2{margin:0;color:var(--text-strong);font-size:var(--type-h3)}.profile p{margin:4px 0 0;color:var(--text-muted);font-size:var(--type-body-small)}
.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);margin-block:var(--space-7) var(--space-3)}.sectionhead h2{margin:0;color:var(--text-strong);font-size:var(--type-h2);letter-spacing:-.045em}.sectionhead p{max-width:300px;margin:0;color:var(--text-muted);font-size:var(--type-body-small);text-align:right}.results{display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.results.show{display:grid}.choice{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-sm);transition:transform var(--motion-normal) var(--ease-standard),border-color var(--motion-normal) var(--ease-standard)}.choice:hover{transform:translateY(-3px);border-color:var(--border-strong)}.choice.primary{border-color:var(--focus-cyan)}.choice.primary:after{content:"TOP PICK";position:absolute;top:14px;right:14px;padding:5px 8px;border-radius:999px;background:var(--action-gold);color:var(--bg-0);font-size:var(--type-label);font-weight:900}.choicehead{padding:var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-raised)}.choicehead small{color:var(--focus-cyan);font-size:var(--type-label);font-weight:800;letter-spacing:.09em}.choicehead h3{margin:var(--space-1) 0 0;color:var(--text-strong);font-size:var(--type-h3)}.choicebody{display:flex;flex:1;flex-direction:column;padding:var(--space-4)}.plan{min-height:54px;margin:0;color:var(--text-muted);font-size:var(--type-body-small);line-height:1.5}.scores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-block:var(--space-3)}.score{padding:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-muted);font-size:var(--type-label);font-weight:800;letter-spacing:.04em}.score b{display:block;margin-top:3px;color:var(--text-strong);font-size:20px;letter-spacing:-.04em}.deck{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}.card{position:relative;display:flex;flex-direction:column;min-width:0;min-height:96px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:transform var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.card:hover{transform:translateY(-2px);border-color:var(--focus-cyan)}.card img{display:block;width:100%;height:46px;object-fit:contain;margin:auto}.card b{display:-webkit-box;min-height:26px;overflow:hidden;color:var(--text-strong);font-size:var(--type-label);line-height:1.1;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:2}.card small{margin-top:3px;color:var(--focus-cyan);font-size:var(--type-label);font-weight:800;text-align:center}.why,.upgrade,.meta-tools{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.why h4,.upgrade h4{margin:0 0 var(--space-1);font-size:var(--type-body-small)}.why p,.upgrade p{margin:0;color:var(--text-muted);font-size:var(--type-body-small);line-height:1.45}.upgrade{padding:var(--space-3);border:1px solid color-mix(in srgb,var(--warning) 45%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--warning) 8%,var(--surface-1))}.upgrade h4{color:var(--warning)}.unavailable{padding:var(--space-5);color:var(--text-muted)}
.deck-card-grid,.day-cards{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.deck-card,.day-card{display:flex;flex-direction:column;min-width:0;aspect-ratio:3/4.25;padding:var(--space-2);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);transition:transform var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard)}.deck-card:hover,.deck-card:focus-visible{transform:translateY(-2px);border-color:var(--focus-cyan)}.deck-card img,.day-card img{display:block;width:100%;height:auto;max-height:calc(100% - 34px);object-fit:contain}.deck-card b,.day-card b{display:-webkit-box;min-height:25px;margin-top:auto;overflow:hidden;color:var(--text-strong);font-size:var(--type-label);line-height:1.1;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:2}.deck-card small{color:var(--focus-cyan);font-size:var(--type-label);text-align:center}.deck-card-fallback{display:grid;flex:1;place-items:center;font-size:24px}.deck-metadata{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.deck-metadata span{padding:5px var(--space-2);border:1px solid var(--border);border-radius:999px;background:var(--surface-2);color:var(--text-muted);font-size:var(--type-label);font-weight:700}.deck-metadata strong{color:var(--action-gold)}.comparison{margin-block:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb,var(--focus-cyan) 45%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--focus-cyan) 8%,var(--surface-1));font-size:var(--type-body-small)}.comparison h4{margin:0 0 var(--space-1);color:var(--focus-cyan)}.comparison p{margin:0;color:var(--text-muted);line-height:1.45}.comparison b{color:var(--text-strong)}.entity-badge{position:absolute;z-index:1;top:5px;left:5px;padding:3px 5px;border:1px solid var(--border);border-radius:999px;background:var(--surface-raised);font-size:9px;font-weight:900;letter-spacing:.06em}.entity-badge.evo{color:var(--focus-cyan)}.entity-badge.champion{color:var(--action-gold)}.entity-badge.special{color:var(--warning)}
.how-it-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin-block:var(--space-6)}.how-it-works a{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-2);align-items:center;min-height:72px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);text-decoration:none}.how-it-works span{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--surface-interactive);color:var(--focus-cyan);font-size:var(--type-label);font-weight:800}.how-it-works b{color:var(--text-strong);font-size:var(--type-body-small)}.how-it-works small{color:var(--text-muted);font-size:var(--type-body-small)}.hub{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space-3);margin-top:var(--space-6)}.hub-panel,.info article,.tool-card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-sm)}.hub-panel h2,.hub-panel h3,.info h3{margin:0 0 var(--space-2);color:var(--text-strong);font-size:var(--type-h3);letter-spacing:-.03em}.hub-panel p,.info p,.tool-card p{color:var(--text-muted);font-size:var(--type-body-small);line-height:1.6}.trend-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-2)}.trend-icon{font-size:20px}.trend-row b{display:block;color:var(--text-strong);font-size:var(--type-body-small)}.trend-row small{color:var(--text-muted);font-size:var(--type-body-small)}.info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin-top:var(--space-4)}.footer{margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--type-body-small);line-height:1.6}.footer a{color:var(--focus-cyan)}
.generation-loading{display:grid;gap:var(--space-2);min-height:116px;padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text)}.generation-loading b{font-size:var(--type-h3)}.generation-loading span{color:var(--text-muted);font-size:var(--type-body-small)}.generated-deck-actions,.manual-actions,.copy-deck-action,.day-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.day-primary{display:inline-flex;align-items:center;min-height:44px;padding-inline:var(--space-3);border-radius:var(--radius-md);background:var(--action-blue);color:var(--text-strong);font-size:var(--type-button);font-weight:800;text-decoration:none}
@media(max-width:560px){.generated-deck{padding:var(--space-4)}.generated-deck .choice.primary{grid-column:auto}.generated-deck .choice.primary .deck{grid-template-columns:repeat(4,minmax(0,1fr))}}
