@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#163e39;font-synthesis:none;--green:#163e39;--muted:#73817a;--line:#dedfd4;--orange:#db683d;background:#f7f5ee;font-family:DM Sans,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #db683d}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1280px;margin:auto;padding:30px 48px;display:flex}header a{color:var(--green);letter-spacing:-2px;font-size:34px;font-weight:800;text-decoration:none}.brand-icon{vertical-align:middle;margin-right:9px;font-size:35px}.brand-dot{color:var(--orange)}.edition,.connection,.eyebrow{letter-spacing:2px;font-size:10px;font-weight:700}.connection{letter-spacing:1px;align-items:center;gap:8px;display:flex}.connection i{background:#62906d;border-radius:50%;width:6px;height:6px}main{max-width:1184px;margin:auto;padding:62px 28px 38px}.hero{grid-template-columns:1.25fr 1fr;align-items:center;gap:80px;display:grid}.eyebrow{color:#708478;margin:0 0 24px}h1,h2{letter-spacing:-2.5px;margin:0;font-family:Manrope,sans-serif;font-weight:700}h1{font-size:clamp(40px,4.7vw,64px);line-height:1.13}h1 em{color:var(--orange);font-style:normal}.intro{color:#69796f;margin:25px 0;font-size:16px;line-height:1.8}.card{border:1px solid var(--line);background:#fffefa;border-radius:22px;box-shadow:0 10px 35px #233a2810}.lobby{padding:36px}.lobby h2{letter-spacing:-1.4px;margin-bottom:27px;font-size:32px;line-height:1.2}.lobby .eyebrow{margin-bottom:16px;font-size:9px}label{margin:16px 0 9px;font-size:12px;font-weight:600;display:block}input{width:100%;color:var(--green);background:#fffefa;border:1px solid #dadfd5;border-radius:9px;padding:14px 15px;font-size:15px}.primary,.secondary{border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:17px 20px;font-size:14px;font-weight:600;display:flex}.primary{background:var(--green);color:#fff}.primary:hover:not(:disabled){background:#24564c}.secondary{color:var(--green);background:#eceee4;border:1px solid #dde2d4}.lobby>.primary{margin-top:20px}.hint{text-align:center;color:var(--muted);margin-top:11px;font-size:11px}.divider{border-top:1px solid var(--line);text-align:center;height:0;margin:29px 0 25px}.divider span{letter-spacing:1px;color:var(--muted);background:#fffefa;padding:0 12px;font-size:9px;position:relative;top:-9px}.home-dice{gap:15px;margin:36px 0 24px;display:flex}.die{width:68px;height:68px;color:var(--green);background:#fffefa;border:1px solid #dbded3;border-radius:13px;grid-template:repeat(3,1fr)/repeat(3,1fr);gap:4px;padding:12px;display:grid;position:relative;box-shadow:0 5px #d8dccf}.die i{border-radius:50%}.die .pip{background:currentColor}.home-dice .die:first-child{transform:rotate(-12deg)}.home-dice .die:nth-child(2){background:#e4ebd7;transform:translateY(-7px)rotate(6deg)}.home-dice .die:last-child{transform:rotate(15deg)}.small-note{color:var(--muted);letter-spacing:1px;font-size:10px}.how{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:25px;margin-top:66px;padding-top:28px;display:grid}.how>div{align-items:center;gap:18px;display:flex}.how b{color:#8c9a86;border:1px solid #dce0d1;border-radius:50%;flex-shrink:0;place-items:center;width:35px;height:35px;font-size:12px;display:grid}.how span{font-size:13px;font-weight:600}.how small{color:var(--muted);margin-top:6px;font-size:11px;font-weight:400;display:block}footer{color:#8d998e;letter-spacing:1px;justify-content:space-between;max-width:1184px;margin:auto;padding:30px 28px;font-size:9px;display:flex}.message{text-align:center;color:#a3482e;min-height:24px;padding:0 20px;font-size:14px}.friend-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.join{gap:8px;display:flex}.join button{background:var(--green);color:#fff;border:0;border-radius:9px;padding:0 20px}#code{text-transform:uppercase;letter-spacing:3px}.local-note,.setup{color:#7a7766;font-size:12px;line-height:1.6}.waiting{text-align:center;max-width:650px;margin:auto;padding:42px}.waiting h1{font-size:40px}.waiting p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.7}.waiting-die{justify-content:center;margin:30px;display:flex}.room-code{color:var(--green);letter-spacing:9px;background:#eaf0df;border:0;border-radius:14px;margin:30px auto;padding:24px 35px;font-size:38px;display:block}.room-code small{letter-spacing:1px;margin-top:15px;font-size:9px;display:block}.text-button{color:#7d8176;background:0 0;border:0;padding:15px;font-size:12px;text-decoration:underline}.pulse{color:var(--orange);letter-spacing:10px;padding:30px}.game-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.game-heading h1{letter-spacing:-1.5px;font-size:36px}.game-heading .eyebrow{margin-bottom:12px}.game-heading p:not(.eyebrow){color:var(--muted);font-size:13px}.game-heading .secondary{width:auto}.game-grid{grid-template-columns:1fr 1fr;align-items:start;gap:28px;display:grid}.table{background:#eaf0df;padding:30px}.table-top{letter-spacing:1px;justify-content:space-between;font-size:10px;font-weight:700;display:flex}.dice-row{justify-content:center;gap:13px;margin:48px 0 42px;display:flex}.dice-row .die{flex-shrink:0;width:60px;height:60px;padding:10px}.dice-row .die:disabled{opacity:1}.die.held{background:var(--green);color:#fffefa;box-shadow:0 5px #092d27}.die span{color:var(--green);letter-spacing:1px;font-size:8px;position:absolute;top:74px;left:0;right:0}.dice-help{text-align:center;color:#6f8068;min-height:30px;font-size:11px;line-height:1.5}.roll{justify-content:center;font-size:15px}.score-summary{grid-template-columns:1fr 1fr;gap:12px;margin-top:30px;display:grid}.score-summary>div{background:#fff6;border-radius:12px;min-width:0;padding:18px}.score-summary .active{outline:1px solid #8ca37a}.score-summary span{overflow-wrap:anywhere;font-size:12px;display:block}.score-summary strong{font-size:36px;line-height:1.5;display:block}.score-summary small{color:var(--muted);font-size:10px;font-weight:400}details{color:#718168;margin-top:26px;font-size:12px;line-height:1.8}summary{cursor:pointer}.scorecard{padding:24px}.score-title{justify-content:space-between;align-items:center;margin:0 0 20px;display:flex}.score-title h2{letter-spacing:-1px;font-size:23px}.score-title span{letter-spacing:1px;color:var(--muted);font-size:8px}table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}th{text-align:left;font-weight:500}th:first-child{width:48%}td{text-align:center;height:37px}thead th{text-align:center;color:#76836c;overflow-wrap:anywhere;padding-bottom:12px;font-size:10px}thead th:first-child{text-align:left}thead small{margin-top:4px;font-size:8px;display:block}tbody tr{border-top:1px solid #ebede4}td button{color:var(--green);background:#f0f5e7;border:1px dashed #bac8a9;border-radius:5px;min-width:52px;min-height:30px;padding:3px 8px}td button:hover{background:#dce9c8}td button span{margin-left:4px;font-size:10px}.empty{color:#c6cbbb}.bonus{color:#75836d;background:#f3f5ed;font-size:11px}.bonus small{margin-left:6px;font-size:9px}tfoot{border-top:2px solid #d8dfcc;font-size:17px;font-weight:700}tfoot td{height:50px}tfoot th{font-weight:700}@media (width<=900px){.hero{gap:35px}.edition{display:none}.dice-row{gap:8px}.dice-row .die{gap:3px;width:48px;height:48px;padding:8px}.table{padding:22px}.game-grid{gap:18px}.die span{top:60px}}@media (width<=650px){header{padding:20px 22px}header a{font-size:30px}.connection{max-width:160px;font-size:8px;line-height:1.5}main{padding:35px 20px 20px}.hero{grid-template-columns:1fr;gap:25px}.hero h1{font-size:43px}.eyebrow{margin-bottom:18px;font-size:8px}.intro{margin:20px 0;font-size:14px}.hero-copy{position:relative}.home-dice{gap:7px;margin:0;position:absolute;bottom:0;right:4px}.home-dice .die{border-radius:7px;gap:2px;width:34px;height:34px;padding:6px}.small-note{max-width:170px;font-size:8px;line-height:1.6}.lobby{padding:26px}.lobby h2{font-size:28px}.how{grid-template-columns:1fr;gap:22px;margin-top:34px}footer{gap:12px;padding:25px 20px;font-size:7px}.game-grid{grid-template-columns:1fr}.game-heading{align-items:flex-start}.game-heading h1{font-size:29px}.game-heading p:not(.eyebrow){line-height:1.6}.game-heading .text-button{white-space:nowrap;margin-top:30px;padding:0}.game-heading .secondary{max-width:120px;padding:12px;font-size:11px}.dice-row{gap:10px;margin:35px 0}.dice-row .die{width:49px;height:49px}.scorecard{padding:20px}td{height:40px}.waiting{padding:28px 20px}.waiting h1{font-size:33px}.room-code{letter-spacing:6px;font-size:30px}}body:has(main>.splash){background:linear-gradient(#0819162e,#08191657),url(/yatzy-background.webp) 50%/cover no-repeat;min-height:100dvh}:is(body:has(main>.splash) header,body:has(main>.splash) footer){color:#fff;text-shadow:0 1px 8px #0008;border-color:#fff5}body:has(main>.splash) header a{color:#fff;text-shadow:0 2px 16px #000b}body:has(main>.splash) .hero-copy h1{color:#fff;text-shadow:0 2px 16px #000b}:is(body:has(main>.splash) .hero-copy .eyebrow,body:has(main>.splash) .hero-copy .intro,body:has(main>.splash) .hero-copy .small-note){color:#fff;text-shadow:0 2px 10px #000c}body:has(main>.splash) main{max-width:1184px;min-height:calc(100dvh - 150px);padding-top:48px;padding-bottom:28px;display:flex}.splash{flex-direction:column;justify-content:space-between;align-items:flex-start;gap:32px;width:100%;display:flex}.splash .hero-copy{max-width:620px}.start-button{width:min(520px,100%);color:var(--green);background:#fffefa;border:0;border-radius:18px;justify-content:center;align-self:center;gap:18px;padding:20px 26px;font-size:20px;font-weight:700;display:flex;box-shadow:0 10px 35px #0004}.start-button span{font-size:25px;line-height:1}.lobby-screen{place-items:center;min-height:calc(100dvh - 210px);display:grid}.lobby-screen .lobby{width:min(560px,100%)}@media (width<=650px){body:has(main>.splash) main{min-height:calc(100dvh - 126px);padding:34px 20px 18px}.splash .hero-copy h1{font-size:43px}.splash .intro{font-size:14px}.start-button{border-radius:16px;padding:18px 22px;font-size:18px}body:has(main>.splash) footer{display:none}}body:has(main>.splash) header{display:none}body:has(main>.splash) footer{display:none}body:has(main>.splash) .message{display:none}body:has(main>.splash) main{min-height:100dvh;padding-top:max(44px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}body:has(main>.splash-art){background:url(/yatzy-background.avif) 50%/cover no-repeat}body:has(main>.splash-art) main{width:100%;max-width:none;min-height:100dvh;padding:0}.splash-art{width:100%;min-height:100dvh;display:block;position:relative}.start-hotspot{left:11%;right:11%;bottom:max(4%,env(safe-area-inset-bottom));cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:28px;height:10%;min-height:64px;position:absolute}body:has(main>.lobby-screen){background:linear-gradient(#08191614,#08191638),url(/yatzy-menu-background.avif) 50%/cover no-repeat fixed;min-height:100dvh}body:has(main>.lobby-screen) header{-webkit-backdrop-filter:blur(10px);background:#f7f5eedb}body:has(main>.lobby-screen) main{max-width:none;min-height:calc(100dvh - 150px)}body:has(main>.lobby-screen) .lobby-screen{min-height:calc(100dvh - 210px)}body:has(main>.lobby-screen) .lobby{-webkit-backdrop-filter:blur(3px);background:#f6ead2fb;box-shadow:0 18px 55px #0005}@media (width<=650px){body:has(main>.lobby-screen){background-attachment:scroll}body:has(main>.lobby-screen) main{min-height:calc(100dvh - 126px)}}:is(body:has(main>.lobby-screen) header,body:has(main>.lobby-screen) footer){display:none}body:has(main>.lobby-screen) main{padding:max(32px,env(safe-area-inset-top)) 18px max(26px,env(safe-area-inset-bottom));place-items:center;min-height:100dvh;display:grid}body:has(main>.lobby-screen) .message{left:16px;right:16px;bottom:max(8px,env(safe-area-inset-bottom));z-index:4;color:#fff;text-shadow:0 2px 8px #000;position:fixed}.lobby-screen{width:100%;min-height:0}.lobby-screen .tavern-menu{color:#143f37;background:#f6ead2;border:8px solid #5a341e;border-radius:22px;width:min(640px,94vw);margin:auto;padding:58px 38px 30px;position:relative;box-shadow:inset 0 0 0 2px #b77a3b,0 24px 70px #0009}.tavern-menu:before{content:"";pointer-events:none;border:1px solid #c38d52;border-radius:10px;position:absolute;inset:8px}.menu-crest{color:#e7c381;background:#153f36;border:7px solid #5a341e;border-bottom-width:5px;border-radius:80px 80px 12px 12px;justify-content:center;align-items:center;gap:10px;width:190px;height:78px;font-size:31px;display:flex;position:absolute;top:-72px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 2px #b77a3b}.menu-crest i{background:#e7c381;width:2px;height:42px;transform:rotate(40deg)}.tavern-menu h2{text-align:center;letter-spacing:-1.5px;margin:0 0 20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,6vw,58px);font-weight:700;line-height:1.03}.menu-rule{color:#9c661f;justify-content:center;align-items:center;gap:12px;margin:4px auto 22px;display:flex}.menu-rule:before,.menu-rule:after{content:"";background:#b98c57;width:90px;height:1px}.menu-rule span{font-size:12px}.tavern-menu label{margin:0 0 10px;font-family:Georgia,Times New Roman,serif;font-size:20px;font-weight:700}.tavern-menu input{background:#f7ecd7;border:2px solid #b98955;border-radius:10px;padding:17px 18px;font-family:Georgia,Times New Roman,serif;font-size:19px}.tavern-menu .menu-primary{background:#123e34;border:4px solid #b87734;border-radius:12px;justify-content:center;margin-top:18px;padding:18px 22px;font-family:Georgia,Times New Roman,serif;font-size:24px;position:relative;box-shadow:inset 0 0 0 2px #5a341e}.tavern-menu .menu-primary span:last-child{color:#f3d28c;font-size:38px;line-height:.7;position:absolute;right:20px}.tavern-menu .divider{border-color:#b98c57;margin:32px 0 25px}.tavern-menu .divider span{color:#573f2a;letter-spacing:4px;background:#f2e2c2;font-family:Georgia,Times New Roman,serif;font-weight:700}.tavern-menu .menu-secondary{background:#f4e5c8;border:2px solid #c69a65;border-radius:8px;padding:16px 20px;font-family:Georgia,Times New Roman,serif;font-size:21px;font-weight:700;box-shadow:0 4px #c79b69}.menu-secondary .friends-icon{letter-spacing:-4px;font-family:Arial,sans-serif;font-size:22px}.menu-secondary span:last-child{font-size:32px;line-height:.8}.menu-bottom{border-top:1px solid #c9a67a;grid-template-columns:1fr 1fr;margin-top:28px;display:grid}.menu-link{color:#173f37;background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:21px 12px 8px;font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:700;display:grid}.menu-link+.menu-link{border-left:1px solid #c9a67a}.menu-link span{font-size:24px}.menu-link b{font-size:26px}.tavern-menu .friend-panel{border-top-color:#c69a65}.tavern-menu .setup,.tavern-menu .local-note{color:#594b3a;position:relative}@media (width<=650px){body:has(main>.lobby-screen) main{padding:88px 10px 20px}.lobby-screen .tavern-menu{border-width:6px;width:min(94vw,520px);padding:46px 24px 24px}.menu-crest{border-width:6px;width:155px;height:66px;font-size:25px;top:-60px}.tavern-menu h2{font-size:38px}.tavern-menu label{font-size:18px}.tavern-menu input{padding:14px 15px;font-size:17px}.tavern-menu .menu-primary{padding:16px 18px;font-size:20px}.tavern-menu .menu-secondary{padding:15px;font-size:18px}.menu-link{gap:7px;padding-left:7px;padding-right:7px;font-size:14px}}.invite-note{color:#6a4825;text-align:center;background:#fff4df;border:1px solid #c89a61;border-radius:8px;margin:-4px 0 18px;padding:10px 12px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.45;position:relative}.tavern-menu .share-link{text-align:left;background:#f4e5c8;border:2px solid #c69a65;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;margin-top:18px;padding:13px 18px;display:grid;box-shadow:0 4px #c79b69}.share-link .share-icon{color:#173f37;font-size:27px;line-height:1}.share-link strong{color:#173f37;font-family:Georgia,Times New Roman,serif;font-size:18px;display:block}.share-link small{color:#705b43;margin-top:3px;font-family:Georgia,Times New Roman,serif;font-size:12px;font-weight:400;display:block}.share-link>span:last-child{color:#173f37;font-family:Georgia,Times New Roman,serif;font-size:30px;line-height:.8}.waiting-share{justify-content:center;max-width:330px;margin:0 auto 8px}.waiting-share span{font-size:22px}@media (width<=650px){.tavern-menu .share-link{padding:12px 14px}.share-link strong{font-size:16px}.share-link small{font-size:11px}}.name-step{max-width:560px}.name-step h2{margin-bottom:10px}.name-step form{position:relative}.name-step .menu-primary{margin-top:18px}.name-note,.session-name{text-align:center;color:#6a533a;font-family:Georgia,Times New Roman,serif}.name-note{margin:0 0 18px;font-size:14px}.session-name{margin:-4px 0 18px;font-size:14px}.session-name strong{color:#173f37}body:has(main>.waiting-screen){background:linear-gradient(#08191614,#08191633),url(/yatzy-menu-background.avif) 50%/cover no-repeat fixed;min-height:100dvh}:is(body:has(main>.waiting-screen) header,body:has(main>.waiting-screen) footer){display:none}body:has(main>.waiting-screen) main{max-width:none;min-height:100dvh;padding:max(88px,env(safe-area-inset-top)) 14px max(24px,env(safe-area-inset-bottom));place-items:center;display:grid}body:has(main>.waiting-screen) .message{left:16px;right:16px;bottom:max(8px,env(safe-area-inset-bottom));z-index:4;color:#fff;text-shadow:0 2px 8px #000;position:fixed}.waiting-screen{width:100%}.waiting-screen .waiting{color:#143f37;background:#f6ead2fb;border:8px solid #5a341e;border-radius:22px;width:min(640px,94vw);margin:auto;padding:58px 38px 32px;position:relative;box-shadow:inset 0 0 0 2px #b77a3b,0 24px 70px #0009}.waiting-screen .waiting:before{content:"";pointer-events:none;border:1px solid #c38d52;border-radius:10px;position:absolute;inset:8px}.waiting-screen .waiting .eyebrow{color:#6f5b45;margin:0 0 18px;position:relative}.waiting-screen .waiting h1{letter-spacing:-1.8px;color:#143f37;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(38px,6vw,58px);line-height:1.02;position:relative}.waiting-screen .waiting p:not(.eyebrow){color:#705b43;max-width:480px;margin:18px auto 24px;font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1.55;position:relative}.waiting-screen .waiting .menu-rule{margin:20px auto 10px}.waiting-screen .waiting-share{background:#123e34;border:4px solid #b87734;border-radius:12px;justify-content:center;width:100%;max-width:none;margin:22px 0 16px;padding:18px 22px;font-family:Georgia,Times New Roman,serif;font-size:22px;position:relative;box-shadow:inset 0 0 0 2px #5a341e}.waiting-screen .waiting-share span{color:#f3d28c;font-size:32px;position:absolute;right:20px}.waiting-screen .text-button{color:#5d4b39;font-family:Georgia,Times New Roman,serif;font-size:16px;position:relative}.waiting-screen .pulse{color:#a86d2b;position:relative}@media (width<=650px){body:has(main>.waiting-screen){background-attachment:scroll}body:has(main>.waiting-screen) main{padding:86px 10px 18px}.waiting-screen .waiting{border-width:6px;width:min(94vw,520px);padding:46px 24px 26px}.waiting-screen .waiting h1{font-size:38px}.waiting-screen .waiting p:not(.eyebrow){font-size:14px}.waiting-screen .waiting-share{padding:16px 18px;font-size:19px}}.waiting-screen .waiting-share.sent{color:#173f37;background:#e9dfc6;border-color:#b98955;box-shadow:inset 0 0 0 2px #d4b37f}.waiting-screen .waiting-share.sent span{color:#173f37}.code-room{text-align:center}.code-room .eyebrow{margin-bottom:14px}.code-room h2{margin-bottom:12px}.code-help{color:#705b43;max-width:440px;margin:0 auto 22px;font-family:Georgia,Times New Roman,serif;font-size:15px;line-height:1.5}.room-code-simple{color:#143f37;letter-spacing:10px;text-align:center;background:#f7ecd7;border:2px solid #b98955;border-radius:12px;width:min(360px,100%);margin:0 auto 18px;padding:22px 20px 18px;font-family:Georgia,Times New Roman,serif;font-size:42px;display:block;box-shadow:0 4px #c79b69}.room-code-simple small{letter-spacing:1.8px;margin-top:12px;font-family:DM Sans,sans-serif;font-size:9px;font-weight:700;display:block}
