@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600;700&display=swap";:root{--paper:#f6f5ef;--ink:#263d33;--green:#285b47;--muted:#7d837a;--line:#dddfd5;--gold:#c5a767}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Sans JP,sans-serif;font-size:14px;line-height:1.7}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.45}:is(button:focus-visible,a:focus-visible,input:focus-visible){outline-offset:4px;outline:3px solid #b69756}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button svg{flex-shrink:0}.header{border-bottom:1px solid var(--line);background:#fbfaf7;justify-content:space-between;align-items:center;height:104px;padding:0 5.7%;display:flex}.brand{letter-spacing:3px;align-items:center;gap:13px;font-family:Georgia,serif;font-size:23px;font-weight:700;line-height:1.2;display:flex}.brand small{letter-spacing:1.8px;margin-top:8px;font-family:Noto Sans JP,sans-serif;font-size:10px;font-weight:400;display:block}.brand-icon{letter-spacing:-3px;border:1px solid #3d5b48;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;padding-bottom:8px;font-size:42px;font-style:italic;font-weight:400;line-height:1;display:flex}.brand-icon span{color:var(--gold);margin-top:-12px;margin-left:3px;font-size:36px}nav{align-items:center;gap:28px;display:flex}.text-button{align-items:center;gap:8px;padding:8px 0;font-size:12px;display:inline-flex}.text-button:hover{color:#82966c}.upload-btn{background:var(--green);color:#fff;border-radius:5px;align-items:center;gap:8px;padding:11px 16px;font-size:12px;display:flex}.landing{grid-template-columns:1.25fr 1fr;gap:45px 65px;max-width:1220px;margin:0 auto;padding:65px 40px 0;display:grid}.eyebrow{letter-spacing:2px;color:#6b7b68;align-items:center;gap:9px;font-family:Arial,sans-serif;font-size:10px;font-weight:700;display:flex}.hero .eyebrow>span:first-child{background:var(--green);border-radius:100%;width:6px;height:6px}.tiny-line{background:#b8c2b0;width:22px;height:1px;margin:0 3px;display:inline-block}.serif-question{color:#a08d59}.hero-sub{letter-spacing:.5px;margin-top:19px;font-size:15px;font-weight:500;line-height:2.1}.hero-desc{color:#7b8178;margin-top:16px;font-size:12px;line-height:2.1}.hero-badges{flex-wrap:wrap;gap:19px;margin:25px 0 34px;display:flex}.hero-badges span{white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:flex}.mini-table{align-items:center;max-width:525px;padding:12px 4px 10px;display:flex;position:relative}.mini-table:before{content:"";background:#c5cbbd;height:1px;position:absolute;top:50%;left:0;right:0}.mini-card{background:#fffef9;border:1px solid #deded1;border-radius:5px;flex-direction:column;flex-shrink:1;width:148px;height:174px;padding:16px 13px;display:flex;position:relative;transform:rotate(-6deg);box-shadow:0 6px 9px #263d3307}.mini-card:last-child{transform:rotate(6deg)}.mini-card small{letter-spacing:1px;color:#8e9685;white-space:nowrap;font:7px Arial}.mini-card b{letter-spacing:-1px;margin-top:13px;font:34px Georgia}.mini-card b span{margin-left:3px;font:10px Noto Sans JP}.mini-card p{margin-top:10px;font-size:10px;font-weight:500}.mini-card>div{letter-spacing:1px;color:#a1a58f;border-top:1px solid #dfe1d3;margin-top:auto;padding-top:8px;font:6px Arial}.mini-card.green{background:var(--green);border:1px solid var(--green);color:#fbfbeb;z-index:2;height:188px;margin:0 4px;transform:rotate(0)}.mini-card.green small{color:#b4c7b5}.mini-card.green b{text-align:center;margin-top:5px;font-size:46px}.mini-card.green p{text-align:center;margin-top:0}.mini-card.green>div{color:#b3c6ad;text-align:center;border-color:#5c8068}.mini-dot{z-index:1;background:var(--paper);text-align:center;color:#829074;border:1px solid #c2cbba;border-radius:50%;flex-shrink:0;width:20px;height:20px;margin:0 4px;line-height:17px;position:relative}.illustration-note{color:#969b90;margin-top:12px;font-size:9px;display:block}.entry-panel{background:#fffefb;border:1px solid #dce0d4;border-radius:10px;align-self:start;margin-top:12px;padding:29px 32px 0;overflow:hidden;box-shadow:0 13px 35px #2a49330a}.panel-top{justify-content:space-between;align-items:center;margin-bottom:19px;display:flex}.status-dot{color:#87957e;align-items:center;gap:5px;font-size:9px;display:flex}.status-dot:before{content:"";background:#7a9370;border-radius:50%;width:4px;height:4px}.entry-panel h2{letter-spacing:.3px;margin-bottom:24px;font-family:Noto Serif JP,serif;font-size:23px;font-weight:500}.tabs{background:#f0f1e9;border-radius:5px;margin-bottom:24px;padding:4px;display:flex}.tabs button{color:#7f8677;justify-content:center;align-items:center;gap:5px;width:50%;padding:10px 3px;font-size:11px;display:flex}.tabs button.active{color:var(--green);background:#fffefa;border-radius:3px;font-weight:600;box-shadow:0 1px 5px #314b3210}label{margin:17px 0 0;font-size:11px;font-weight:500;display:block}input{width:100%;height:45px;color:var(--ink);background:#fffefa;border:1px solid #dce0d5;border-radius:4px;margin-top:8px;padding:0 14px;font-size:12px;display:block}input::placeholder{color:#a3a69c}.input-wrap{position:relative}.input-wrap>svg{color:#a2aa99;position:absolute;top:14px;left:13px}.input-wrap input{padding-left:39px}.field-note{color:#8b9184;margin-top:10px;font-size:9px;line-height:1.9}.primary{background:var(--green);color:#fffdf2;border:1px solid var(--green);border-radius:4px;justify-content:center;align-items:center;gap:18px;padding:13px 20px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.primary:hover:not(:disabled){background:#194a36;transform:translateY(-1px)}.primary:disabled{opacity:.45}.full{justify-content:space-between;width:100%;margin-top:24px}.entry-note{background:#f8f9f3;border-top:1px solid #e5e7dc;align-items:center;gap:12px;margin:29px -32px 0;padding:20px 28px;display:flex}.note-icon{color:#80956f;border:1px solid #dce2d2;border-radius:4px;justify-content:center;align-items:center;width:36px;height:42px;display:flex}.entry-note p{color:#8d9583;font-size:9px;line-height:1.9}.entry-note b{color:#56654e;font-size:11px;font-weight:500;line-height:2.1}.resume{color:var(--green);align-items:center;gap:6px;margin-top:18px;font-size:10px;display:flex}.resume span{margin-left:auto;font-family:monospace;font-size:11px}.steps{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;padding:29px 0 33px;display:flex}.steps>div{grid-template-columns:35px auto;column-gap:9px;display:grid}.steps>div>span{color:#acb69a;grid-row:1/3;padding-top:3px;font:22px Georgia}.steps h3{font-size:12px;font-weight:500}.steps p{color:#929789;margin-top:4px;font-size:10px}.steps>svg{color:#bac0ae;width:15px}footer{border-top:1px solid var(--line);color:#939b89;letter-spacing:1px;justify-content:space-between;max-width:1140px;margin:0 auto;padding:23px 0 30px;font:10px Georgia;display:flex}footer small{letter-spacing:0;margin-left:14px;font:9px Noto Sans JP}footer button{align-items:center;gap:8px;font-size:9px;display:flex}.game-main{max-width:1240px;margin:auto;padding:40px 40px 50px}.room-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.room-heading h1{margin-top:12px;font:500 29px Noto Serif JP}.room-code{border:1px solid var(--line);background:#fffdf6;border-radius:5px;padding:8px 15px}.room-code small{letter-spacing:1.6px;color:#919a88;font:8px Arial;display:block}.room-code button{letter-spacing:2px;align-items:center;gap:16px;padding:6px 0 0;font:20px monospace;display:flex}.room-toolbar{color:#8a9480;align-items:center;gap:24px;margin-bottom:9px;padding:20px 0;font-size:10px;display:flex}.room-toolbar>span{align-items:center;gap:6px;display:flex}.connection{color:var(--green)}.connection.offline{color:#a65c38}.spacer{flex:1}.surface{border:1px solid var(--line);background:#fffefa;border-radius:8px}.section-label{justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px;display:flex}.section-label h2{align-items:center;gap:16px;font-size:14px;font-weight:500;display:flex}.section-label h2 small{color:#8f9886;align-items:center;gap:5px;font-size:10px;font-weight:400;display:flex}.section-label>span{color:#8f9886;align-items:center;gap:6px;font-size:10px;display:flex}.lobby-grid{grid-template-columns:1.3fr 1fr;gap:26px;display:grid}.lobby-members,.setup{padding:28px}.lobby-members{flex-direction:column;min-height:500px;display:flex}.member-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.member{background:#f4f5ee;border-radius:5px;align-items:center;gap:11px;min-width:0;padding:14px;display:flex}.avatar{color:#5c7454;background:#e6ebdd;border:1px solid #d1d9c5;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;display:inline-flex}.color1,.color4,.color7{color:#8a6e4d;background:#ece3d3}.color2,.color5,.color8{color:#597080;background:#dee6ed}.member b{word-break:break-all;font-size:12px}.member b small{color:#7e8d71;margin-left:7px;font-size:8px;font-weight:400}.member p{color:#8d9783;font-size:9px}.icon-button{margin-left:auto;padding:4px}.invite-hint{color:#7c8871;background:#f6f6f0;border-radius:4px;align-items:center;gap:12px;margin-top:auto;padding:18px;display:flex}.invite-hint p{font-size:11px}.invite-hint small{color:#959e8c;font-size:9px}.file-drop{text-align:center;background:#f7f8f2;border:1px dashed #cbd4bf;border-radius:5px;margin-bottom:22px;padding:27px 15px}.file-drop.loaded{border-style:solid;border-color:#c6d6bd}.file-icon{color:#7e9471;border:1px solid #d4ddc9;border-radius:50%;margin-bottom:12px;padding:11px;display:inline-flex}.file-drop h3{overflow-wrap:anywhere;font-size:13px;font-weight:500}.file-drop p{color:#8d9683;margin:7px 0 15px;font-size:10px}.secondary{color:#547049;background:#fffef8;border:1px solid #cdd6c1;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:10px 17px;font-size:11px;display:inline-flex}.secondary:hover{background:#eff2e6}.download-link{color:#88977d;justify-content:center;align-items:center;gap:5px;margin:13px auto 0;font-size:10px;display:flex}.setup-row{border-bottom:1px solid #e8eade;justify-content:space-between;padding:10px 0;font-size:11px;display:flex}.setup-row>span{color:#8d9683}.setup-row b{font-weight:500}.under-button{color:#9ba18f;text-align:center;margin-top:9px;font-size:9px;display:block}.warning{color:#aa6b3c;margin-top:10px;font-size:11px}.waiting{text-align:center;color:#718366;margin-top:20px;font-size:12px}.turn-banner{background:#e8ecdf;border:1px solid #d6ddc8;border-radius:6px;align-items:center;gap:14px;margin:0 0 22px;padding:17px 24px;display:flex}.turn-banner.your-turn{background:#e1eadb;border-color:#baceab}.pulse{background:#7e9d66;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 5px #7e9d6616}.turn-banner b{font-size:14px;font-weight:500}.turn-banner p{color:#7f8e73;margin-top:4px;font-size:10px}.turn-number{white-space:nowrap;letter-spacing:1px;color:#849576;margin-left:auto;font:10px Arial}.timeline-surface{padding:24px 24px 0;overflow:hidden}.timeline-scroll{scrollbar-color:#b8c7a9 transparent;scrollbar-width:thin;padding:7px 0 26px;overflow-x:auto}.timeline-track{justify-content:center;align-items:center;width:max-content;min-width:100%;display:flex;position:relative}.timeline-track:before{content:"";background:#cbd7bc;height:1px;position:absolute;top:50%;left:0;right:0}.timeline-pair{align-items:center;display:flex;position:relative}.place{color:#95a585;background:#fffefa;border:1px dashed #becbb1;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;margin:0 13px;display:flex;opacity:1!important}.place.ready{border-style:solid;border-color:var(--green);color:var(--green);cursor:pointer;background:#edf4e4;box-shadow:0 0 0 4px #dce9d365}.place.ready:hover{background:var(--green);color:#fff;transform:scale(1.12)}.history-card{background:#f9f7ea;border:1px solid #d6d7bf;border-radius:5px;flex-direction:column;width:163px;min-height:203px;padding:17px 15px;display:flex;box-shadow:0 3px 7px #384c3210}.history-card>small{letter-spacing:1px;color:#9b9f83;font:8px Arial}.history-card strong{overflow-wrap:anywhere;margin-top:16px;font-family:Noto Serif JP,serif;font-size:20px;font-weight:600;line-height:1.5}.card-rule{background:#d5d8bd;height:1px;margin:12px 0}.history-card>p{overflow-wrap:anywhere;font-size:12px;line-height:1.8}.card-foot{letter-spacing:1px;color:#a1a78a;justify-content:space-between;margin-top:auto;padding-top:18px;font:7px Arial;display:flex}.timeline-bottom{border-top:1px solid var(--line);color:#8b967d;justify-content:space-between;gap:15px;padding:15px 0;font-size:10px;display:flex}.timeline-bottom b{color:#566d49;font-weight:500}.divider{color:#c9cfbd;margin:0 10px}.result{background:#eff3e6;border:1px solid #dce2d1;border-radius:5px;align-items:flex-start;gap:16px;margin:17px 0;padding:13px 18px;font-size:11px;display:flex}.result>span{white-space:nowrap;color:#4c7740;font-weight:600}.result p{color:#69765e}.result strong{margin-left:10px;font-weight:500}.result small{margin-top:2px;font-size:10px;display:block}.result.incorrect{background:#f8ede2;border-color:#e4d1b9}.result.incorrect>span{color:#a67145}.hands{margin-top:29px}.hand-row{gap:14px;padding:3px 2px 12px;display:flex;overflow:auto}.hand-card{text-align:left;background:#fbfcf6;border:1px solid #d5ddca;border-radius:5px;flex-direction:column;width:20%;min-width:150px;max-width:230px;min-height:166px;padding:15px;transition:transform .15s,background .15s;display:flex}.hand-card:disabled{opacity:1;color:#65745c}.hand-card:not(:disabled):hover{border-color:#849f6d;transform:translateY(-3px)}.hand-card.selected{background:#e3ecd9;border:2px solid #587d43;padding:14px;transform:translateY(-3px)}.hand-card>small{letter-spacing:1px;color:#9ba88d;justify-content:space-between;align-items:center;font:8px Arial;display:flex}.hand-card p{overflow-wrap:anywhere;margin:15px 0 17px;font-size:12px;line-height:1.9}.hidden-date{color:#9ba78e;border-top:1px solid #e0e5d7;margin-top:auto;padding-top:9px;font-size:8px}.selected .hidden-date{color:#607d4d}.other-hands{border-top:1px solid var(--line);margin-top:24px;padding-top:22px}.other-player{border:1px solid var(--line);background:#f8f8f1;border-radius:5px;gap:20px;margin-top:13px;padding:15px;display:flex}.other-player.current{border-left:3px solid #5f8452}.other-player-name{flex-wrap:wrap;align-content:center;align-items:center;gap:9px;min-width:150px;display:flex}.other-player-name b{overflow-wrap:anywhere;max-width:110px;font-size:11px}.other-player-name>small{color:#9ca48f;font-size:9px}.other-player-name .avatar{width:28px;height:28px;font-size:11px}.other-cards{flex-wrap:wrap;flex:1;gap:8px;display:flex}.other-cards>div{overflow-wrap:anywhere;background:#fffef9;border:1px solid #e0e4d5;border-radius:3px;align-items:flex-start;gap:7px;max-width:210px;padding:9px 12px;font-size:10px;display:flex}.other-cards>div>span{color:#b2bca4;font:17px Georgia}.solo-note{color:#8a967e;padding:10px 0;font-size:11px}.admin-actions{color:#98a08d;justify-content:flex-end;gap:24px;padding-top:25px;display:flex}.winner{background:#e2ead7;border:1px solid #bbcba7;border-radius:7px;align-items:center;gap:20px;margin-bottom:22px;padding:24px 28px;display:flex}.winner>svg{color:#9f8d4e;width:32px;height:32px}.winner span{letter-spacing:2px;color:#83966e;font:9px Arial}.winner h2{margin:7px 0;font:500 24px Noto Serif JP}.winner p{color:#819371;font-size:11px}.winner .primary{margin-left:auto}.alert{z-index:20;color:#905b37;background:#fbebdf;justify-content:space-between;gap:15px;padding:12px 5.7%;font-size:12px;display:flex;position:sticky;top:0}.alert>button{align-items:center;padding:0;display:flex}.toast{color:#fffef4;z-index:50;background:#285b47;border-radius:5px;gap:8px;padding:12px 18px;font-size:12px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #243d3330}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#192d2470;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fffef7;border:1px solid #dce3d2;border-radius:9px;max-width:670px;max-height:90vh;padding:32px;position:relative;overflow:auto;box-shadow:0 20px 70px #122b2733}.modal-close{color:#8a957f;padding:5px;position:absolute;top:17px;right:17px}.modal h2{margin:16px 0 20px;font:500 24px Noto Serif JP}.modal p,.modal li{color:#7c8970;font-size:12px;line-height:2}.modal ol{padding-left:20px}.modal li{margin:11px 0}.modal li b{color:#486141;font-weight:500}.modal h3{margin:22px 0 10px;font-size:14px}.modal pre{background:#eff2e6;border-radius:4px;padding:15px;font-size:11px;overflow:auto}.modal .secondary{margin:18px 0 0}.modal .help-note{color:#939e86;margin-top:17px;font-size:10px}.modal a{font-size:10px;text-decoration:underline}.confirm-modal{max-width:460px}.confirm-modal h2{margin-top:0;font:500 19px/1.6 Noto Sans JP}.confirm-buttons{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.confirm-buttons .secondary{margin:0}.code-input{text-transform:uppercase;letter-spacing:2px;font-family:monospace}@media (min-width:1500px){.landing{gap:65px 85px;padding-top:85px}.hero h1{font-size:58px}.entry-panel{margin-top:20px}.steps{margin-top:15px}}@media (max-width:1000px){.landing{gap:40px 30px;padding:45px 30px 0}.hero h1{font-size:43px}.entry-panel{padding:25px 23px 0}.entry-note{margin-left:-23px;margin-right:-23px;padding:20px}.hero-badges{gap:10px}.hero-badges span{font-size:9px}.mini-card{height:158px;padding:13px 9px}.mini-card.green{height:172px}.mini-card b{font-size:28px}.mini-dot{width:16px;height:16px;margin:0 2px;font-size:12px;line-height:13px}.mini-card small{font-size:5px}.mini-card p,.steps p{font-size:9px}footer{margin:0 30px}.lobby-grid{grid-template-columns:1.1fr 1fr}.member-grid{grid-template-columns:1fr}.game-main{padding:30px}.room-heading h1{font-size:24px}.header{padding:0 30px}nav{gap:17px}}@media (max-width:720px){.header{flex-wrap:wrap;gap:20px;height:auto;min-height:85px;padding:18px 20px}.brand{gap:10px;font-size:19px}.brand-icon{width:34px;height:34px;font-size:34px}.brand small{margin-top:6px;font-size:8px}.brand-icon span{font-size:29px}nav{gap:16px;margin-left:auto}.header nav .text-button{font-size:10px}.header nav .text-button span{display:none}.upload-btn{padding:9px 12px;font-size:10px}.landing{flex-direction:column;gap:32px;padding:35px 23px 0;display:flex}.hero h1{margin-top:17px;font-size:42px}.hero-sub{margin-top:15px;font-size:13px}.hero-desc{font-size:11px}.hero-badges{gap:14px;margin-bottom:23px}.mini-table{max-width:430px;margin:auto}.mini-card{width:30%;height:165px;padding:15px 12px}.mini-card.green{height:180px}.mini-card small{font-size:6px}.mini-card b{font-size:32px}.mini-card p{font-size:10px}.mini-card.green p{font-size:11px}.illustration-note{text-align:center}.entry-panel{width:100%;margin:0;padding:25px 25px 0}.entry-panel h2{font-size:24px}.entry-note{margin-left:-25px;margin-right:-25px;padding:20px 25px}.tabs button{font-size:12px}input{height:48px;font-size:14px}label{font-size:12px}.field-note{font-size:10px}.primary{padding:14px 18px;font-size:13px}.entry-note p{font-size:10px}.entry-note b{font-size:12px}.steps{flex-direction:column;align-items:flex-start;gap:24px;width:100%;padding:28px 0;display:flex}.steps>svg{display:none}.steps>div{column-gap:14px}.steps h3{font-size:13px}.steps p{font-size:11px}footer{gap:18px;margin:0 23px;padding:20px 0}footer>span>small{margin:7px 0 0;font-size:8px;display:block}footer button{font-size:8px}.game-main{padding:28px 18px 35px}.room-heading{align-items:flex-start;gap:12px}.room-heading h1{max-width:250px;font-size:21px;line-height:1.65}.room-heading .eyebrow{letter-spacing:1.3px;font-size:8px}.room-code{flex-shrink:0;padding:8px 9px}.room-code button{letter-spacing:1px;gap:8px;font-size:13px}.room-code small{font-size:7px}.room-code svg{width:12px}.room-toolbar{gap:15px;margin:0;padding:16px 0;font-size:8px}.room-toolbar .text-button{gap:4px;font-size:9px}.lobby-grid{grid-template-columns:1fr;gap:18px}.lobby-members,.setup{padding:21px}.lobby-members{min-height:270px}.member-grid{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:25px}.member{gap:7px;padding:10px}.member b{font-size:10px}.member .avatar{width:29px;height:29px;font-size:11px}.member b small{margin:0;display:block}.member p{font-size:8px}.invite-hint{padding:13px}.invite-hint p{font-size:10px}.turn-banner{gap:12px;padding:15px}.turn-banner b{font-size:13px}.turn-banner p{font-size:10px}.turn-number{display:none}.timeline-surface{padding:20px 14px 0}.section-label h2{gap:10px;font-size:12px}.section-label h2 small,.section-label>span{font-size:8px}.place{width:29px;height:29px;margin:0 8px}.history-card{width:145px;min-height:188px}.history-card strong{font-size:18px}.timeline-bottom{flex-wrap:wrap;gap:5px;font-size:8px}.hand-row{gap:10px}.hand-card{width:145px;min-width:145px;min-height:165px;padding:13px}.hand-card.selected{padding:12px}.hands{margin-top:24px}.result{gap:10px;font-size:10px}.result small{font-size:9px}.other-player{flex-direction:column;gap:12px;padding:13px}.other-player-name{min-width:0}.other-cards>div{max-width:none;font-size:10px}.winner{flex-wrap:wrap;gap:14px;padding:20px}.winner h2{font-size:19px}.winner .primary{justify-content:space-between;width:100%;margin-left:0}.modal-backdrop{padding:14px}.modal{padding:25px 22px}.modal h2{font-size:21px}.modal p,.modal li{font-size:11px}.confirm-modal h2{font-size:17px}.desktop{display:none}.toast{width:max-content;max-width:95vw;font-size:10px}}input[hidden]{display:none!important}.room-toolbar{flex-wrap:wrap;gap:8px 18px}.danger-text{color:#a7604b}.danger-text:hover{color:#853e2b}.winner-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto;display:flex}.winner-actions .primary{margin-left:0}.danger-button{background:#9a503d;border-color:#9a503d}.danger-button:hover:not(:disabled){background:#803d2c}.winner .winner-actions .primary{margin-left:0}@media (max-width:720px){.winner-actions{width:100%;margin-left:0}.winner .winner-actions .primary,.winner-actions .secondary{justify-content:space-between;width:100%}.room-toolbar{column-gap:13px}}.turn-order{flex-wrap:wrap;align-items:center;gap:8px;margin:-5px 0 20px;display:flex}.turn-order-label{color:#8a967e;margin-right:3px;font-size:10px}.turn-order-player{overflow-wrap:anywhere;background:#f9faf4;border:1px solid #d7dfcc;border-radius:4px;align-items:center;gap:6px;max-width:100%;padding:5px 10px;font-size:10px;display:inline-flex}.turn-order-player>b{color:#8e9c80;font:11px Arial}.turn-order-player>small{color:#88977b;font-size:8px}.turn-order-player.current{color:#385d2d;background:#e3ecd9;border-color:#9db88a}.turn-order-player.current>b{color:#567746}.hero h1{letter-spacing:0;margin-top:15px;font-family:Noto Sans JP,sans-serif;font-size:38px;font-weight:600;line-height:1.5}.hero-sub{font-size:14px;font-weight:400}.hero-desc{font-size:12px}.mini-card{justify-content:center}.mini-card b{margin-top:0}.mini-card.green p{margin:0;font-size:13px;line-height:2}.history-card{justify-content:center;min-height:180px}.history-card strong{margin-top:0;line-height:1.65}.hand-card{text-align:center;justify-content:center;align-items:center;min-height:150px;position:relative}.hand-card p{margin:0;line-height:1.85}.selected-mark{color:var(--green);position:absolute;top:10px;right:10px}.hand-card.sending{animation:.5s ease-in both hand-send}.room-heading h1{font-family:Noto Sans JP,sans-serif;font-size:26px}.just-placed{animation:.7s ease-out placed-settle}.play-reveal{z-index:90;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17281dd9;justify-content:center;align-items:center;padding:25px;animation:.25s ease-out reveal-backdrop;display:flex;position:fixed;inset:0}.reveal-content{text-align:center;color:#fbfff5;width:400px;max-width:100%;position:relative}.reveal-player{color:#d4dfcc;overflow-wrap:anywhere;margin-bottom:22px;font-size:13px}.reveal-perspective{perspective:1000px;width:245px;height:290px;margin:0 auto;animation:.55s cubic-bezier(.15,.8,.2,1) both card-arrive}.reveal-card{width:100%;height:100%;transform-style:preserve-3d;animation:.6s ease-in-out .55s both card-flip;position:relative}.reveal-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;color:#2a4533;background:#f5f5e7;border:2px solid #aabf94;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:25px;display:flex;position:absolute;inset:0;overflow:auto;box-shadow:0 18px 55px #08130d60}.reveal-back{color:#f3f8e7;background:#315c43;border-color:#adc398}.reveal-face p{overflow-wrap:anywhere;font-size:18px;line-height:1.8}.reveal-front{transform:rotateY(180deg)}.reveal-front strong{overflow-wrap:anywhere;font-family:Noto Serif JP,serif;font-size:24px;font-weight:600;line-height:1.6}.reveal-front .card-rule{width:100%;min-height:1px;margin:19px 0}.reveal-front p{font-size:15px}.reveal-verdict{opacity:0;min-height:119px;margin-top:25px;transition:opacity .25s,transform .3s;transform:translateY(10px)}.reveal-verdict.visible{opacity:1;transform:translateY(0)}.reveal-verdict svg{color:#bedc95;vertical-align:middle;margin-right:10px;display:inline-block}.reveal-verdict h2{vertical-align:middle;font-size:30px;font-weight:600;line-height:1.5;display:inline-block}.reveal-verdict p{color:#d1dfc5;margin-top:10px;font-size:12px}.reveal-continue{color:#d4dfcd;border:1px solid #adc39860;border-radius:5px;padding:8px 25px;font-size:12px}.reveal-continue:hover:not(:disabled){background:#ffffff10}.reveal-continue:disabled{visibility:hidden}.is-correct .reveal-front{border-color:#91bc6a;box-shadow:0 0 0 5px #a9cd6530,0 18px 55px #08130d60}.is-correct .reveal-perspective{animation:.4s ease-out both card-correct}.is-correct .reveal-content:before{content:"";pointer-events:none;border:2px solid #c4de7750;border-radius:50%;width:300px;height:300px;animation:.6s ease-out both correct-ring;position:absolute;top:167px;left:calc(50% - 150px)}.is-incorrect .reveal-front{border-color:#d89574;box-shadow:0 0 0 5px #e79b7920,0 18px 55px #08130d60}.is-incorrect .reveal-perspective{animation:.45s ease-in-out both card-incorrect}.is-incorrect .reveal-verdict svg{color:#f2ac88}.is-incorrect .reveal-verdict p{color:#ebcdb9}@keyframes hand-send{to{opacity:.25;transform:translateY(-24px)scale(.94)}}@keyframes placed-settle{0%{opacity:0;transform:translateY(-16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes reveal-backdrop{0%{opacity:0}to{opacity:1}}@keyframes card-arrive{0%{opacity:0;transform:translateY(110px)rotate(-9deg)scale(.65)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes card-flip{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}@keyframes card-correct{0%,to{transform:scale(1)}45%{transform:scale(1.06)}}@keyframes card-incorrect{0%,to{transform:translate(0)}20%,60%{transform:translate(-11px)rotate(-2deg)}40%,80%{transform:translate(11px)rotate(2deg)}}@keyframes correct-ring{0%{opacity:.8;transform:translateY(-50%)scale(.6)}to{opacity:0;transform:translateY(-50%)scale(1.8)}}@media (max-width:720px){.hero h1{font-size:32px}.history-card{min-height:160px}.hand-card{min-height:145px}.reveal-perspective{width:210px;height:250px}.reveal-face{padding:23px}.reveal-face p{font-size:16px}.reveal-front strong{font-size:21px}.reveal-front p{font-size:14px}.reveal-verdict{min-height:105px;margin-top:20px}.reveal-verdict h2{font-size:26px}.reveal-verdict p{font-size:11px}.reveal-player{margin-bottom:17px}.play-reveal{padding:20px}.room-heading h1{font-size:23px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal-card.is-revealed{transform:rotateY(180deg)}.play-reveal .reveal-perspective{opacity:1;transform:none}.hand-card.sending{opacity:.55}.reveal-verdict.visible{opacity:1;transform:none}.is-correct .reveal-content:before{display:none}}.play-reveal{overflow-y:auto}.reveal-content{width:900px;margin:auto}.reveal-direction{color:#bcccb3;justify-content:center;align-items:center;gap:18px;margin-bottom:42px;font-size:12px;line-height:1.5;display:flex}.reveal-direction>svg{width:68px}.reveal-placement{grid-template-columns:minmax(0,1fr) 24px minmax(0,1.2fr) 24px minmax(0,1fr);align-items:center;gap:15px;width:100%;display:grid}.reveal-played{min-width:0;position:relative}.reveal-placed-label{color:#e5d6a3;letter-spacing:1px;font-size:12px;font-weight:600;position:absolute;top:-30px;left:0;right:0}.reveal-placement .reveal-perspective{width:100%;max-width:245px}.reveal-position-arrow{color:#beccad;justify-self:center}.reveal-neighbor{color:#304630;background:#f2f1e4;border:1px solid #bdc8aa;border-radius:9px;flex-direction:column;justify-content:center;justify-self:center;width:100%;max-width:210px;height:225px;padding:22px 18px;display:flex;overflow:auto;box-shadow:0 10px 30px #08130d20}.reveal-neighbor strong{overflow-wrap:anywhere;font:600 19px/1.65 Noto Serif JP,serif}.reveal-neighbor .card-rule{width:100%;min-height:1px;margin:15px 0}.reveal-neighbor p{overflow-wrap:anywhere;font-size:13px;line-height:1.85}.reveal-edge{color:#d0dcc6;border:1px dashed #adc39855;border-radius:9px;flex-direction:column;justify-content:center;min-height:160px;padding:15px 10px;display:flex}.reveal-edge>span{font-size:17px}.reveal-edge>p{color:#a9b89f;margin-top:8px;font-size:10px;line-height:1.8}.is-correct .reveal-content:before{display:none}@media (max-width:720px){.reveal-placement{grid-template-columns:minmax(0,1fr) 12px minmax(0,1.18fr) 12px minmax(0,1fr);gap:6px}.reveal-direction{gap:10px;margin-bottom:34px;font-size:10px}.reveal-placed-label{font-size:10px;top:-25px}.reveal-placement .reveal-perspective{height:220px}.reveal-placement .reveal-face{border-radius:7px;padding:12px 9px}.reveal-placement .reveal-face p{font-size:12px;line-height:1.8}.reveal-placement .reveal-front strong{font-size:15px}.reveal-placement .reveal-front .card-rule{margin:13px 0}.reveal-neighbor{border-radius:6px;height:175px;padding:12px 8px}.reveal-neighbor strong{font-size:12px;line-height:1.75}.reveal-neighbor p{font-size:10px;line-height:1.8}.reveal-neighbor .card-rule{margin:11px 0}.reveal-edge{min-height:140px;padding:12px 7px}.reveal-edge>span{font-size:14px}.reveal-edge>p{font-size:9px}.reveal-position-arrow{width:12px;height:15px}}.setup-row{align-items:center;gap:12px}.setup-row label{color:#8d9683;margin:0;font-size:11px}.setup-row select{color:#36523c;font:inherit;background:#fffef8;border:1px solid #cdd6c1;border-radius:4px;padding:7px 12px}.room-toolbar{flex-wrap:wrap}
