@property --app-bg{syntax: "<color>"; inherits: true; initial-value: #f8f8f8;}@property --panel-bg{syntax: "<color>"; inherits: true; initial-value: rgba(250,250,250,.98);}@property --panel-stroke{syntax: "<color>"; inherits: true; initial-value: rgba(30,32,36,.08);}@property --accent{syntax: "<color>"; inherits: true; initial-value: #b8bcc2;}@property --accent-deep{syntax: "<color>"; inherits: true; initial-value: #858b94;}@property --accent-ink{syntax: "<color>"; inherits: true; initial-value: #fbfbfc;}@property --accent-shadow{syntax: "<color>"; inherits: true; initial-value: rgba(133,139,148,.22);}@property --primary-button-disabled-bg{syntax: "<color>"; inherits: true; initial-value: #d5d7da;}@property --primary-button-disabled-ink{syntax: "<color>"; inherits: true; initial-value: #4b5057;}@property --body-ink{syntax: "<color>"; inherits: true; initial-value: #2a2d32;}@property --heading-ink{syntax: "<color>"; inherits: true; initial-value: #17191d;}@property --muted-ink{syntax: "<color>"; inherits: true; initial-value: #555a61;}@property --barely-there-ink{syntax: "<color>"; inherits: true; initial-value: #969ba2;}@property --nav-link-color{syntax: "<color>"; inherits: true; initial-value: #343840;}@property --card-outline{syntax: "<color>"; inherits: true; initial-value: rgba(30,32,36,.07);}@property --modal-backdrop{syntax: "<color>"; inherits: true; initial-value: rgba(30,32,36,.3);}@property --input-border{syntax: "<color>"; inherits: true; initial-value: rgba(30,32,36,.3);}@property --secondary-button-bg{syntax: "<color>"; inherits: true; initial-value: rgba(255,255,255,.88);}@property --secondary-button-border{syntax: "<color>"; inherits: true; initial-value: rgba(30,32,36,.1);}@property --secondary-button-ink{syntax: "<color>"; inherits: true; initial-value: #3b3f46;}@property --wave-0{syntax: "<color>"; inherits: true; initial-value: #d6d8da;}@property --wave-1{syntax: "<color>"; inherits: true; initial-value: #e1e2e4;}@property --wave-2{syntax: "<color>"; inherits: true; initial-value: #ececee;}@property --wave-3{syntax: "<color>"; inherits: true; initial-value: #f4f4f5;}@property --wave-4{syntax: "<color>"; inherits: true; initial-value: #f8f8f8;}:root{--app-bg: #f8f8f8;--panel-bg: rgba(250, 250, 250, .98);--panel-stroke: rgba(30, 32, 36, .08);--shadow-strong: 0 14px 25px rgba(48, 50, 54, .14);--shadow-soft: 0 10px 16px rgba(48, 50, 54, .1);--accent: #b8bcc2;--accent-deep: #858b94;--accent-ink: #fbfbfc;--accent-shadow: rgba(133, 139, 148, .22);--primary-button-disabled-bg: #d5d7da;--primary-button-disabled-ink: #4b5057;--body-ink: #2a2d32;--heading-ink: #17191d;--muted-ink: #555a61;--barely-there-ink: #969ba2;--nav-link-color: #343840;--card-face: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);--card-outline: rgba(30, 32, 36, .07);--modal-backdrop: rgba(30, 32, 36, .3);--input-border: rgba(30, 32, 36, .3);--secondary-button-bg: rgba(255, 255, 255, .88);--secondary-button-border: rgba(30, 32, 36, .1);--secondary-button-ink: #3b3f46;--wave-0: #d6d8da;--wave-1: #e1e2e4;--wave-2: #ececee;--wave-3: #f4f4f5;--wave-4: #f8f8f8;transition:--app-bg .6s cubic-bezier(.4,0,.2,1),--panel-bg .6s cubic-bezier(.4,0,.2,1),--panel-stroke .6s cubic-bezier(.4,0,.2,1),--accent .6s cubic-bezier(.4,0,.2,1),--accent-deep .6s cubic-bezier(.4,0,.2,1),--accent-ink .6s cubic-bezier(.4,0,.2,1),--accent-shadow .6s cubic-bezier(.4,0,.2,1),--primary-button-disabled-bg .6s cubic-bezier(.4,0,.2,1),--primary-button-disabled-ink .6s cubic-bezier(.4,0,.2,1),--body-ink .6s cubic-bezier(.4,0,.2,1),--heading-ink .6s cubic-bezier(.4,0,.2,1),--muted-ink .6s cubic-bezier(.4,0,.2,1),--barely-there-ink .6s cubic-bezier(.4,0,.2,1),--nav-link-color .6s cubic-bezier(.4,0,.2,1),--card-outline .6s cubic-bezier(.4,0,.2,1),--modal-backdrop .6s cubic-bezier(.4,0,.2,1),--input-border .6s cubic-bezier(.4,0,.2,1),--secondary-button-bg .6s cubic-bezier(.4,0,.2,1),--secondary-button-border .6s cubic-bezier(.4,0,.2,1),--secondary-button-ink .6s cubic-bezier(.4,0,.2,1),--wave-0 .6s cubic-bezier(.4,0,.2,1),--wave-1 .6s cubic-bezier(.4,0,.2,1),--wave-2 .6s cubic-bezier(.4,0,.2,1),--wave-3 .6s cubic-bezier(.4,0,.2,1),--wave-4 .6s cubic-bezier(.4,0,.2,1)}:root{color-scheme:light;font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--body-ink);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{display:none}*{scrollbar-width:none}*{box-sizing:border-box}html{min-height:100%;background-color:var(--app-bg);margin:0}body,#root{height:100%;background-color:var(--app-bg);margin:0}body{color:var(--body-ink)}button,input,textarea{font:inherit}button{border:0;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app-root{position:relative;min-height:100%;overflow-x:clip;isolation:isolate}.background-layer{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;background-color:var(--app-bg)}.background-svg{display:block;width:100%;height:100%}.app-content{position:relative;z-index:1;min-height:100lvh}.scroll-top-chroma{position:absolute;top:0;left:0;right:0;height:calc(env(safe-area-inset-top,0px) + 3.5rem);z-index:0;pointer-events:none;background:var(--wave-0)}html.is-standalone .background-layer{position:fixed;inset:0;height:100lvh;min-height:100lvh}html.is-standalone .scroll-top-chroma{display:none}.app-shell{position:relative;width:min(100%,34rem);display:flex;flex-direction:column;min-height:100lvh;margin:0 auto;padding:calc(env(safe-area-inset-top,0px) + 1.35rem) 1.4rem calc(env(safe-area-inset-bottom,0px) + 1.4rem);padding-bottom:calc(100lvh - 100dvh + env(safe-area-inset-bottom,0px) + 1.4rem)}.setup-shell{--setup-action-bottom: 0px;--setup-action-width: min( calc(100dvw - 2.8rem) , 31.2rem);padding-bottom:calc(var(--setup-action-bottom) + 5rem)}@media(display-mode:standalone){.setup-shell{--setup-action-bottom: calc(env(safe-area-inset-bottom, 0px) + 1rem) }}html.is-standalone .setup-shell{--setup-action-bottom: calc(env(safe-area-inset-bottom, 0px) + 1rem) }.app-mark,.eyebrow{margin:0 0 .45rem;color:var(--muted-ink);font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.hero-panel{padding-top:.2rem}h1,h2{margin:0;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;line-height:.95;letter-spacing:-.04em;color:var(--heading-ink)}h1{font-size:clamp(2.6rem,6vw,3.1rem);margin:.72em 0 .52em}.game-shell h1{margin:.24em 0 0}h2{font-size:clamp(2.2rem,6vw,3rem)}.hero-copy{color:var(--body-ink)}.completion-copy,.empty-card p,.card-note{color:var(--muted-ink);font-weight:600}.hero-copy{margin:1rem 0 0;font-size:1.02rem;font-weight:500;text-shadow:0 0 12px rgba(255,255,255,.95),0 0 24px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,1)}.setup-form{display:grid;gap:1rem}.setup-form--minimal{display:flex;flex-direction:column;flex:1;min-height:0;gap:1.35rem;margin-top:2.4rem}.setup-minimal{flex:1;display:flex}.install-help-trigger{display:inline-flex;align-items:center;gap:.45rem;min-height:2.2rem;background:transparent;color:var(--accent-deep);font-size:.92rem;font-weight:600;padding:2svh 1.5rem}.help-badge{display:inline-grid;width:1.25rem;height:1.25rem;place-items:center;border-radius:999px;background:var(--accent-deep);color:var(--accent-ink);font-size:.85rem;line-height:1}.home-example-section{flex:1;display:grid;place-items:center;min-height:18rem;padding:1.2rem 0 2rem}.example-card-fan{position:relative;width:min(85%,25rem);aspect-ratio:1.25 / 1}.example-card-wrapper{position:absolute;inset:7% 14%;aspect-ratio:2.5 / 3.5;transform-origin:50% 90%}.example-card-wrapper--1{transform:translate(-22%) rotate(-12deg)}.example-card-wrapper--2{transform:translateY(-4%) rotate(1deg);z-index:2}.example-card-wrapper--3{transform:translate(22%) rotate(12deg)}.example-card{width:100%;height:100%;display:flex;flex-direction:column;min-height:fit-content;padding:1.25rem;border:1px solid rgba(63,34,24,.07);border-radius:1.35rem;background:var(--card-face);box-shadow:var(--shadow-strong);color:var(--heading-ink);text-align:left;-webkit-tap-highlight-color:transparent}.example-card span{color:var(--accent-deep);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.example-card strong{font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:clamp(1.15rem,5.6vw,1.9rem);line-height:1.03;margin:auto 0;text-align:center}.setup-copy{display:grid;gap:.28rem;font-weight:500;text-shadow:0 0 12px rgba(255,255,255,.95),0 0 24px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,1)}.setup-label{margin:0;color:var(--muted-ink);font-size:1.2rem;font-weight:700}.setup-note{margin:0;color:var(--muted-ink);font-size:.95rem}.name-stack{display:grid;flex:1;gap:.55rem;min-height:10rem;align-content:start}.name-line{min-height:2rem;padding-bottom:.35rem}.name-line strong{font-size:1.28rem;line-height:1.2;word-break:break-word;overflow-wrap:break-word}.name-input-line{min-height:2.5rem}.name-draft-input{width:auto;min-width:60%;max-width:100%;field-sizing:content;border:0;border-bottom:3px solid var(--input-border);background:transparent;padding:.05rem 0 .15rem;color:var(--heading-ink);font-size:1.25rem;font-weight:700;word-break:break-word;overflow-wrap:break-word;resize:none}.name-draft-input::placeholder{color:#402f2894;font-weight:700}.name-draft-input:focus{outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.primary-button,.secondary-button,.text-button{min-height:3.2rem;border-radius:999px;transition:transform .16s ease,box-shadow .6s cubic-bezier(.4,0,.2,1),background .6s cubic-bezier(.4,0,.2,1),border-color .6s cubic-bezier(.4,0,.2,1),color .6s cubic-bezier(.4,0,.2,1)}.primary-button{background:linear-gradient(180deg,var(--accent) 0%,var(--accent-deep) 100%);color:var(--accent-ink);font-weight:700;box-shadow:0 14px 22px var(--accent-shadow);position:relative;z-index:10}.setup-actions{bottom:var(--setup-action-bottom);width:100%;margin-top:auto;background:linear-gradient(180deg,rgba(255,247,247,0) 0%,rgba(255,247,247,.9) 34%,transparent 100%);overflow:visible;z-index:20}.setup-actions>.primary-button{width:100%}.landing-actions{display:grid;gap:.7rem}.landing-actions>button{width:100%}.secondary-button{background:var(--secondary-button-bg);color:var(--secondary-button-ink);border:1px solid var(--secondary-button-border);font-weight:500}.secondary-button.active{border:2px solid var(--accent)}.text-button{background:transparent;color:var(--accent-deep);font-weight:700}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.text-button:hover{opacity:.75}.primary-button:disabled{background:var(--primary-button-disabled-bg);color:var(--primary-button-disabled-ink);box-shadow:none;cursor:wait}.modal-panel{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 1.4rem);left:50%;transform:translate(-50%);width:min(calc(100% - 2rem),32rem);max-height:calc(100lvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 2rem);overflow:auto;border:1px solid rgba(63,34,24,.08);border-radius:1.35rem;background:var(--panel-bg);box-shadow:0 -30px 80px #00000040,0 0 60px #0000002e,0 0 80px #0000002e,0 0 160px #0000002e,0 0 240px #0000002e,0 0 440px #0000002e,0 8px 24px #00000026;padding:1.2rem;z-index:60}.modal-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.modal-panel h2{font-size:1.8rem;line-height:1;letter-spacing:0}.modal-kicker{margin:.45rem 0 0;color:var(--muted-ink);font-weight:650}.icon-button{flex:0 0 auto;display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:999px;background:#ffffffb8;color:var(--muted-ink);font-size:1rem;font-weight:800}.install-panel{display:grid;gap:1rem}.install-steps{display:grid;gap:.65rem;margin:0;padding-left:1.4rem;color:var(--body-ink);font-weight:650}.personalization-form{display:grid;gap:1rem;margin-top:1.2rem}.clear-names-button{justify-self:end;min-height:auto;padding:0;font-size:.85rem}.personalization-name-stack{min-height:7rem;max-height:42vh;overflow:auto}.removable-name-line{display:flex;align-items:center;justify-content:space-between}.remove-name-button{background:transparent;color:inherit;font-size:1rem;opacity:.42;padding:0 .5rem}.game-shell{position:relative;width:min(100%,34rem);min-height:100lvh;margin:0 auto;display:flex;flex-direction:column;gap:1rem;padding:calc(env(safe-area-inset-top,0px) + 1.35rem) 1.4rem calc(env(safe-area-inset-bottom,0px) + 1.4rem);padding-bottom:calc(100lvh - 100dvh + env(safe-area-inset-bottom,0px) + 1.4rem)}.play-header{padding-top:.25rem}.player-rollcall{display:flex;flex-wrap:wrap;gap:.3rem .55rem;color:var(--muted-ink);font-size:1rem;font-weight:700;max-height:4.8rem;overflow-y:auto}.player-rollcall-name{word-break:break-word;overflow-wrap:break-word}.play-stage{position:relative;flex:1;display:flex;min-height:0;padding-block:.4rem}.stack-frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;perspective:1400px}.empty-card{position:absolute;inset:0}.empty-card,.loading-shell{display:grid;gap:1rem;align-content:center}.question-card,.empty-card{border-radius:2rem}.question-card,.empty-card{background:var(--panel-bg);border:1px solid var(--panel-stroke);box-shadow:var(--shadow-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.question-card{position:absolute;width:82%;max-width:22rem;aspect-ratio:2.5 / 3.5;max-height:100%;container-type:size;display:flex;flex-direction:column;padding:1.4rem;background:var(--card-face);border:1px solid rgba(63,34,24,.06);touch-action:none;overflow:hidden}.question-card--stacked{pointer-events:none}.question-card--top{cursor:grab;-webkit-user-select:none;user-select:none}.question-card--top:active{cursor:grabbing}.card-meta{display:flex;flex-direction:column;gap:.25rem}.card-progress{font-size:.88rem;font-weight:700;color:var(--accent-deep)}.card-body{flex:1;display:flex;align-items:center;min-height:0;padding:.75rem 0 .45rem}.question-text{margin:0;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:clamp(1.25rem,12cqh,2.75rem);text-align:center;line-height:1.02;letter-spacing:-.04em;color:var(--heading-ink);word-break:break-word;overflow-wrap:break-word}.question-text[data-text-density=balanced]{font-size:clamp(1.18rem,10.8cqh,2.35rem)}.question-text[data-text-density=compact]{font-size:clamp(1.08rem,9.5cqh,2rem);line-height:1.04}.question-text[data-text-density=dense]{font-size:clamp(1rem,8.4cqh,1.72rem);line-height:1.06}.question-text--stacked{opacity:.52}.card-actions,.completion-actions{display:grid;gap:.75rem}.next-question-button{min-height:3rem}.card-brand{align-self:flex-end;color:#3a2d274d;font-size:.72rem;font-weight:800;letter-spacing:.16em}.empty-card,.loading-shell{min-height:60vh;padding:1.4rem}.deck-overview-back{margin-top:3rem}.deck-list{display:grid;gap:.85rem;margin-top:2.6rem}.deck-list-card{display:grid;gap:.35rem;width:100%;min-height:8rem;padding:1rem;border:1px solid var(--panel-stroke);border-radius:1.15rem;background:var(--panel-bg);box-shadow:var(--shadow-soft);color:var(--body-ink);text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.deck-list-card strong{color:var(--heading-ink);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:1.45rem;line-height:1.02}.deck-list-card span{color:var(--muted-ink);font-size:.95rem;font-weight:600}.deck-list-card-kicker{color:var(--accent-deep)!important;font-size:.75rem!important;font-weight:700!important;letter-spacing:.14em;text-transform:uppercase}.deck-summary-count{font-size:.85rem!important;font-weight:500!important}.deck-category{margin-top:2rem}.deck-category-summary{color:var(--heading-ink);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:1.45rem;line-height:1.02;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:.5rem}.deck-category-summary::-webkit-details-marker{display:none}.deck-category-summary:before{content:"›";display:inline-block;transition:transform .2s ease;color:var(--accent-deep);font-family:system-ui,sans-serif;font-size:1.6rem;line-height:1}details[open]>.deck-category-summary:before{transform:rotate(90deg)}.deck-category-content{display:grid;gap:.85rem;margin-top:.85rem}.deck-list-status{color:var(--muted-ink);font-weight:650;margin:0}.deck-detail-shell{min-height:100lvh}.deck-detail-primary{margin-top:3rem}.deck-detail-facts{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.55rem;margin-top:1rem}.deck-detail-facts span{display:inline-flex;align-items:center;min-height:2.1rem;padding:0 .8rem;border:1px solid var(--panel-stroke);border-radius:999px;background:#fffdf794;color:var(--body-ink);font-size:.82rem;font-weight:650}.deck-preview-stage{--deck-art-width: min(54vw, 13.1rem);--deck-art-height: calc(var(--deck-art-width) * 1.43);--deck-art-closed-top: max(.35rem, calc((100% - var(--deck-art-height) - 3.7rem) / 2));--preview-card-width: min(57vw, 13.2rem);--preview-card-height: calc(var(--preview-card-width) * 1.4);--preview-fan-top: max(1rem, calc((100% - var(--preview-card-height)) / 2));--preview-fan-spread: clamp(5.4rem, 24vw, 7.4rem);--preview-fan-inner-spread: clamp(2.05rem, 9vw, 3.05rem);flex:1;position:relative;min-height:23rem;padding:.4rem 0 1.2rem;perspective:1000px;overflow:visible}.deck-preview-showcase{position:absolute;inset:0}.deck-preview-fan{position:absolute;inset:0;z-index:1;pointer-events:none}.deck-preview-fan-slot{position:absolute;left:50%;top:var(--preview-fan-top);width:var(--preview-card-width);aspect-ratio:2.5 / 3.5;opacity:0;pointer-events:none;transform:translate(-50%,6.5rem) scale(.72) rotate(0);transition:opacity .22s ease,transform .62s cubic-bezier(.22,1,.36,1)}.deck-preview-card{width:100%;height:100%;display:flex;flex-direction:column;gap:.4rem;padding:.9rem .78rem;border:1px solid rgba(63,34,24,.07);border-radius:1.35rem;background:var(--card-face);box-shadow:var(--shadow-strong);color:var(--heading-ink);text-align:left;touch-action:none;overflow:hidden;cursor:default;-webkit-user-select:none;user-select:none}.deck-preview-stage--open .deck-preview-card{cursor:grab}.deck-preview-stage--open .deck-preview-card:active{cursor:grabbing}.deck-preview-stage--open .deck-preview-fan-slot{opacity:1;pointer-events:auto}.deck-preview-stage--open .deck-preview-fan-card--left{transform:translate(calc(-50% - var(--preview-fan-inner-spread)),-.55rem) rotate(-8deg)}.deck-preview-stage--open .deck-preview-fan-card--center{transform:translate(-50%,-1.1rem) rotate(0)}.deck-preview-stage--open .deck-preview-fan-card--right{transform:translate(calc(-50% + var(--preview-fan-inner-spread)),-.55rem) rotate(8deg)}.deck-preview-stage--open .deck-preview-fan-card--1{transform:translate(calc(-50% - var(--preview-fan-spread)),.1rem) rotate(-13deg)}.deck-preview-stage--open .deck-preview-fan-card--2{transform:translate(calc(-50% - var(--preview-fan-inner-spread)),-1.15rem) rotate(-4deg)}.deck-preview-stage--open .deck-preview-fan-card--3{transform:translate(calc(-50% + var(--preview-fan-inner-spread)),-1.1rem) rotate(5deg)}.deck-preview-stage--open .deck-preview-fan-card--4{transform:translate(calc(-50% + var(--preview-fan-spread)),.18rem) rotate(14deg)}.deck-preview-card span{color:var(--accent-deep);font-size:.66rem;font-weight:800;letter-spacing:0}.deck-preview-card strong{flex:1;display:grid;place-items:center;min-height:0;overflow:hidden;color:var(--heading-ink);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:clamp(.84rem,4vw,1.08rem);font-weight:750;line-height:1.03;text-align:center;word-break:break-word;overflow-wrap:break-word}.deck-preview-card[data-text-density=balanced] strong{font-size:clamp(.78rem,3.65vw,.98rem)}.deck-preview-card[data-text-density=compact] strong{font-size:clamp(.7rem,3.35vw,.9rem);line-height:1.05}.deck-preview-card[data-text-density=dense] strong{font-size:clamp(.62rem,3vw,.8rem);line-height:1.06}.deck-preview-card em{align-self:flex-end;color:#3a2d274d;font-size:.54rem;font-style:normal;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.deck-art-button{position:absolute;left:50%;top:var(--deck-art-closed-top);z-index:2;width:var(--deck-art-width);height:var(--deck-art-height);padding:0;border:0;background:transparent;color:inherit;cursor:pointer;transform-origin:top center;transform:translate(-50%);transition:top .62s cubic-bezier(.22,1,.36,1),transform .62s cubic-bezier(.22,1,.36,1);-webkit-tap-highlight-color:transparent}.deck-art-button:disabled{cursor:wait}.deck-art-button[aria-label="Flick the deck to unpack"]{cursor:grab;touch-action:pan-y}.deck-art-button[aria-label="Flick the deck to unpack"]:active{cursor:grabbing}.deck-art-button:focus:not(:focus-visible){outline:none}.deck-art-unpack-motion{display:block;width:100%;height:100%}.deck-preview-stage--open .deck-art-button{top:calc(var(--preview-fan-top) + var(--preview-card-height) - 3rem);z-index:3;transform:translate(-50%) scale(.5)}.deck-preview-hint{position:absolute;left:50%;top:calc(var(--deck-art-closed-top) + var(--deck-art-height) + 2rem);z-index:4;width:max-content;max-width:82%;margin:0;color:var(--muted-ink);font-size:.82rem;font-weight:700;text-align:center;transform:translate(-50%,.3rem);opacity:0;animation:deck-preview-hint-in 2s ease forwards}.deck-preview-hint--unpack{color:var(--ink)}.deck-preview-hint--error{top:calc(var(--deck-art-closed-top) + var(--deck-art-height) + 3.75rem);color:var(--accent-deep)}.line-art-deck{--deck-depth: calc(var(--deck-art-width) * .17);--deck-box-edge: #171514;position:relative;width:100%;height:100%;perspective:1000px;transform-style:preserve-3d}.line-art-deck-shadow{position:absolute;left:50%;bottom:-1.15rem;width:64%;height:1rem;border-radius:50%;background:#2d221b29;filter:blur(.45rem);transform:translate(-50%)}.line-art-deck-tilt{position:absolute;inset:0;transform-style:preserve-3d;transform-origin:52% 86%;animation:deck-ready-cycle var(--deck-ready-cycle-duration, 10s) ease-in-out infinite}.line-art-deck--loading .line-art-deck-tilt{animation:deck-loading-spin var(--deck-loading-spin-duration, 3.6s) cubic-bezier(.62,0,.18,1) infinite}.line-art-deck--intro-spin .line-art-deck-tilt{animation:var(--deck-intro-spin-animation, none)}.line-art-deck-tilt--controlled{animation:none}.line-art-deck-object{position:absolute;inset:0;transform:rotateX(7deg) rotateY(-28deg) rotate(-6deg);transform-style:preserve-3d}.line-art-deck-face,.line-art-deck-side{position:absolute;background:#fffffc;border:2px solid var(--deck-box-edge);box-shadow:inset 0 0 0 1px #14121014;backface-visibility:hidden}.line-art-deck-face{width:100%;height:100%;overflow:hidden}.line-art-deck-face svg{display:block;width:100%;height:100%;shape-rendering:geometricPrecision;text-rendering:geometricPrecision;-webkit-user-select:none;user-select:none}.line-art-deck-face--front{transform:translateZ(calc(var(--deck-depth) / 2))}.line-art-deck-face--back{transform:rotateY(180deg) translateZ(calc(var(--deck-depth) / 2))}.line-art-deck-side{background:linear-gradient(90deg,#fffef9,#efe9dc)}.line-art-deck-side--right,.line-art-deck-side--left{left:calc((100% - var(--deck-depth)) / 2);width:var(--deck-depth);height:100%}.line-art-deck-side--right{transform:translate(calc(var(--deck-art-width) / 2)) rotateY(90deg)}.line-art-deck-side--left{transform:translate(calc(var(--deck-art-width) / -2)) rotateY(-90deg)}.line-art-deck-side--top,.line-art-deck-side--bottom{top:calc((100% - var(--deck-depth)) / 2);width:100%;height:var(--deck-depth)}.line-art-deck-side--top{transform:translateY(calc(var(--deck-art-height) / -2)) rotateX(90deg)}.line-art-deck-side--bottom{transform:translateY(calc(var(--deck-art-height) / 2)) rotateX(-90deg)}.line-art-deck-side-lines{position:absolute;inset:.65rem .45rem;color:var(--deck-stroke-side, rgba(20, 18, 16, .56));border:1px solid color-mix(in srgb,currentColor 56%,transparent)}.line-art-deck-side-lines[data-variant="0"]:before,.line-art-deck-side-lines[data-variant="0"]:after{content:"";position:absolute;background:color-mix(in srgb,currentColor 55%,transparent)}.line-art-deck-side-lines[data-variant="0"]:before{left:50%;top:.45rem;bottom:.45rem;width:1px}.line-art-deck-side-lines[data-variant="0"]:after{left:.45rem;right:.45rem;top:50%;height:1px}.line-art-deck-side-lines[data-variant="2"]{background:repeating-linear-gradient(to bottom,transparent,transparent 3px,color-mix(in srgb,currentColor 30%,transparent) 3px,color-mix(in srgb,currentColor 30%,transparent) 4px)}.line-art-deck-side-lines[data-variant="3"]{background:repeating-linear-gradient(to right,transparent,transparent 2px,color-mix(in srgb,currentColor 30%,transparent) 2px,color-mix(in srgb,currentColor 30%,transparent) 3px)}.line-art-deck-side-lines[data-variant="4"]{background:repeating-linear-gradient(45deg,transparent,transparent 3px,color-mix(in srgb,currentColor 25%,transparent) 3px,color-mix(in srgb,currentColor 25%,transparent) 4px)}.line-art-deck-side-lines[data-variant="5"]:before{content:"";position:absolute;inset:3px;border:1px dashed color-mix(in srgb,currentColor 45%,transparent);background:transparent}.line-art-deck-ink{color:#171514}.line-art-deck-stroke-primary{color:var(--deck-stroke-primary, currentColor)}.line-art-deck-stroke-secondary{color:var(--deck-stroke-secondary, currentColor)}.line-art-deck-stroke-tertiary{color:var(--deck-stroke-tertiary, currentColor)}.line-art-deck-stroke-mark{color:var(--deck-stroke-mark, currentColor)}.line-art-deck-stroke-outer{color:var(--deck-stroke-outer, currentColor)}.line-art-deck-title-plate{fill:#fffffc;stroke:none}.line-art-deck-mark-plate{fill:#fffffced;stroke:#141210cc;stroke-width:1.1}.line-art-deck-title{color:var(--deck-stroke-title, #171514);fill:currentColor;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.84rem;font-weight:900;letter-spacing:.045em}.line-art-deck-count{color:var(--deck-stroke-count, #171514);fill:currentColor;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.64rem;font-weight:800;letter-spacing:.18em}.line-art-deck-back-mark{color:var(--deck-stroke-monogram, #171514);fill:currentColor;font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,serif;font-size:1.45rem;font-weight:700}.line-art-deck-loading-label{position:absolute;left:50%;bottom:-3rem;color:var(--muted-ink);font-size:.76rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translate(-50%,.25rem);transition:opacity .65s ease,transform .65s ease;white-space:nowrap}.line-art-deck--loading .line-art-deck-loading-label{opacity:1;transform:translate(-50%)}.line-art-deck-loading-label:after{content:"";animation:loading-dots 1.2s steps(4,end) infinite}.line-art-deck:not(.line-art-deck--loading) .line-art-deck-loading-label:after{content:"";animation:none}@keyframes deck-preview-hint-in{to{opacity:1;transform:translate(-50%)}}@keyframes deck-ready-cycle{0%,38%{transform:translateY(0) rotate(0) rotateY(0)}16%{transform:translateY(-.3rem) rotate(-1.2deg) rotateY(0)}22%{transform:translateY(-.3rem) rotate(1deg) rotateY(0)}64%{transform:translateY(0) rotate(-8deg) rotateY(0)}82%{transform:translateY(-.55rem) rotate(-8deg) rotateY(180deg)}to{transform:translateY(0) rotate(0) rotateY(360deg)}}@media(prefers-reduced-motion:reduce){.deck-art-button,.deck-preview-card,.line-art-deck-tilt,.line-art-deck-loading-label{transition-duration:.12s}.line-art-deck-tilt,.line-art-deck-tilt--controlled,.line-art-deck--intro-spin .line-art-deck-tilt,.line-art-deck--loading .line-art-deck-tilt{animation:none}.deck-preview-hint{animation-duration:.18s}}@keyframes deck-loading-spin{0%{transform:translateY(0) rotate(-8deg) rotateY(0)}46%{transform:translateY(-.75rem) rotate(-8deg) rotateY(180deg)}to{transform:translateY(0) rotate(0) rotateY(360deg)}}@keyframes loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}.deck-detail-actions{display:grid;gap:.7rem;margin-top:auto;position:relative;z-index:4}@media(min-width:720px){.app-shell,.game-shell{width:min(100%,34rem);padding-inline:1.7rem}}@media(max-height:780px){.app-shell,.game-shell{padding-top:calc(env(safe-area-inset-top,0px) + 1rem)}h1{font-size:clamp(2.25rem,8vw,2.85rem);margin:.58em 0 .42em}.game-shell h1{margin-top:.18em}.setup-form--minimal{margin-top:1.6rem;gap:1rem}.hero-copy{margin-top:.8rem;font-size:.98rem}}.orientation-guard{display:none;position:fixed;inset:0;z-index:9999;background:var(--app-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);padding:2.5rem 1.5rem;text-align:center;color:var(--heading-ink);overflow-y:auto}.orientation-guard.is-visible{display:flex;flex-direction:column;align-items:center}.orientation-guard-content{margin:auto;display:flex;flex-direction:column;align-items:center;width:100%;max-width:24rem}.orientation-guard-icon{flex-shrink:0;width:64px;height:64px;margin-bottom:1.5rem;color:var(--accent)}.orientation-guard-icon--rotate{animation:rotate-device 4s ease-in-out infinite}.orientation-guard-icon--resize{flex-shrink:0;width:72px;height:72px;border:3px dashed var(--accent);border-radius:12px;position:relative;margin-bottom:2.2rem;animation:resize-box 2.5s ease-in-out infinite}.orientation-guard-icon--resize:after{content:"";position:absolute;bottom:-6px;right:-6px;width:14px;height:14px;background:var(--accent);border-radius:3px}.orientation-guard h2{flex-shrink:0;font-size:1.85rem;margin:0 0 .6rem}.orientation-guard p{flex-shrink:0;font-size:1.15rem;font-weight:500;color:var(--muted-ink);max-width:22rem;margin:0;line-height:1.4}.roadmap-note{margin-top:2.4rem;font-size:.8rem;font-weight:800;color:var(--barely-there-ink);letter-spacing:.1em;text-transform:uppercase}@keyframes rotate-device{0%,10%{transform:rotate(0)}40%,60%{transform:rotate(-90deg)}90%,to{transform:rotate(0)}}@keyframes resize-box{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.1);opacity:1}}
