@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Crimson+Pro:ital,wght@0,400;0,600;1,500&family=Inter:wght@500;650;750&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#070817;--night-2:#0c1026;--raised:#111735;--violet:#6f5ca8;--moon:#f8edc9;--paper:#f3e4b9;--paper-deep:#dfc78f;--ink:#2c211c;--gold:#d9b45b;--gold-light:#f1d98d;--green:#334f3d;--line:#f1d98d47;--card-w:clamp(58px,7vw,82px);--card-h:calc(var(--card-w) * 1.38);--card-step:34px;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--moon);background:radial-gradient(circle at 50% -10%,#6f5ca857,transparent 40%),linear-gradient(180deg,var(--night-2),var(--night));margin:0}button{font:inherit}.page-shell{width:min(100% - 24px,1320px);margin:auto;padding:16px 0 26px}.brand-header{border-bottom:1px solid var(--line);grid-template-columns:185px 1fr 190px;align-items:center;gap:18px;padding-bottom:14px;display:grid}.brand-header img{width:100%;height:auto;display:block}.title-lockup{align-items:baseline;gap:10px;display:flex}.title-lockup p,.eyebrow{color:var(--gold-light);letter-spacing:.15em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:750}.title-lockup h1{margin:0;font:700 clamp(2.1rem,4vw,3.25rem)/.9 Cormorant Garamond,Georgia,serif}.header-note{color:var(--paper-deep);text-align:right;margin:0;font:italic 1rem Crimson Pro,Georgia,serif}.peak-banner{border:1px solid var(--line);background:#152039;border-radius:24px;min-height:230px;margin-top:16px;position:relative;overflow:hidden}.peak-banner>img{object-fit:cover;object-position:18% 30%;filter:saturate(.82)brightness(.68);width:100%;height:100%;position:absolute;inset:0}.peak-banner:after{content:"";background:linear-gradient(90deg,#07081733,#070817e0 72%);position:absolute;inset:0}.peak-banner>div{z-index:1;width:min(48%,570px);margin-left:auto;padding:48px 38px;position:relative}.peak-banner span{color:var(--gold-light);letter-spacing:.15em;text-transform:uppercase;font-size:.72rem;font-weight:750}.peak-banner h2{margin:5px 0 8px;font:700 clamp(2rem,4vw,3.35rem)/.9 Cormorant Garamond,Georgia,serif}.peak-banner p{color:var(--paper-deep);margin:0;font:500 1.08rem/1.35 Crimson Pro,Georgia,serif}.puzzlemaster-card{border:1px solid var(--line);background:linear-gradient(#334f3de6,#111735f2);border-radius:20px;grid-row:1/4;overflow:hidden}.romeo-crop{height:260px;overflow:hidden}.puzzlemaster-card>div:last-child{padding:16px}.puzzlemaster-card span,.progress-panel span{color:var(--gold-light);letter-spacing:.13em;text-transform:uppercase;font-size:.66rem;font-weight:750;display:block}.puzzlemaster-card strong{margin-top:6px;font:600 1.05rem/1.28 Crimson Pro,Georgia,serif;display:block}.progress-panel{border:1px solid var(--line);background:#111735d1;border-radius:18px;grid-template-columns:repeat(4,minmax(75px,1fr)) minmax(300px,2.5fr);gap:8px;padding:12px;display:grid}.progress-panel>div:not(.foundations){background:#f8edc90d;border-radius:12px;place-content:center;min-height:54px;padding:6px 9px;display:grid}.progress-panel strong{margin-top:2px;font:700 1.3rem Cormorant Garamond,Georgia,serif}.foundations{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.foundation{color:#f8edc980;aspect-ratio:1;background:#07081773;border:1px dashed #f1d98d57;border-radius:50%;place-items:center;min-width:0;display:grid}.foundation[data-complete=true]{color:var(--ink);background:linear-gradient(145deg,var(--gold-light),var(--gold));border-style:solid}.foundation strong{font:750 .58rem Inter,sans-serif}.controls{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.controls button,.terminal button{border:1px solid var(--line);min-height:46px;color:var(--moon);cursor:pointer;background:#111735e6;border-radius:12px;font-weight:700}.controls .deal{color:var(--ink);border-color:var(--gold-light);background:linear-gradient(135deg,var(--gold-light),var(--gold))}.controls .deal span{background:#2c211c26;border-radius:50%;place-items:center;min-width:22px;height:22px;margin-left:5px;display:inline-grid}kbd{opacity:.65;border:1px solid;border-radius:4px;padding:1px 4px;font-size:.68em}button:disabled{cursor:not-allowed;opacity:.4}.rotate-phone{display:none}.tableau-wrap{border:1px solid var(--line);background:radial-gradient(circle at 50% 0,#6f5ca833,#0000 35%),#07081780;border-radius:22px;grid-column:2;min-width:0;padding:10px}.status-strip{text-align:center;background:#6f5ca833;border-radius:12px;place-items:center;min-height:40px;margin:0 0 9px;padding:7px 12px;display:grid}.stalled-note{color:var(--ink);text-align:center;background:var(--paper-deep);border-radius:10px;margin:0 0 8px;padding:8px}.tableau{grid-template-columns:repeat(10,minmax(0,1fr));align-items:start;gap:6px;width:100%;display:grid}.tableau-column{background:linear-gradient(#334f3db8,#11173559);border:1px solid #f1d98d1f;border-radius:12px;min-width:0;min-height:560px;padding:5px}.tableau-column[data-hint-destination=true]{box-shadow:inset 0 0 0 3px var(--gold-light)}.column-heading{min-height:26px;color:var(--paper-deep);justify-content:space-between;align-items:center;padding:0 3px;font-size:.58rem;display:flex}.column-heading strong{width:20px;height:20px;color:var(--ink);background:var(--gold);border-radius:50%;place-items:center;display:grid}.card-stack{flex-direction:column;align-items:center;min-height:500px;display:flex}.card{width:100%;max-width:var(--card-w);aspect-ratio:.71;border:1px solid #2c211c57;border-radius:8px;min-width:0;padding:0;position:relative}.card+.card{margin-top:calc(var(--card-h) * -1 + var(--card-step))}.tableau-column[data-density=compact]{--card-step:27px}.tableau-column[data-density=tight]{--card-step:22px}.card-face{color:#17131b;background:linear-gradient(145deg,#fff9e7,var(--paper));cursor:pointer;box-shadow:0 2px 8px #00000052}.card-face:hover{transform:translateY(-2px)}.card-face[data-selected=true]{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-light),0 4px 12px #0006}.card-face[data-hint-source=true]{border-color:#b9d6a7;box-shadow:0 0 0 3px #789a70}.rank{font:750 clamp(.8rem,1.4vw,1.12rem) Inter,sans-serif;position:absolute;top:4px;left:5px}.rank.bottom{inset:auto 5px 4px auto;transform:rotate(180deg)}.suit{color:#1c1a21;place-items:center;height:100%;font-size:clamp(1.05rem,2.1vw,1.75rem);display:grid}.card-back{color:var(--gold-light);background:repeating-linear-gradient(45deg,#d9b45b1f 0 4px,transparent 4px 9px),radial-gradient(circle,var(--green),#172b2b);place-items:center;display:grid;box-shadow:inset 0 0 0 3px #162333,0 2px 7px #00000052}.card-back span{aspect-ratio:1;border:1px solid var(--gold);border-radius:50%;place-items:center;width:56%;display:grid}.empty-column{width:100%;max-width:var(--card-w);aspect-ratio:.71;color:var(--paper-deep);cursor:pointer;background:#0708174d;border:2px dashed #f1d98d59;border-radius:8px}.instructions{color:var(--paper-deep);grid-column:2;margin:0 4px;font:500 .85rem/1.4 Crimson Pro,Georgia,serif}.terminal{z-index:20;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#070817d6;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.terminal>div{border:1px solid var(--gold);width:min(100%,520px);color:var(--ink);text-align:center;background:linear-gradient(145deg,var(--moon),var(--paper-deep));border-radius:24px;padding:30px}.terminal>div>span{color:#775821;font-size:2.2rem}.terminal h2{margin:6px 0;font:700 2.3rem/1 Cormorant Garamond,Georgia,serif}.terminal p:not(.eyebrow){font:500 1.05rem Crimson Pro,Georgia,serif}.terminal .eyebrow{color:#775821}.completion-summary{color:#60491f;font-weight:600!important}.stats-list{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.stats-list>div{background:#ffffff38;border:1px solid #7758213d;border-radius:12px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.stats-list dt{font:600 .92rem Crimson Pro,Georgia,serif}.stats-list dd{margin:0;font-weight:750}.dialog-actions{justify-content:center;gap:9px;display:flex}.terminal button{color:var(--moon);background:var(--green);padding:10px 16px}footer{color:var(--paper-deep);justify-content:center;align-items:center;gap:8px;padding-top:13px;font:italic .92rem Crimson Pro,Georgia,serif;display:flex}footer img{width:17px;height:17px}button:focus-visible,a:focus-visible,.card-face:focus-visible,.empty-column:focus-visible{outline:3px solid var(--gold-light);outline-offset:3px}@media (width<=980px){.game-shell{grid-template-columns:180px 1fr}.romeo-crop{height:205px}.progress-panel{grid-template-columns:repeat(4,1fr)}.foundations{grid-column:1/-1}.controls{grid-template-columns:repeat(4,1fr)}.tableau-column{min-height:500px}}@media (width<=600px) and (orientation:portrait){.game-public-page .game-public-nav{min-height:44px;padding:.35rem .55rem}.game-public-page .game-public-nav p{display:none}.page-shell{width:min(100% - 20px,1320px);padding:12px 0 20px}.brand-header{grid-template-columns:1fr;gap:7px;padding-bottom:10px}.brand-header>a{justify-self:center;width:180px}.title-lockup{justify-content:center}.title-lockup p{font-size:.58rem}.title-lockup h1{font-size:2rem}.header-note,.peak-banner,.game-shell,footer{display:none}.rotate-phone{border:1px solid var(--line);text-align:left;background:radial-gradient(circle at 20% 20%,#6f5ca84d,#0000 46%),linear-gradient(145deg,#334f3dcc,#111735f5);border-radius:24px;grid-template-columns:auto 1fr;align-items:center;gap:16px;min-height:calc(100svh - 172px);margin-top:14px;padding:clamp(24px,8vw,42px);display:grid}.rotate-phone-icon{border:1px solid var(--gold);width:62px;height:62px;color:var(--gold-light);border-radius:50%;place-items:center;font-size:2.6rem;line-height:1;display:grid}.rotate-phone p{color:var(--paper-deep);margin:0;font:500 1rem/1.4 Crimson Pro,Georgia,serif}.rotate-phone p:first-child{color:var(--gold-light);letter-spacing:.14em;text-transform:uppercase;font:750 .65rem Inter,sans-serif}.rotate-phone h2{margin:5px 0 8px;font:700 clamp(2rem,10vw,3rem)/.9 Cormorant Garamond,Georgia,serif}.rotate-phone .rotate-phone-rules{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.rotate-phone .rotate-phone-rules strong{color:var(--gold-light)}.portrait-stats-button{border:1px solid var(--gold);min-height:44px;color:var(--night);background:linear-gradient(135deg,var(--gold-light),var(--gold));cursor:pointer;border-radius:12px;margin-top:18px;padding:9px 16px;font-weight:750}.terminal>div{padding:22px 14px}.dialog-actions{flex-direction:column}.stats-list{grid-template-columns:1fr;margin:14px 0}}@media (orientation:landscape) and (height<=520px) and (width<=960px){:root{--card-w:calc((100vw - 62px) / 10);--card-h:calc(var(--card-w) * 1.38);--card-step:clamp(22px,6.4vh,28px)}html,body{min-width:0}.game-public-page .game-public-nav{grid-template-columns:1fr 1fr;gap:.5rem;min-height:28px;padding:.2rem .55rem;font-size:.64rem;line-height:1}.game-public-page .game-public-nav p{display:none}.page-shell{width:100%;padding:3px 5px 4px}.brand-header,.peak-banner,.puzzlemaster-card,.foundations,.instructions,footer,.rotate-phone{display:none}.game-shell{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:3px;margin-top:0;display:grid}.progress-panel{background:0 0;border:0;grid-area:1/2;justify-content:flex-end;gap:3px;min-height:0;padding:0;display:flex}.progress-panel>div.progress-stat:not(.foundations){background:#111735d1;border:1px solid #f1d98d2e;border-radius:7px;align-items:baseline;gap:3px;min-height:23px;padding:2px 7px;display:flex}.progress-panel>div.progress-hidden:not(.foundations),.progress-panel>div.progress-moves:not(.foundations){display:none}.progress-panel span{letter-spacing:.08em;font-size:.49rem}.progress-panel strong{margin:0;font:700 .76rem Cormorant Garamond,Georgia,serif}.controls{grid-area:1/1;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;display:grid}.controls button{border-radius:6px;min-height:23px;padding:1px 4px;font-size:.58rem;line-height:1}.controls kbd,.controls .control-rules{display:none}.controls .deal span{min-width:15px;height:15px;margin-left:2px}.tableau-wrap{border-radius:10px;grid-column:1/-1;min-width:0;padding:3px}.status-strip{border-radius:6px;min-height:21px;margin:0 0 3px;padding:2px 8px;font-size:.58rem;line-height:1.1}.stalled-note{margin:0 0 3px;padding:2px 5px;font-size:.58rem}.tableau{grid-template-columns:repeat(10,minmax(0,1fr));gap:2px}.tableau-column{border-radius:5px;min-height:calc(100svh - 61px);padding:2px}.column-heading{min-height:14px;padding:0 1px;font-size:.42rem}.column-heading strong{width:13px;height:13px;font-size:.46rem}.column-heading span{display:none}.card-stack{min-height:calc(100svh - 79px)}.card{max-width:var(--card-w);border-radius:4px}.rank{font-size:clamp(.54rem,2.35vw,.76rem);top:2px;left:3px}.rank.bottom{bottom:2px;right:3px}.suit{font-size:clamp(.72rem,3vw,1rem)}.card+.card{margin-top:calc(-140.845% + var(--card-step))}.tableau-column[data-density=compact]{--card-step:clamp(20px,5.8vh,24px)}.tableau-column[data-density=tight]{--card-step:clamp(18px,5.2vh,22px)}.terminal{padding:8px}.terminal>div{width:min(100%,430px);padding:12px}.terminal h2{font-size:1.65rem}.terminal p:not(.eyebrow){margin:6px 0;font-size:.86rem}.stats-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:7px 0}.stats-list>div{gap:2px;padding:5px 7px;display:grid}.stats-list dt{font-size:.72rem}.stats-list dd{font-size:.76rem}.dialog-actions{flex-direction:row}.terminal button{min-height:34px;padding:6px 10px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.card-face:hover{transform:none}}.page-shell{flex-direction:column;width:min(100% - 18px,1320px);min-height:100dvh;padding:2px 0 0;display:flex}.game-header{z-index:10;border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:40px;padding:2px 3px 5px;display:grid;position:relative}.game-paths{align-items:center;gap:9px;min-width:0;display:flex}.brand-link{flex:0 90px}.brand-link img{width:100%;height:auto;display:block}.game-room-link{color:var(--gold-light);font-size:.72rem;font-weight:750;text-decoration:none}.game-header .title-lockup{align-items:center;gap:6px}.game-header .title-lockup>img{width:28px;height:28px}.game-header .title-lockup p{font-size:.5rem}.game-header .title-lockup h1{font-size:1.4rem}.game-menu{justify-self:end;position:relative}.game-menu>summary{border:1px solid var(--line);color:var(--gold-light);cursor:pointer;background:#111735e6;border-radius:999px;padding:6px 10px;font-size:.66rem;font-weight:750;list-style:none}.game-menu>summary::-webkit-details-marker{display:none}.game-menu-popover{border:1px solid var(--line);width:min(340px,100vw - 18px);color:var(--moon);background:#0c1026fa;border-radius:14px;padding:11px;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 18px 50px #00000080}.game-menu-popover p{gap:4px;margin:0;display:grid}.game-menu-popover p strong{font:700 1rem Cormorant Garamond,Georgia,serif}.game-menu-popover p span{color:var(--paper-deep);font:.78rem/1.4 Crimson Pro,Georgia,serif}.game-menu-popover>div{grid-template-columns:1fr 1fr;gap:6px;margin-top:9px;display:grid}.game-menu-popover button{border:1px solid var(--line);min-height:31px;color:var(--moon);cursor:pointer;background:#334f3db8;border-radius:9px;font-size:.68rem;font-weight:750}.game-menu-popover small{color:var(--paper-deep);margin-top:8px;font-size:.61rem;display:block}.game-shell{grid-template-columns:190px minmax(0,1fr);gap:4px 6px;margin-top:5px;display:grid}.puzzlemaster-card{border-radius:11px;grid-area:1/1;grid-template-columns:56px 1fr;min-width:0;height:48px;display:grid}.romeo-crop{height:46px}.romeo-crop img{object-fit:cover;object-position:center 18%;width:100%;height:100%;transform:none}.puzzlemaster-card>div:last-child{align-content:center;min-width:0;padding:5px 7px;display:grid}.puzzlemaster-card span{font-size:.55rem}.puzzlemaster-card strong{white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font:700 .86rem/1.05 Cormorant Garamond,Georgia,serif;display:block;overflow:hidden}.progress-panel{border-radius:11px;grid-area:1/2;grid-template-columns:repeat(4,minmax(62px,1fr)) minmax(230px,2.2fr);gap:4px;min-height:48px;padding:3px}.progress-panel>div:not(.foundations){border-radius:8px;min-height:40px;padding:3px 6px}.progress-panel span{letter-spacing:.1em;font-size:.68rem}.progress-panel strong{font-size:1.15rem}.foundations{gap:3px}.foundation strong{font-size:.46rem}.controls{grid-area:2/1/auto/-1;grid-template-columns:repeat(5,1fr);gap:4px}.controls button{border-radius:8px;min-height:30px;font-size:.68rem}.tableau-wrap{border-radius:14px;grid-area:3/1/auto/-1;padding:5px}.status-strip{border-radius:8px;min-height:23px;margin-bottom:4px;padding:2px 8px;font-size:.68rem}.tableau{gap:4px}.tableau-column{border-radius:8px;min-height:calc(100dvh - 174px);padding:3px}.column-heading{min-height:20px}.card-stack{min-height:calc(100dvh - 202px)}.instructions{display:none}@media (width<=600px) and (orientation:portrait){body{height:100svh;overflow:hidden}.page-shell{width:min(100% - 8px,1320px);height:100svh;min-height:0;padding:3px 0 1px}.game-header{gap:5px;min-height:33px;padding:0 2px 3px}.game-paths{gap:5px}.brand-link{flex-basis:72px}.game-room-link{font-size:.55rem}.game-header .title-lockup{gap:3px}.game-header .title-lockup>img{width:21px;height:21px}.game-header .title-lockup p{display:none}.game-header .title-lockup h1{font-size:1rem}.game-menu>summary{min-height:24px;padding:3px 6px;font-size:.55rem}.game-shell{display:none}.rotate-phone{border-radius:17px;min-height:calc(100svh - 41px);margin-top:4px;padding:clamp(18px,6vw,28px);display:grid}.rotate-phone-icon{width:52px;height:52px;font-size:2.2rem}.rotate-phone h2{font-size:clamp(1.8rem,9vw,2.5rem)}.rotate-phone .rotate-phone-rules{margin-top:11px;padding-top:10px}.portrait-stats-button{min-height:38px;margin-top:12px}}@media (orientation:landscape) and (height<=520px) and (width<=960px){.page-shell{width:100%;height:100dvh;min-height:0;padding:2px 5px 3px}.game-header{min-height:27px;padding:0 2px 2px}.brand-link{flex-basis:68px}.game-room-link{font-size:.54rem}.game-header .title-lockup>img{width:20px;height:20px}.game-header .title-lockup p{display:none}.game-header .title-lockup h1{font-size:.96rem}.game-menu>summary{min-height:22px;padding:2px 6px;font-size:.52rem}.game-shell{grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:3px;margin-top:2px}.puzzlemaster-card,.foundations,.instructions,.rotate-phone{display:none}.progress-panel{grid-area:1/2}.controls{grid-area:1/1;grid-template-columns:repeat(5,minmax(0,1fr))}.progress-panel{height:23px;min-height:0}.progress-panel>div.progress-stat:not(.foundations){min-height:23px}.progress-panel span{letter-spacing:.08em;font-size:.48rem}.progress-panel strong{font-size:.9rem}.controls button{min-height:23px}.tableau-wrap{grid-area:2/1/auto/-1}}
