@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#eef8f8;background:#061620;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #071b2b;--navy: #0a2636;--panel: rgba(12, 43, 57, .88);--line: rgba(190, 231, 230, .16);--aqua: #5bd2cf;--aqua-bright: #8af4e8;--gold: #f4c95d;--white: #f7f3e9;--muted: #a9c1c5}*{box-sizing:border-box}html{min-width:320px;background:#061620}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(43,160,165,.18),transparent 32rem),linear-gradient(145deg,#061620,#092534 52%,#06151f)}button,input,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.wallpaper-layer{--wallpaper-dim: .3;position:fixed;z-index:0;inset:0;background-image:var(--wallpaper-desktop);background-position:center;background-size:cover;background-repeat:no-repeat;pointer-events:none}.wallpaper-layer:after{content:"";position:absolute;inset:0;background:rgba(2,13,20,var(--wallpaper-dim));box-shadow:inset 0 0 18vw #01080d57}.wallpaper-yacht-deck{--wallpaper-dim: .12}.wallpaper-captains-desk{--wallpaper-dim: .28}.wallpaper-grand-hotel{--wallpaper-dim: .3}.wallpaper-ships-deck{--wallpaper-dim: .34}.wallpaper-walnut-table{--wallpaper-dim: .36}.app-shell{position:relative;z-index:1;width:min(1500px,100%);margin:0 auto;min-height:100vh;padding:20px clamp(14px,3vw,42px) 16px}.app-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:0 4px 18px;border-bottom:1px solid var(--line)}.brand-kicker,.eyebrow{margin:0 0 5px;color:var(--aqua);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.brand-row{display:flex;align-items:center;gap:10px}.brand-mark{display:grid;width:31px;height:31px;place-items:center;border:1px solid rgba(138,244,232,.7);border-radius:50%;color:var(--aqua-bright);font-family:Libre Caslon Display,Georgia,serif;font-size:1.05rem}.brand-name{position:relative;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.65rem,4vw,2.35rem);letter-spacing:.08em;line-height:.8}.brand-trademark{position:absolute;top:0;left:calc(100% + .08em);font-family:inherit;font-size:.23em;font-weight:400;letter-spacing:0;line-height:1;transform:translateY(-24%)}.game-over-wordmark{position:relative;display:inline-block;padding-right:.34em;white-space:nowrap}.game-over-wordmark .brand-trademark{top:.02em;left:calc(100% - .32em);font-size:.32em;transform:translateY(-28%)}.mode-wordmark{position:relative;display:inline-block;padding-right:.18em;white-space:nowrap}.mode-wordmark .brand-trademark{top:.04em;left:calc(100% - .36em);font-size:.3em;transform:translateY(-18%)}.header-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px 16px}.global-header-actions{align-items:center}.global-account{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.76rem;white-space:nowrap}.global-account strong{color:var(--white)}.global-account small{color:#d9bd78;font-size:inherit;text-transform:none}.global-account .text-button{margin-left:2px;padding-left:13px;border-left:1px solid rgba(190,231,230,.16);transition:color .16s ease,opacity .16s ease}.global-header-divider{width:1px;height:20px;background:var(--line)}.global-header-divider.is-context-only{display:none}.text-button{border:0;border-bottom:1px solid transparent;padding:5px 1px;color:var(--muted);background:transparent;cursor:pointer;font-size:.78rem;font-weight:600}.text-button:hover,.text-button:focus-visible{color:var(--white);border-color:var(--aqua);outline:0}.global-account .text-button:hover{color:var(--white);border-left-color:#bee7e629;border-bottom-color:transparent;background:transparent}.global-account .text-button:focus-visible{color:var(--white);border-left-color:#bee7e629;border-bottom-color:transparent;background:transparent;outline:1px solid rgba(138,244,232,.42);outline-offset:3px}.game-layout{display:grid;grid-template-columns:minmax(430px,1fr) minmax(310px,410px);align-items:start;gap:clamp(24px,4vw,64px);padding:clamp(24px,4vw,52px) 0}.board-region{min-width:0}.board-shell{position:relative;width:min(100%,790px);aspect-ratio:1;margin:0 auto;overflow:visible;isolation:isolate}.board-image{filter:drop-shadow(0 28px 45px rgba(0,0,0,.38));position:absolute;z-index:0;left:var(--board-offset-x, -2.65%);top:var(--board-offset-y, -1.55%);width:calc(var(--board-scale, 1.058) * 100%);height:calc(var(--board-scale, 1.058) * 100%);object-fit:contain;-webkit-user-select:none;user-select:none}.board-ripple-layer{position:absolute;z-index:1;left:var(--board-offset-x, -2.65%);top:var(--board-offset-y, -1.55%);width:calc(var(--board-scale, 1.058) * 100%);height:calc(var(--board-scale, 1.058) * 100%);overflow:hidden;border-radius:50%;isolation:isolate;opacity:0;pointer-events:none}.board-ripple-layer.is-active{opacity:1;animation:board-ripple-visibility var(--ripple-duration, 2.2s) ease-out both}.board-ripple-canvas,.board-ripple-fallback{position:absolute;inset:0;width:100%;height:100%;border-radius:50%;pointer-events:none}.board-ripple-canvas{display:block}.board-ripple-fallback{display:none;background:radial-gradient(circle,#e6fffd2b,#d7fbfa11 38%,#cbf4f400 72%)}.board-ripple-layer.is-fallback .board-ripple-canvas{display:none}.board-ripple-layer.is-fallback .board-ripple-fallback{display:block;animation:board-ripple-fallback var(--ripple-duration, 2.2s) ease-out both}.board-piece{position:absolute;z-index:3;width:7.3%;aspect-ratio:1;padding:0;border:0;border-radius:50%;background:transparent;overflow:visible;isolation:isolate;transition:filter .15s ease,transform .15s ease}.board-piece:before{content:"";position:absolute;z-index:0;inset:-55%;border-radius:50%;background:radial-gradient(circle,#8af4e894,#5bd2cf47 32%,#5bd2cf00 72%);opacity:0;pointer-events:none;transform:scale(.72);transition:opacity .15s ease,transform .15s ease}.piece-wake{position:absolute;z-index:0;left:50%;top:50%;width:115%;height:82%;border-radius:50%;background:radial-gradient(ellipse at 5% 50%,#ffffff1a,#effffd0e 34%,#daf8f600 72%);opacity:0;pointer-events:none;transform:rotate(var(--wake-angle, 0deg)) translateY(-50%);transform-origin:0 0}.piece-wake i{position:absolute;left:0;width:100%;height:18%;border-radius:70% 35% 35% 70%;background:linear-gradient(90deg,#ffffff3d,#f5fffe30 22%,#dcfaf81a 54%,#cbf2f000);transform-origin:0 50%}.piece-wake i:first-child{top:24%;transform:rotate(-9deg) scaleY(.72)}.piece-wake i:last-child{bottom:24%;transform:rotate(9deg) scaleY(.72)}.board-piece:not(:disabled){cursor:pointer}.board-piece:disabled{opacity:1}.board-piece img{position:relative;z-index:1;display:block;width:100%;height:100%;border-radius:50%;-webkit-user-select:none;user-select:none;transform:scale(var(--piece-visual-scale, 1));transform-origin:center}.piece-coordinate{position:absolute;z-index:2;left:50%;top:50%;width:55%;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(30,49,52,.72);border-radius:50%;background:#f3ead7f7;box-shadow:inset 0 1px 2px #ffffff94,0 1px 2px #0000002e;color:#142b30;font-size:clamp(9px,1.35vw,16px);font-weight:850;line-height:1;letter-spacing:-.025em;text-shadow:0 1px rgba(255,255,255,.48);text-transform:lowercase;transform:translate(-50%,-50%);pointer-events:none}.piece-blue .piece-coordinate{border-color:#075465cc;background:#efead8f7;color:#074457}.piece-white .piece-coordinate{border-color:#414240cc;background:#f8f1e1f7;color:#252d2e}.kraken-piece .piece-coordinate{border-color:#7b5e0dd1;background:#f8d136f7;color:#31312a}.board-piece:not(:disabled):hover{transform:scale(1.08)}.board-piece.is-selected{transform:scale(1.13)}.board-piece.is-selected:before{opacity:.88;transform:scale(1)}.board-piece.has-wake .piece-wake{opacity:1}.board-piece.is-wake-fading .piece-wake{animation:piece-wake-fade .34s ease-out forwards}.board-piece.kraken-piece .piece-wake{width:125%;height:88%}.board-piece.is-animating{z-index:7}.board-piece.is-displaced{z-index:8}.kraken-piece{z-index:4}@keyframes piece-wake-fade{0%{opacity:1}to{opacity:0}}@keyframes board-ripple-visibility{0%,76%{opacity:1}to{opacity:0}}@keyframes board-ripple-fallback{0%{opacity:0;transform:scale(.82)}18%{opacity:1}to{opacity:0;transform:scale(1)}}.intersection{position:absolute;z-index:5;width:6.2%;aspect-ratio:1;padding:0;border:0;border-radius:50%;background:transparent;pointer-events:none}.intersection:disabled{opacity:1}.intersection.is-actionable{pointer-events:auto;cursor:pointer}.intersection.legal-move{border:max(2px,.28vw) solid #ecfffb;background:#34d6c875;box-shadow:0 0 0 4px #26dac829,0 0 16px #75fff0d1}.intersection.legal-knock{border:max(2px,.28vw) solid #fff4bb;background:#f4703d4d;box-shadow:0 0 0 4px #f4c95d33,0 0 18px #ffc346e6}.intersection.legal-move:hover,.intersection.legal-knock:hover{transform:scale(1.13)}.intersection.show-coordinate.is-occupied.legal-knock{background:#f4703d1a}.intersection .coordinate-ghost{position:absolute;left:50%;top:50%;width:75%;aspect-ratio:1;display:grid;place-items:center;border:1px solid rgba(9,47,56,.65);border-radius:50%;background:#ebf9f770;box-shadow:0 1px 4px #0000001f;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#102e35;font-size:clamp(8px,1.05vw,12px);font-weight:800;line-height:1;text-shadow:0 1px rgba(255,255,255,.72);text-transform:lowercase;transform:translate(-50%,-50%);opacity:.82;pointer-events:none}.race-token-layer{position:absolute;inset:0;z-index:6;overflow:visible;pointer-events:none;isolation:isolate;transform:translateZ(0)}.race-token{position:absolute;width:5.2%;min-width:18px;aspect-ratio:1;border-radius:50%;overflow:visible;isolation:isolate}.race-token:before{content:"";position:absolute;z-index:0;inset:-65%;border-radius:50%;background:radial-gradient(circle,var(--token-glow-core) 0%,var(--token-glow-mid) 32%,rgba(0,0,0,0) 72%);opacity:0;pointer-events:none;transform:scale(.72);transition:opacity .14s ease,transform .18s ease}.race-token.white-token{--token-glow-core: rgba(255, 255, 255, .72);--token-glow-mid: rgba(255, 255, 255, .3)}.race-token.blue-token{--token-glow-core: rgba(178, 255, 250, .74);--token-glow-mid: rgba(70, 220, 226, .32)}.race-token img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.58))}.race-token.is-moving:before{opacity:.62;transform:scale(.9)}.race-token.is-pulsing:before{opacity:.9;transform:scale(1)}.board-legend{display:flex;width:min(100%,790px);margin:calc(12px + var(--board-visual-bottom-overhang, 0%)) auto 0;justify-content:center;flex-wrap:wrap;gap:12px 22px;color:var(--muted);font-size:.76rem}.board-legend span{display:flex;align-items:center;gap:7px}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.move-dot{background:var(--aqua-bright);box-shadow:0 0 7px var(--aqua)}.knock-dot{background:var(--gold);box-shadow:0 0 7px var(--gold)}.control-column{display:flex;min-width:0;flex-direction:column;gap:14px}.status-panel{padding:0 2px 16px;border-bottom:1px solid var(--line)}.status-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.status-heading-row .eyebrow{margin:0}.presentation-preferences{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}.display-settings-content{justify-content:flex-start;margin-top:10px}.wallpaper-select{display:flex;min-height:34px;align-items:center;gap:7px;padding:5px 8px 5px 10px;border:1px solid rgba(138,244,232,.28);border-radius:999px;color:var(--muted);background:#041922b8;font-size:.68rem;font-weight:700;white-space:nowrap}.wallpaper-select select{max-width:132px;border:0;color:var(--aqua-bright);background:#0b2b39;font-weight:700;cursor:pointer}.wallpaper-select select:focus-visible{outline:1px solid var(--aqua-bright);outline-offset:2px}.highlight-toggle{min-height:34px;padding:5px 10px;border:1px solid rgba(138,244,232,.28);border-radius:999px;color:var(--aqua-bright);background:#45c8c314;font:inherit;font-size:.68rem;font-weight:800;letter-spacing:.06em;white-space:nowrap;cursor:pointer}.highlight-toggle:hover{background:#45c8c329}.highlight-toggle[aria-pressed=false]{color:var(--muted);background:#ffffff09}.status-panel h1{margin:0;max-width:16ch;color:#fffdf6;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.9rem,3.2vw,3rem);font-weight:400;line-height:1.06}.notice{margin:12px 0 0;color:#d5e7e7;font-size:.9rem;line-height:1.5}.score-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px}.score-strip>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1px 10px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#ffffff09}.score-strip span{color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.score-strip strong{font-size:1.3rem}.score-strip small{color:var(--muted);font-size:.7rem;font-weight:500}.score-strip em{grid-column:1 / -1;color:var(--muted);font-size:.64rem;font-style:normal}.score-strip>div.clock-active{border-color:#8af4e8b3;background:#5bd2cf1f}.score-strip .clock-time{grid-column:1 / -1;font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700;color:var(--white)}.score-strip>div.clock-warning-amber{border-color:#ffc665db;background:linear-gradient(135deg,#64411adb,#232628e6);box-shadow:0 0 0 1px #ffc55b2e,0 0 18px #e69b3a47}.score-strip>div.clock-warning-red,.score-strip>div.clock-warning-final{border-color:#ff7c76eb;background:linear-gradient(135deg,#71202be6,#281821f0);box-shadow:0 0 0 1px #ff837b3d,0 0 21px #dc454e61}.score-strip .clock-time.clock-amber{color:#ffe3ab;font-size:1.2rem;font-weight:800}.score-strip .clock-time.clock-red,.score-strip .clock-time.clock-final{color:#ffe0dc;font-size:1.3rem;font-weight:850}.score-strip>div.clock-warning-final{animation:clock-card-pulse 1.6s ease-in-out infinite}.score-strip>div.point-earned{position:relative;z-index:1;animation:point-card-earned .65s cubic-bezier(.22,.8,.3,1) both}.score-strip>div.point-earned strong{animation:point-number-earned .65s ease-out both}@keyframes point-card-earned{0%{transform:scale(1);box-shadow:0 0 #f7d38400}28%{transform:scale(1.035);box-shadow:0 0 18px #f7d38457,0 0 0 1px #f7d38461}to{transform:scale(1);box-shadow:0 0 #f7d38400}}@keyframes point-number-earned{0%,to{color:inherit;text-shadow:none}30%{color:#fff4d9;text-shadow:0 0 9px rgba(255,222,151,.55)}}@keyframes point-card-glow{0%,to{box-shadow:0 0 #f7d38400}35%{box-shadow:0 0 16px #f7d3844d,0 0 0 1px #f7d38459}}@keyframes clock-card-pulse{50%{box-shadow:0 0 0 1px #ff837b4d,0 0 29px #dc454e94}}.dice-panel,.control-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dice-panel{padding:14px 16px}.control-card{padding:18px}.analysis-editor-intro,.analysis-position-settings,.analysis-play-controls,.analysis-knock-options{display:grid;gap:14px}.analysis-editor-intro .action-button{justify-self:start}.analysis-edit-board .board-piece{touch-action:none}.analysis-edit-board .board-piece:not(:disabled){cursor:grab}.analysis-edit-board .board-piece:not(:disabled):active{cursor:grabbing;filter:drop-shadow(0 5px 8px rgba(0,0,0,.45))}.analysis-edit-board .board-piece.is-editor-dragging{z-index:20}.analysis-edit-board .board-piece:not(:disabled):hover,.analysis-edit-board .board-piece.is-selected{transform:none}.analysis-edit-board .board-piece:before{display:none}.analysis-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analysis-setting-grid label,.analysis-dice label{display:grid;gap:5px;color:var(--muted);font-size:.7rem;font-weight:700;text-transform:uppercase}.analysis-setting-grid select,.analysis-dice select{min-width:0;padding:9px;border:1px solid var(--line);border-radius:8px;color:var(--text);background:#0c303d;font:inherit}.analysis-dice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}.analysis-dice legend{padding:0 5px;color:var(--aqua-bright);font-size:.72rem;font-weight:700}.analysis-errors{padding:10px 12px;border:1px solid rgba(255,157,143,.45);border-radius:9px;color:#ffb4a8;background:#60181447;font-size:.78rem}.analysis-errors ul{margin:7px 0 0;padding-left:18px}.analysis-import-panel summary{color:var(--white);font-size:1rem;font-weight:700;cursor:pointer}.analysis-import-content{display:grid;gap:10px;margin-top:14px}.analysis-import-content label{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.analysis-import-content textarea{width:100%;min-height:150px;resize:vertical;padding:10px;border:1px solid var(--line);border-radius:9px;color:var(--text);background:#071f2a;font:.72rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.analysis-import-error{margin:0;color:#ffb4a8;font-size:.78rem;line-height:1.4}.analysis-play-controls .section-heading-row{align-items:flex-start}.analysis-knock-options>.action-button{width:100%}.analysis-knock-options-results{display:grid;gap:12px}.analysis-knock-options-results h3,.analysis-knock-options-results h4,.analysis-knock-options-results p{margin:0}.analysis-knock-options-results h3{color:var(--gold);font-size:.96rem;letter-spacing:.04em}.analysis-knock-group{display:grid;gap:7px}.analysis-knock-group h4{color:var(--muted);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.analysis-knock-group ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.analysis-knock-group li{padding:9px 10px;border:1px solid rgba(198,166,100,.24);border-radius:10px;background:#03131d6b}.analysis-knock-group li.is-played{border-color:#d6b25fb8}.analysis-knock-group li.is-previewed{border-color:#8af4e8b8;background:#114c527a;box-shadow:inset 0 0 0 1px #8af4e81f}.analysis-knock-option-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.analysis-knock-option-heading code{color:var(--ivory);font-family:var(--font-body);font-size:.9rem}.analysis-knock-option-heading strong{padding:2px 6px;border-radius:999px;background:#d6b25f29;color:var(--gold);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase}.analysis-knock-group li>p{margin-top:4px;color:var(--muted);font-size:.78rem;line-height:1.35}.analysis-knock-group .text-button{margin-top:5px}.analysis-knock-preview-actions{display:grid;gap:7px;padding-top:2px}.analysis-knock-preview-actions .action-button{width:100%}.analysis-knock-preview-actions .text-button{justify-self:center}.analysis-session-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 10px}.analysis-history-controls{display:flex;justify-content:center;gap:10px;margin-top:8px}.analysis-board-presentation .board-shell{filter:none}.analysis-board-presentation .board-image{filter:drop-shadow(0 28px 45px rgba(0,0,0,.38))}.analysis-board-presentation .board-shell[data-board-style=classic]{--analysis-rim-ratio: 1.01328}.analysis-board-presentation .board-shell[data-board-style=luxury]{--analysis-rim-ratio: 1.09354}.analysis-board-presentation .board-shell[data-board-style=tournament]{--analysis-rim-ratio: 1.03691}.analysis-board-presentation .board-shell[data-board-style]{width:min(calc(98% / var(--analysis-rim-ratio)),calc(830px / var(--analysis-rim-ratio)));margin-block:10px}@media(min-width:901px){.analysis-board-presentation .board-shell[data-board-style]{width:min(calc(98% / var(--analysis-rim-ratio)),calc(830px / var(--analysis-rim-ratio)),calc((100dvh - 200px) / var(--analysis-rim-ratio)))}}.analysis-timeline-card{padding:8px 12px}.analysis-timeline-card .analysis-history-controls{margin-top:0}.analysis-replay-column>.status-panel h1{min-block-size:2.12em}.analysis-replay-column>.status-panel .notice{min-block-size:4.5em}.analysis-replay-column>.dice-panel{min-block-size:139px;box-sizing:border-box}.analysis-replay-column>.analysis-play-controls{min-block-size:96px;box-sizing:border-box}.analysis-replay-column>.analysis-timeline-card{min-block-size:48px;box-sizing:border-box}.analysis-ray-marker{position:absolute;z-index:2;pointer-events:none;color:#d9cfb9;font-family:var(--display),Georgia,serif;font-size:clamp(13.5px,1.575vw,21px);font-weight:400;text-shadow:0 1px 0 rgba(9,35,50,.55);opacity:.8;transition:opacity .16s ease}.board-shell[data-board-style=luxury] .analysis-ray-marker{color:var(--navy);text-shadow:0 1px 0 rgba(255,255,255,.2)}.analysis-ray-marker[data-occupied=true]{opacity:0}.analysis-history-controls button{display:grid;width:34px;height:30px;place-items:center;padding:0;border:1px solid rgba(138,244,232,.28);border-radius:8px;color:var(--aqua-bright);background:#041922c7;cursor:pointer}.analysis-history-controls button:disabled{opacity:.35;cursor:default}.tutorial-header-actions{display:flex;align-items:center;gap:14px}.tutorial-hub{display:grid;place-items:start center;width:100%;min-height:0;padding:clamp(16px,3.5vh,36px) 16px 30px;overflow-y:auto}.tutorial-hub-panel{display:grid;width:min(clamp(640px,45vw,680px),100%);gap:8px;padding:clamp(22px,3.5vw,34px);border:1px solid var(--line);border-radius:18px;background:#061b26f0;box-shadow:0 24px 70px #00000052;-webkit-backdrop-filter:none;backdrop-filter:none}.tutorial-hub-panel h1{margin:0;color:var(--white);font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(2.2rem,5.3vw,3.55rem);font-weight:400;letter-spacing:.045em;line-height:1}.tutorial-hub-panel h1 .brand-name{display:inline-block;font-size:1em}.tutorial-hub-subtitle{margin:0 0 9px;color:var(--muted);font-size:1rem}.tutorial-lesson-list{display:grid;gap:10px}.tutorial-lesson-card{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;min-height:70px;padding:13px 17px;border:1px solid rgba(138,244,232,.2);border-radius:12px;color:var(--white);background:#13434c59;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.tutorial-lesson-card:not(:disabled):hover{border-color:#f4c95d8c;background:#1d596075;transform:translateY(-1px)}.tutorial-lesson-card:disabled{color:#e0ebe97a;background:#081f286b;cursor:default}.tutorial-lesson-number{color:var(--gold);font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.tutorial-lesson-card:disabled .tutorial-lesson-number{color:#f4c95d7a}.tutorial-lesson-content{display:grid;gap:4px;min-width:0}.tutorial-lesson-content strong{font-family:var(--display);font-size:1.28rem;font-weight:400;line-height:1.1}.tutorial-lesson-content>span{color:var(--muted);font-size:.83rem;line-height:1.35}.tutorial-lesson-card:disabled .tutorial-lesson-content>span{color:#a6c0c26b}.tutorial-lesson-status{color:var(--muted);font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.tutorial-lesson-status.is-complete{color:#9be2d9}.tutorial-layout{grid-template-columns:minmax(430px,1fr) minmax(410px,440px);gap:clamp(24px,3.5vw,52px)}.tutorial-controls{align-self:center}.tutorial-card{display:grid;gap:13px;width:100%;padding:23px 25px;border-color:#8af4e829;border-radius:15px;background:#051821d6;box-shadow:0 18px 48px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tutorial-card h1{margin:3px 0 0;font-family:var(--display);font-size:clamp(1.55rem,2.3vw,2rem);font-weight:400;line-height:1.08}.tutorial-card>p{margin:0;font-size:1rem;line-height:1.55}.tutorial-copy{white-space:pre-line}.tutorial-card-header{display:flex;align-items:center;gap:15px}.tutorial-card-header p{margin:0}.tutorial-host-portrait{position:relative;flex:0 0 78px;width:78px;height:78px;overflow:hidden;border:1px solid rgba(244,201,93,.35);border-radius:50%;background:radial-gradient(circle at 50% 30%,#1d414cf5,#05161ffa 68%);box-shadow:inset 0 0 0 3px #f4c95d0d,0 5px 16px #0000003d}.tutorial-host-portrait img{display:block;width:100%;height:100%;object-fit:contain}.tutorial-label{color:var(--muted);font-size:.71rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tutorial-progress{margin-top:4px!important;color:#e8f4f1;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tutorial-navigation{display:flex;justify-content:space-between;gap:9px;margin-top:7px}.tutorial-navigation .action-button{min-height:38px;padding:8px 13px}.tutorial-navigation.is-example-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.tutorial-navigation.is-example-footer .action-button{width:100%;height:40px;min-height:40px;padding:7px 8px;border-radius:10px;font-size:.78rem;white-space:nowrap}.tutorial-gated-next{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .22s ease,visibility 0s linear .22s}.tutorial-gated-next.is-visible{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .22s ease,visibility 0s}.tutorial-action-ready{box-shadow:0 0 0 1px #8af4e840,0 0 18px #5bd2cf33}.tutorial-dice{margin-top:3px}.tutorial-dice .dice-panel{padding:4px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.tutorial-dice .section-heading-row{display:none}.tutorial-dice .dice-row{min-height:54px;margin:0}.tutorial-board-region{--tutorial-piece-scale: .94}.board-shell[data-board-style=tournament] .board-piece,.board-shell[data-board-style=tournament] .race-token{scale:.94;transform-origin:center}.tutorial-board-region .board-shell{filter:none}.tutorial-board-region .board-image{filter:drop-shadow(0 28px 45px rgba(0,0,0,.38))}.tutorial-board-region .board-piece,.tutorial-board-region .race-token{scale:var(--tutorial-piece-scale);transform-origin:center}.tutorial-board-region .board-piece.is-tutorial-emphasized:before{opacity:.76;transform:scale(1)}.tutorial-board-region .board-piece.is-tutorial-emphasized{filter:drop-shadow(0 0 3px rgba(244,230,195,.68))}.tutorial-board-region .board-piece,.tutorial-board-region .intersection{pointer-events:none!important}.tutorial-setup-board .intersection.is-actionable{pointer-events:auto!important}.tutorial-board-region .intersection.is-tutorial-target{background:radial-gradient(circle,rgba(244,225,160,.52) 0 19%,rgba(244,225,160,.16) 39%,transparent 68%);box-shadow:0 0 0 1px #fae7ad73}.tutorial-move-board .board-piece:not(:disabled){pointer-events:auto!important}.tutorial-move-path{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.tutorial-move-path polyline{fill:none;stroke:#f4e6c3;stroke-width:.72;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1.1 1.25;filter:drop-shadow(0 1px .45px rgba(1,17,29,.72))}.tutorial-move-path circle{fill:#f4e6c3;stroke:#01111dc7;stroke-width:.28}.tutorial-move-path.is-attack polyline{stroke:#8af4e8}.tutorial-move-path.is-attack circle{fill:#8af4e8}.tutorial-move-path.is-displacement polyline{stroke:#f4e6c3}.tutorial-move-path.is-displacement circle{fill:#f4e6c3}.tutorial-board-region .board-piece,.tutorial-board-region .tutorial-move-path,.tutorial-board-region .tutorial-board-highlight-layer{transition:opacity .18s ease}.tutorial-board-fading .board-piece,.tutorial-board-fading .tutorial-move-path,.tutorial-board-fading .tutorial-board-highlight-layer{opacity:0}.tutorial-knock-label{margin:0;padding:8px 10px;border:1px solid rgba(138,244,232,.22);border-radius:8px;color:#dffbf6;background:#15525740;font-size:.84rem;font-weight:800;text-align:center}.tutorial-knock-label.is-invalid{border-color:#ff82745c;color:#ffd1ca;background:#71272338}.tutorial-knock-result-slot{max-height:0;margin-top:-13px;overflow:hidden;opacity:0;transition:max-height .24s ease,margin-top .24s ease,opacity .22s ease}.tutorial-knock-result-slot.is-visible{max-height:72px;margin-top:0;opacity:1}.tutorial-knock-result-content{display:grid;gap:5px;opacity:0;transition:opacity .24s ease}.tutorial-knock-result-content.is-visible{opacity:1}.tutorial-knock-note{margin:-2px 0 0;color:#f4e6c3;font-size:.82rem;line-height:1.35;text-align:center}.tutorial-chain-comparison{display:grid;gap:7px}.tutorial-chain-comparison>div{display:grid;grid-template-columns:62px minmax(0,1fr) 24px;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(138,244,232,.24);border-radius:9px;color:#dffbf6;background:#15525738;font-size:.76rem;line-height:1.3}.tutorial-chain-comparison strong{color:var(--aqua-bright)}.tutorial-chain-comparison b{color:#9ff0d8;font-size:1rem;text-align:center}.tutorial-chain-comparison .is-incorrect{border-color:#ff827447;color:#eedbd7;background:#71272329}.tutorial-chain-comparison .is-incorrect strong,.tutorial-chain-comparison .is-incorrect b{color:#ffb5aa}@media(prefers-reduced-motion:reduce){.tutorial-knock-result-slot,.tutorial-knock-result-content,.tutorial-gated-next{transition:none}}.tutorial-setup-feedback,.tutorial-roll-result{min-height:2.8em;margin:0;color:#f4e6c3;font-size:.88rem;line-height:1.4}.tutorial-dice .die-slot.is-tutorial-target{filter:drop-shadow(0 0 4px rgba(255,244,194,.92)) drop-shadow(0 0 10px rgba(244,201,93,.68))}.tutorial-board-highlight-layer{position:absolute;z-index:2;inset:0;pointer-events:none}.tutorial-race-route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.tutorial-route-line{fill:none;stroke:#f4e6c3;stroke-width:1.1;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;filter:drop-shadow(0 0 .55px rgba(1,17,29,.96)) drop-shadow(0 1px .45px rgba(1,17,29,.72));animation:tutorial-route-sequence var(--tutorial-route-total, 16.1s) linear forwards}.tutorial-route-cursor{fill:#f4e6c3;stroke:none;opacity:0;filter:drop-shadow(0 1px .45px rgba(1,17,29,.58))}.tutorial-home-highlight{position:absolute;display:block;width:5.2%;height:5.2%;border-radius:50%;background:radial-gradient(circle,#ffebae33,#f4c95d00 72%);box-shadow:0 0 7px #f4c95d33}.tutorial-highlight-both-tokens .race-token:before,.tutorial-highlight-current-token .blue-token:before{inset:-22%;opacity:.42;transform:scale(.9)}.tutorial-highlight-current-token .blue-token{z-index:9;filter:drop-shadow(0 0 3px rgba(138,244,232,.58))}.tutorial-highlight-both-tokens.tutorial-highlight-pulse-current-token .race-token:before{inset:-42%;opacity:0;transform:scale(.76)}.tutorial-highlight-both-tokens.tutorial-highlight-pulse-current-token .white-token:before{background:radial-gradient(circle,rgba(255,255,255,.84),rgba(243,234,216,.34) 42%,transparent 72%);animation:tutorial-token-intro .9s ease-in-out 1.5s 1 both}.tutorial-highlight-both-tokens.tutorial-highlight-pulse-current-token .blue-token:before{background:radial-gradient(circle,rgba(255,255,255,.94),rgba(235,255,253,.46) 40%,transparent 72%);animation:tutorial-token-intro .9s ease-in-out 1.5s 1 both,tutorial-token-pulse 1.1s ease-in-out 2.8s 3}.tutorial-highlight-current-ships .piece-blue,.tutorial-highlight-current-ships .piece-white{z-index:8}.tutorial-highlight-current-ships .board-piece{animation:tutorial-piece-placement .16s ease-out both}@keyframes tutorial-piece-placement{0%{opacity:0;scale:calc(var(--tutorial-piece-scale) * .88)}to{opacity:1;scale:var(--tutorial-piece-scale)}}.tutorial-dice .die-slot{filter:drop-shadow(0 0 3px rgba(244,201,93,.34))}.tutorial-board-region .board-legend{visibility:hidden;min-height:18px}@keyframes tutorial-route-sequence{0%,15.527%{stroke-dashoffset:1;opacity:0}15.528%{stroke-dashoffset:1;opacity:.98}37.267%,39.13%{stroke-dashoffset:0;opacity:.98}40.994%,45.03%{stroke-dashoffset:0;opacity:0}45.031%{stroke-dashoffset:1;opacity:.98}66.77%,68.634%{stroke-dashoffset:0;opacity:.98}70.497%,74.533%{stroke-dashoffset:0;opacity:0}74.534%{stroke-dashoffset:1;opacity:.98}96.273%,98.137%{stroke-dashoffset:0;opacity:.98}to{stroke-dashoffset:0;opacity:0}}@keyframes tutorial-token-pulse{0%,15%,72%,to{opacity:.16;transform:scale(.76)}42%{opacity:.95;transform:scale(1.08)}}@keyframes tutorial-token-intro{0%,to{opacity:0;transform:scale(.78)}45%{opacity:.56;transform:scale(.96)}}@keyframes tutorial-piece-pulse{0%,15%,72%,to{opacity:.06;transform:scale(.74)}42%{opacity:.88;transform:scale(1.07)}}@keyframes tutorial-blue-ship-filter{0%,to{filter:none}42%{filter:drop-shadow(0 0 3px rgba(138,244,232,.58))}}@keyframes tutorial-white-ship-filter{0%,to{filter:none}42%{filter:drop-shadow(0 0 3px rgba(255,241,211,.5))}}@keyframes tutorial-kraken-pulse{0%,to{opacity:0;transform:scale(.76)}48%{opacity:.9;transform:scale(1.07)}}@keyframes tutorial-kraken-filter{0%,to{filter:none}48%{filter:drop-shadow(0 0 7px rgba(255,220,108,.78))}}@media(prefers-reduced-motion:reduce){.tutorial-route-line{animation:none;stroke-dashoffset:0;opacity:.62}.tutorial-route-cursor{display:none}.tutorial-highlight-pulse-current-token .blue-token:before{animation:none;opacity:.34;transform:scale(.88)}.tutorial-highlight-current-ships .board-piece{animation:none}}.section-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.section-heading-row h2,.control-card h2{margin:0;color:var(--white);font-size:1rem}.dice-row{display:grid;grid-template-columns:repeat(3,minmax(0,76px));align-items:center;min-height:82px;gap:clamp(8px,2vw,16px);margin-top:8px}.die-slot{width:100%;aspect-ratio:1;transform-origin:50% 58%;transition:opacity .18s ease,filter .18s ease,transform .18s ease}.die-slot img{display:block;width:100%;height:100%;object-fit:contain}.die-slot.is-available{opacity:1;filter:drop-shadow(0 0 4px rgba(255,255,255,.95)) drop-shadow(0 0 10px rgba(255,255,255,.55))}.die-slot.is-used{opacity:.46;filter:none;transform:scale(.91);animation:die-used-pulse .18s ease-out}.die-slot.is-neutral{opacity:.9;filter:none}.die-slot.is-rolling{opacity:1;filter:none;animation:die-rock var(--roll-duration, 3s) ease-out both}.dice-summary{margin:0;color:var(--muted);font-size:.62rem}@keyframes die-rock{0%{transform:rotate(-8deg) scale(.98)}12%{transform:rotate(8deg) scale(1.01)}25%{transform:rotate(-7deg)}39%{transform:rotate(7deg)}53%{transform:rotate(-5deg)}66%{transform:rotate(5deg)}78%{transform:rotate(-3deg)}88%{transform:rotate(2deg)}95%{transform:rotate(-1deg)}to{transform:rotate(0) scale(1)}}@keyframes die-used-pulse{0%{filter:brightness(1.35)}to{filter:none}}.muted{color:var(--muted);font-size:.84rem;line-height:1.5}.compact{margin:0}.setup-numbers{display:flex;align-items:center;gap:8px;margin:14px 0 4px}.setup-numbers span{display:grid;width:38px;height:38px;place-items:center;border:1px solid rgba(138,244,232,.35);border-radius:50%;color:var(--aqua-bright);background:#45c8c317;font-weight:800}.setup-progress{margin:8px 0 0;color:var(--white)}.setup-validation{margin-top:14px;padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#ffffff0a}.setup-validation p{display:flex;justify-content:space-between;gap:12px;margin:2px 0}.setup-validation.is-valid{border-color:#6cebd280;color:#baffef}.setup-validation.is-invalid{border-color:#f4c95d66;color:#f4d998}.start-option-list{display:grid;gap:10px;margin-top:14px}.start-option{display:grid;gap:4px;width:100%;min-height:72px;padding:13px 15px;border-radius:12px;text-align:left;cursor:pointer}.start-option strong{font-size:1rem}.start-option span{font-size:.8rem;line-height:1.4}.quick-start-option{border:1px solid #8cf3e8;color:#08262f;background:linear-gradient(135deg,#a8f8ed,#51cbc6);box-shadow:0 8px 22px #3ccdc433}.traditional-start-option{border:1px solid rgba(255,255,255,.22);color:var(--white);background:#ffffff0f}.target-point-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:14px 0}.target-point-options button{min-height:42px;padding:7px 5px;border:1px solid rgba(187,227,227,.25);border-radius:9px;color:var(--white);background:#ffffff0d;font-weight:700;cursor:pointer}.target-point-options button.is-selected{border-color:var(--aqua-bright);color:#08262f;background:linear-gradient(135deg,#a8f8ed,#51cbc6)}.clock-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:14px 0}.clock-options button{min-height:42px;padding:7px 5px;border:1px solid rgba(187,227,227,.25);border-radius:9px;color:var(--white);background:#ffffff0d;font-weight:700;cursor:pointer}.clock-options button.is-selected{border-color:var(--aqua-bright);color:#08262f;background:linear-gradient(135deg,#a8f8ed,#51cbc6)}.custom-target-input{display:grid;grid-template-columns:1fr 82px;align-items:center;gap:12px;margin:0 0 14px;color:var(--muted);font-size:.78rem;font-weight:700}.custom-target-input input{width:100%;min-height:40px;border:1px solid rgba(138,244,232,.35);border-radius:8px;padding:6px 9px;color:var(--white);background:#03141dc7}.custom-target-input input[aria-invalid=true]{border-color:#f4c95d}.start-game-button{width:100%;margin-bottom:9px}.quick-start-result{display:grid;gap:8px;margin:14px 0}.quick-start-result p{display:flex;justify-content:space-between;gap:16px;margin:0;padding:9px 11px;border-radius:9px;background:#ffffff0f}.quick-start-result strong{color:var(--aqua-bright)}.quick-start-reveal{animation:quick-start-arrive .9s ease both}@keyframes quick-start-arrive{0%{opacity:.5;transform:translateY(5px)}35%,to{opacity:1;transform:translateY(0)}}.ship-tray{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.tray-piece{width:48px;height:48px;padding:0;border:2px solid transparent;border-radius:50%;background:transparent;cursor:pointer}.tray-piece img{display:block;width:100%;height:100%;border-radius:50%}.tray-piece.is-selected{border-color:var(--aqua-bright);box-shadow:0 0 12px #5bd2cfb3}.validation-hint,.rule-note{margin:12px 0 0;color:#f4d998;font-size:.8rem}.knock-count{margin:10px 0 14px;color:var(--white)}.knock-count strong{color:var(--gold);font-size:1.4rem}.button-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.action-button,.allocation-option{min-height:44px;border-radius:10px;padding:10px 15px;font-weight:700;cursor:pointer}.action-button.primary{border:1px solid #8cf3e8;color:#08262f;background:linear-gradient(135deg,#91f2e8,#4ec4c2)}.action-button.primary.warm{border-color:#ffe19a;background:linear-gradient(135deg,#ffe4a3,#eebd4e)}.action-button.secondary{border:1px solid rgba(187,227,227,.27);color:var(--white);background:#ffffff0e}.action-button:hover,.allocation-option:hover{filter:brightness(1.1);transform:translateY(-1px)}.allocation-list{display:grid;gap:8px;margin-top:14px}.allocation-option{display:flex;justify-content:space-between;gap:12px;border:1px solid rgba(138,244,232,.23);color:var(--white);background:#3190941f;text-align:left}.allocation-option strong{color:var(--aqua-bright)}.game-over{border-color:#f4c95d80;background:linear-gradient(145deg,rgba(82,62,20,.46),var(--panel))}.game-over h2{font-family:Libre Caslon Display,Georgia,serif;font-size:2rem;font-weight:400}.game-over>.action-button{margin-top:14px}.choice-backdrop{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:18px;background:#030d12b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.path-choice{width:min(390px,100%);padding:24px;border:1px solid rgba(138,244,232,.3);border-radius:18px;background:#0b2937;box-shadow:0 24px 70px #000}.path-choice h2{margin:0;font-family:Libre Caslon Display,Georgia,serif;font-size:1.7rem;font-weight:400}.choice-list{display:grid;gap:9px;margin:18px 0 10px}.debug-panel{border:1px solid var(--line);border-radius:12px;padding:12px;color:var(--muted);background:#0003;font-size:.75rem}.debug-panel summary{cursor:pointer;font-weight:700}.debug-panel pre{max-height:360px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.notation-panel{border:1px solid var(--line);border-radius:12px;padding:10px 12px;color:var(--muted);background:#0000002e;font-size:.75rem}.notation-panel summary{cursor:pointer;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:10px}.notation-copy-button{min-width:7rem;padding:5px 9px;border:1px solid rgba(218,178,86,.55);border-radius:8px;color:var(--white);background:#144b55b3;font:inherit;cursor:pointer}.notation-copy-button:disabled{opacity:.45;cursor:default}.notation-panel pre{max-width:100%;max-height:280px;margin:10px 0 0;overflow:auto;color:var(--white);white-space:pre-wrap;overflow-wrap:anywhere;font:.9rem/1.55 DM Sans,system-ui,sans-serif}.notation-knock-destination{color:var(--aqua-bright);font-weight:800}.notation-clock-score{text-decoration-thickness:.11em;text-underline-offset:.12em}footer{padding:15px 3px 0;border-top:1px solid var(--line);color:#6f949a;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}.mobile-action-dock,.mobile-settings-toggle,.mobile-score-details{display:none}@media(min-width:901px){.app-shell{display:grid;height:100vh;height:100dvh;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;padding-top:12px;padding-bottom:10px;overflow:hidden}.app-header{padding-bottom:10px}.game-layout{height:100%;min-height:0;align-items:start;padding:24px 0 4px}.board-region{min-height:0}.board-shell{width:min(100%,790px,calc(100vh - 244px));width:min(100%,790px,calc(100dvh - 244px))}.control-column{max-height:100%;padding-right:4px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}footer{padding-top:6px}.tutorial-layout{--tutorial-board-width: min(790px, calc(100vh - 244px) );--tutorial-board-width: min(790px, calc(100dvh - 244px) );grid-template-columns:max(0px,calc((100% - var(--tutorial-board-width) - 464px) / 2)) minmax(0,var(--tutorial-board-width)) minmax(434px,1fr);align-items:center;align-self:start;height:auto;column-gap:0}.tutorial-layout>.tutorial-board-region{grid-column:2}.tutorial-layout>.tutorial-controls{grid-column:3;justify-self:center;width:min(440px,calc(100% - 24px))}}.mode-entry-shell,.online-entry-shell{min-height:100dvh;display:grid;place-items:center;padding:20px}.marot-root{--landing-grid-size: 150vw;--landing-grid-x: 90vw;--landing-grid-y: 96vh;--landing-grid-entry-offset: min(115vw, calc(5vh + 104vw) );--landing-grid-exit-offset: min(197vw, calc(98vh + 105vw) );position:relative;min-height:100dvh;isolation:isolate;overflow-x:clip}.persistent-home-view.is-hidden{position:fixed;inset:0;visibility:hidden;pointer-events:none}.landing-app-shell{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100dvh;padding-bottom:16px}.landing-app-shell .mode-entry-shell{min-height:0}.online-lobby-shell{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100dvh}.online-lobby-shell .online-entry-shell{min-height:0}.mode-entry-shell{position:relative;isolation:isolate;overflow:hidden}.persistent-grid-background,.mode-entry-card:before,.online-entry-card:before,.tutorial-hub-panel:before{content:"";position:fixed;width:var(--landing-grid-size);aspect-ratio:5968 / 5668;opacity:.018;background:url(/assets/MAROT-Board-Grid-Watermark-Chuy8CbX.png) center / contain no-repeat;filter:invert(92%) sepia(12%) saturate(520%) hue-rotate(127deg);-webkit-mask-image:radial-gradient(circle,#000 30%,rgba(0,0,0,.72) 56%,transparent 82%);mask-image:radial-gradient(circle,#000 30%,rgba(0,0,0,.72) 56%,transparent 82%);transform:translate(-50%,-50%);pointer-events:none}@keyframes grand-marot-grid-drift{0%{transform:translate3d(calc(-50% + var(--landing-grid-entry-offset)),calc(-50% + var(--landing-grid-entry-offset)),0) rotate(-37.5deg)}50%{transform:translate3d(-50%,-50%,0) rotate(0)}to{transform:translate3d(calc(-50% - var(--landing-grid-exit-offset)),calc(-50% - var(--landing-grid-exit-offset)),0) rotate(37.5deg)}}@media(prefers-reduced-motion:reduce){.persistent-grid-background{animation:none;will-change:auto}}.persistent-grid-background{z-index:0;left:var(--landing-grid-x);top:var(--landing-grid-y);visibility:hidden;opacity:0;animation:grand-marot-grid-drift 270s linear -135s infinite;will-change:transform}.marot-root:has(.persistent-home-view:not(.is-hidden)) .persistent-grid-background,.marot-root:has(.online-entry-card) .persistent-grid-background,.marot-root:has(.tutorial-hub-panel) .persistent-grid-background{visibility:visible;opacity:.018}.mode-entry-card,.online-entry-card{display:grid;width:min(100%,440px);gap:14px;padding:clamp(24px,6vw,42px);border:1px solid var(--line);border-radius:20px;color:var(--text);background:#061b26f0;box-shadow:0 22px 70px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.mode-entry-card,.online-entry-card,.tutorial-hub-panel{position:relative;z-index:1;overflow:hidden;-webkit-backdrop-filter:none;backdrop-filter:none}.mode-entry-card:before,.online-entry-card:before,.tutorial-hub-panel:before{z-index:0;left:var(--landing-grid-x);top:var(--landing-grid-y);opacity:.009;transform:var(--card-grid-transform, translate(-50%, -50%))}.mode-entry-card>*,.online-entry-card>*,.tutorial-hub-panel>*{position:relative;z-index:1}.mode-entry-card h1,.online-entry-card h1{margin:0;font-family:var(--display);font-size:clamp(2.2rem,9vw,4rem);font-weight:400}.mode-entry-card p,.online-entry-card p{margin:0;color:var(--muted)}.mode-entry-card .landing-title,.tutorial-hub-panel .hub-primary-title,.online-entry-card .hub-primary-title{color:#fff5dc;font-family:Libre Caslon Display,Georgia,serif;font-size:1.75rem;font-weight:400;line-height:1.12;letter-spacing:.025em}.mode-entry-card .landing-title{text-transform:uppercase}.mode-entry-card .landing-subtitle{color:var(--muted);font-size:.96rem}.mode-entry-card>.action-button{border:1px solid rgba(187,227,227,.27);color:#fff5dc;background:#ffffff0e;box-shadow:none;transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease,transform .18s ease}.mode-entry-card>.action-button:not(:disabled):hover,.mode-entry-card>.action-button:not(:disabled):focus-visible{border-color:#e7c57db8;color:#092430;background:linear-gradient(135deg,#fff5dc,#e9d2a3);box-shadow:inset 0 1px #ffffffb8,0 8px 20px #020d1429;filter:none}.mode-entry-card>.action-button:not(:disabled):focus-visible{outline:2px solid rgba(255,225,154,.72);outline-offset:2px}.mode-entry-card>.text-button:hover,.mode-entry-card>.text-button:focus-visible{color:var(--white);border-bottom-color:transparent;text-decoration:underline;text-decoration-color:#8af4e8b8;text-underline-offset:3px}.member-summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px;margin-top:8px;padding-top:16px;border-top:1px solid rgba(190,231,230,.19)}.member-summary span{color:var(--white);font-weight:700}.member-summary small{grid-column:1;color:#d9bd78;font-size:.64rem;letter-spacing:.13em;text-transform:uppercase}.member-summary .text-button{grid-column:2;grid-row:1 / span 2}.membership-configuration-note{color:#f4d998!important;font-size:.76rem}.membership-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(0,560px) minmax(340px,460px);place-content:center;gap:clamp(24px,5vw,72px);padding:clamp(18px,5vw,64px)}.membership-hero{align-self:center}.membership-hero h1,.membership-card h1{margin:0 0 18px;color:var(--white);font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(2.2rem,5vw,4.4rem);font-weight:400;line-height:1.02}.membership-hero>p:not(.brand-kicker){max-width:56ch;color:var(--muted);font-size:1.02rem;line-height:1.7}.membership-hero>strong{display:block;margin-top:20px;color:#ffe5a0;font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(1.3rem,2vw,1.75rem);font-weight:400}.membership-benefits{display:grid;gap:10px;margin:24px 0 0;padding:0;list-style:none;color:var(--white)}.membership-benefits li:before{content:"✓";margin-right:10px;color:var(--aqua-bright);font-weight:800}.membership-card{display:grid;align-self:center;gap:14px;padding:clamp(22px,4vw,38px);border:1px solid rgba(218,178,86,.35);border-radius:20px;background:linear-gradient(145deg,#143843f5,#061b26f7);box-shadow:0 24px 75px #0000006b,inset 0 1px #ffeec114}.membership-card h1{margin-bottom:2px;font-size:clamp(2rem,4vw,3rem)}.membership-card>p{margin:0;color:var(--muted);line-height:1.55}.membership-verified-card{width:min(100%,480px);grid-column:1 / -1;justify-self:center}.membership-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border-radius:11px;background:#010f1673}.membership-tabs button{min-height:39px;border:0;border-radius:8px;color:var(--muted);background:transparent;font-weight:700;cursor:pointer}.membership-tabs button[aria-selected=true]{color:#092630;background:linear-gradient(135deg,#fce3a2,#d9a93e)}.membership-form{display:grid;gap:13px}.membership-form label{display:grid;gap:6px;color:var(--white);font-size:.78rem;font-weight:700}.membership-form label>span{color:var(--muted);font-weight:400}.membership-form input:not([type=checkbox]){width:100%;min-height:44px;padding:9px 11px;border:1px solid rgba(190,231,230,.23);border-radius:9px;color:var(--white);background:#02131bb8}.membership-form input:focus{border-color:var(--aqua-bright);outline:2px solid rgba(91,210,207,.18)}.membership-form .membership-consent{grid-template-columns:auto 1fr;align-items:start;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.45}.membership-consent-copy{display:grid;gap:2px}.membership-consent-copy strong{color:var(--white);font-size:.8rem}.membership-consent-copy small{font-size:.7rem}.membership-consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--aqua)}.membership-error{color:#ff9d8f!important}.membership-success{color:#aaf2df!important}.membership-email{color:var(--white)!important;font-weight:700}.online-create-settings{display:grid;grid-template-columns:1fr 1fr;gap:10px}.online-create-settings label{display:grid;gap:5px;color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.online-create-settings select,.online-create-settings input,.online-join-row input{min-width:0;padding:10px;border:1px solid var(--line);border-radius:9px;color:var(--text);background:#0c303d;font:inherit}.online-create-custom-clock,.online-create-settings .action-button{grid-column:1 / -1}.online-entry-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.72rem;text-transform:uppercase}.online-entry-divider:before,.online-entry-divider:after{content:"";flex:1;height:1px;background:var(--line)}.online-join-row{display:grid;grid-template-columns:1fr auto;gap:8px}.online-join-row input{text-transform:uppercase;letter-spacing:.16em}.online-waiting-room{display:grid;gap:8px;text-align:center}.online-waiting-room>span{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.online-waiting-room>strong{color:var(--aqua-bright);font-size:clamp(2.2rem,12vw,4.2rem);letter-spacing:.16em}.online-waiting-panel{display:grid;gap:14px;padding:clamp(20px,3vw,28px);border:1px solid var(--line);border-radius:16px;color:var(--text);background:#061b26e6;box-shadow:0 18px 55px #00000047;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.online-waiting-panel h1{margin:0;font-family:var(--display);font-size:clamp(1.9rem,3.2vw,2.8rem);font-weight:400;line-height:1.06}.online-waiting-panel p{margin:0;color:var(--muted)}.online-room-code{display:grid;gap:3px;width:fit-content;padding:12px 16px;border:1px solid rgba(138,244,232,.25);border-radius:12px;background:#0419228c}.online-room-code span,.online-waiting-settings-heading>span{color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.online-room-code strong{color:var(--aqua-bright);font-size:clamp(2rem,5vw,3rem);letter-spacing:.15em;line-height:1}.online-connection-state{font-size:.78rem}.online-waiting-settings-heading{display:flex;align-items:center;justify-content:space-between;margin-top:3px;padding-top:14px;border-top:1px solid var(--line)}.waiting-presentation-preferences{justify-content:flex-start}.waiting-back-button{justify-self:start}.waiting-coordinate{cursor:default}.online-entry-connection{display:grid;min-height:42px;align-items:center}.online-entry-connecting{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);text-align:left}.online-entry-connecting>span:last-child{display:grid;gap:2px}.online-entry-connecting strong{color:var(--white);font-size:.82rem;font-weight:600}.online-entry-connecting small{color:var(--muted);font-size:.7rem}.online-connection-spinner{width:16px;height:16px;flex:0 0 auto;border:2px solid rgba(138,244,232,.2);border-top-color:var(--aqua);border-radius:50%;animation:online-connection-spin .9s linear infinite}@keyframes online-connection-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.online-connection-spinner{animation:none;border-color:#8af4e873}}.online-entry-error{color:#ff9d8f!important}.online-game-status{display:flex;justify-content:space-between;gap:8px 16px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:#061b26db;font-size:.72rem}.online-game-status strong{color:var(--aqua-bright)}@media(min-width:561px){.tutorial-hub{padding:clamp(14px,3.15vh,32px) 14px 27px}.tutorial-hub-panel{width:min(clamp(576px,40.5vw,612px),100%);gap:7px;padding:clamp(20px,3.15vw,31px)}.tutorial-hub-panel h1{font-size:clamp(2rem,4.8vw,3.2rem)}.tutorial-hub-subtitle{margin-bottom:8px;font-size:.9rem}.tutorial-lesson-list{gap:9px}.tutorial-lesson-card{grid-template-columns:68px minmax(0,1fr) auto;gap:14px;min-height:63px;padding:12px 15px}.tutorial-lesson-number{font-size:.64rem}.tutorial-lesson-content{gap:3px}.tutorial-lesson-content strong{font-size:1.15rem}.tutorial-lesson-content>span{font-size:.75rem}.tutorial-lesson-status{font-size:.62rem}.online-entry-shell{padding:18px}.online-entry-card{width:min(100%,396px);gap:13px;padding:clamp(22px,5.4vw,38px);border-radius:18px}.online-entry-card .brand-kicker{font-size:.63rem}.online-entry-card h1{font-size:clamp(2rem,8.1vw,3.6rem)}.online-create-settings{gap:9px}.online-create-settings label{gap:4px;font-size:.68rem}.online-create-settings select,.online-create-settings input,.online-join-row input{padding:9px;border-radius:8px;font-size:.9rem}.online-entry-card .action-button{min-height:40px;padding:9px 14px;font-size:.9rem}.online-entry-divider{gap:9px;font-size:.65rem}.online-join-row{gap:7px}.online-entry-error{font-size:.9rem}}@media(max-width:900px){.membership-shell{grid-template-columns:minmax(0,620px)}.game-layout{grid-template-columns:1fr}.tutorial-layout{gap:16px}.tutorial-board-region{scroll-margin-top:calc(12px + env(safe-area-inset-top))}.board-shell,.board-legend{width:min(100%,680px)}.control-column{width:min(100%,680px);margin:0 auto}.status-panel h1{max-width:none}}@media(min-width:901px){.mode-entry-card{width:min(100%,520px);gap:17px;padding:50px 52px;border-radius:23px}.mode-entry-card h1{font-size:4.6rem;line-height:.95}.mode-entry-card>.action-button{min-height:48px}.mode-entry-card .member-summary{padding-bottom:18px}}@media(max-width:560px){.marot-root{--landing-grid-size: 375vw;--landing-grid-entry-offset: min(270vw, calc(5vh + 258vw) );--landing-grid-exit-offset: min(350vw, calc(98vh + 258vw) )}.membership-shell{place-content:start center;gap:22px;padding:24px 12px}.membership-hero h1{font-size:2.55rem}.membership-hero>p:not(.brand-kicker){font-size:.92rem;line-height:1.55}.membership-card{padding:21px 17px;border-radius:16px}.mode-entry-shell,.online-entry-shell{padding:12px}.mode-entry-card,.online-entry-card{padding:22px 18px;border-radius:16px}.mode-entry-card{box-shadow:none}.online-game-status{order:0;width:100%;flex-direction:column}.online-waiting-layout{gap:10px;padding-top:10px}.online-waiting-controls{display:contents}.online-waiting-panel{order:1;width:100%;gap:8px;padding:13px 14px;border-radius:12px}.online-waiting-panel h1{font-size:1.25rem;line-height:1.1}.online-room-code{display:flex;align-items:baseline;gap:10px;width:100%;padding:8px 10px}.online-room-code strong{font-size:1.65rem}.online-waiting-settings-heading{padding-top:8px}.online-waiting-settings-heading .mobile-settings-toggle{display:inline-block}.waiting-presentation-preferences[data-mobile-open=false]{display:none}.waiting-presentation-preferences[data-mobile-open=true]{display:flex}.online-waiting-layout .waiting-board-region{order:2}.online-waiting-shell{padding-bottom:calc(18px + env(safe-area-inset-bottom));overflow-x:clip}.marot-root>.wallpaper-layer{position:fixed;inset:0 auto auto 0;width:100%;height:100vh;height:100lvh;background-image:var(--wallpaper-mobile)}.game-layout{display:flex;flex-direction:column}.control-column{display:contents}.tutorial-card{order:4;width:100%;padding:18px}.tutorial-header-actions{gap:8px}.tutorial-header-actions .text-button{padding-inline:5px;font-size:.7rem}.tutorial-hub{padding:10px 4px 26px}.tutorial-hub-panel{padding:20px 14px;border-radius:14px}.tutorial-lesson-card{grid-template-columns:54px minmax(0,1fr);gap:10px;min-height:82px;padding:12px}.tutorial-lesson-status{grid-column:2}.tutorial-host-portrait{flex-basis:64px;width:64px;height:64px}.status-panel{order:1;width:100%}.start-panel{order:2;width:100%}.board-region{order:3;width:100%}.analysis-game-layout .analysis-timeline-card{order:4;width:100%}.analysis-game-layout .mobile-score-details{order:6}.board-shell{width:calc(100% - 4px)}.board-shell[data-board-style=luxury]{width:calc(90.4977% - 3.62px)}.score-strip,.mobile-score-details{order:4;width:100%}.dice-panel{order:5;width:100%}.setup-panel,.turn-actions,.reward-panel,.game-over,.display-settings-panel,.notation-panel,.debug-panel,.analysis-play-controls,.analysis-knock-options{order:6;width:100%}.notation-panel pre{font-size:.875rem;line-height:1.55}.status-heading-row{align-items:flex-start;flex-direction:column}.presentation-preferences{width:100%;justify-content:flex-start}.mobile-settings-toggle{display:inline-block;min-height:32px;padding:5px 11px;border:1px solid rgba(138,244,232,.28);border-radius:999px;color:var(--aqua-bright);background:#041922b8;font-size:.72rem;font-weight:700;cursor:pointer}.app-shell{padding:14px 10px calc(85px + env(safe-area-inset-bottom))}.app-shell.mobile-game-active{padding-top:calc(68px + env(safe-area-inset-top));padding-bottom:calc(145px + env(safe-area-inset-bottom))}.app-header{align-items:center;gap:10px;padding-bottom:13px}.global-header>div:first-child{flex:0 0 auto;min-width:0}.header-actions{gap:5px 10px}.header-actions .text-button:not(:last-child){display:none}.global-header-actions{flex:1 1 auto;flex-wrap:nowrap;min-width:0}.global-header-actions .text-button{white-space:nowrap}.global-account{gap:5px}.global-account small{display:none}.global-account .text-button{margin-left:0;padding-left:1px;border-left:0}.global-header-divider{height:17px}.global-header .brand-kicker{font-size:.58rem}.global-header .brand-mark{width:27px;height:27px}.global-header .brand-name{font-size:1.45rem}.header-actions .dev-ripple-button{display:inline-block}.game-layout{gap:12px;padding:14px 0 28px}.tutorial-layout{gap:8px}.board-piece{width:8.1%}.intersection{width:7.4%}.race-token{width:5.8%;min-width:17px}.dice-row{grid-template-columns:repeat(3,44px);justify-content:center;min-height:44px;gap:12px;margin-top:2px}.dice-panel{padding:6px 12px}.dice-panel .section-heading-row h2{font-size:.82rem}.dice-summary{font-size:.65rem}.board-legend{margin-top:calc(8px + var(--board-visual-bottom-overhang, 0%));gap:8px 14px}.status-panel{padding-bottom:8px}.status-panel h1{font-size:1.55rem;line-height:1.13}.notice{margin-top:5px;font-size:.79rem;line-height:1.35}.mobile-game-active .status-panel{overflow-anchor:none}.mobile-game-active .status-panel h1{min-height:2.26em}.mobile-game-active .status-panel .notice{min-height:2.7em}.mobile-game-active .board-region{overflow-anchor:none}.control-card{padding:16px}.analysis-editor-shell{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.analysis-editor-shell .app-header{order:0}.analysis-editor-controls>.control-card,.analysis-editor-controls>.display-settings-panel{order:6;width:100%}.action-button{flex:1 1 auto}.target-point-options,.clock-options{grid-template-columns:repeat(4,minmax(0,1fr))}.target-point-options button:last-child,.clock-options button:last-child{grid-column:1 / -1}.mobile-game-active .score-strip{position:fixed;z-index:35;top:env(safe-area-inset-top);left:50%;width:min(calc(100vw - 16px),440px);transform:translate(-50%);gap:5px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#061b26f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-game-active .score-strip>div{grid-template-columns:auto 1fr;gap:0 5px;padding:3px 7px;border-radius:8px}.mobile-game-active .score-strip>div.is-current{border-color:#8af4e8b3;box-shadow:inset 0 0 0 1px #8af4e81a}.mobile-game-active .score-strip span{font-size:.63rem;letter-spacing:.03em}.mobile-game-active .score-strip strong{justify-self:end;font-size:.96rem}.mobile-game-active .score-strip small{font-size:.65rem}.mobile-game-active .score-strip em{display:none}.mobile-game-active .score-strip .clock-time{grid-column:1 / -1;justify-self:end;font-size:.92rem;line-height:1.1}.mobile-game-active .score-strip .clock-time.clock-amber,.mobile-game-active .score-strip .clock-time.clock-red,.mobile-game-active .score-strip .clock-time.clock-final{font-size:.98rem}.mobile-score-details{display:block;padding:7px 10px;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:var(--panel);font-size:.72rem}.mobile-score-details summary{cursor:pointer;font-weight:700}.mobile-score-details p{margin:5px 0 0}.mobile-game-active .dice-panel{position:fixed;z-index:34;bottom:calc(64px + env(safe-area-inset-bottom));left:50%;width:min(calc(100vw - 16px),440px);transform:translate(-50%);background:#061b26f5}.mobile-action-dock{position:fixed;z-index:36;right:0;bottom:0;left:0;display:flex;justify-content:center;gap:8px;padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid var(--line);background:#061b26f7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-action-dock .action-button{flex:1 1 0;max-width:440px;min-height:48px}}@media(max-width:400px){.global-header-actions:has(>.global-header-divider) .global-account>span{display:none}}@media(max-width:340px){.global-header-actions:has(>.global-header-divider) .global-account,.global-header-actions>.global-header-divider{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.die-slot.is-rolling,.die-slot.is-used,.quick-start-reveal{animation:none!important}.race-token.is-moving:before,.race-token.is-pulsing:before{opacity:0}.board-piece.has-wake .piece-wake{display:none}.board-ripple-layer{display:none!important}.score-strip>div.clock-warning-final{animation:none!important}.score-strip>div.point-earned{animation:point-card-glow .65s ease-out both!important}}
