*{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:#171310;height:100%}body{color:#f0e9dc;-webkit-font-smoothing:antialiased;font-family:Yu Gothic,Hiragino Kaku Gothic ProN,Noto Sans JP,system-ui,sans-serif;overflow:hidden}.app{height:100%;position:relative}.app canvas{touch-action:none;display:block}.hud-top{pointer-events:none;position:absolute;top:18px;left:22px}.hud-top h1{letter-spacing:.12em;text-shadow:0 2px 12px #000c;font-size:20px;font-weight:800}.hud-top p{color:#cfc3ad;text-shadow:0 2px 10px #000c;margin-top:4px;font-size:13.5px}.hud-top p.last{color:#d9a441;letter-spacing:.04em;margin-top:2px;font-size:12.5px}.hud-top p.over{color:#f0b34a;font-weight:700}.slider{margin-top:10px;display:block}.slider-label{color:#cfc3ad;letter-spacing:.06em;justify-content:space-between;margin-bottom:4px;font-size:12px;display:flex}.slider-label em{color:#d9a441;font-style:normal}.slider input[type=range]{appearance:none;background:#c6a0604d;border-radius:2px;outline:none;width:100%;height:3px}.slider input[type=range]::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#d9a441;border-radius:50%;width:13px;height:13px}.hud-bgm{background:#120e0ab8;border:1px solid #c6a06033;border-radius:8px;margin-top:0;padding:7px 10px 9px}.hud-seg{background:#120e0ab8;border:1px solid #c6a06033;border-radius:8px;padding:7px 10px 9px}.hud-seg .slider-label{text-shadow:0 1px 6px #000000e6;margin-bottom:6px;font-size:11px}.hud-seg button{flex:1;padding:6px 4px;font-size:12px}.hud-bgm .slider{margin-top:0}.hud-bgm .slider+.slider{margin-top:9px}.hud-bgm .slider-label{text-shadow:0 1px 6px #000000e6;font-size:11px}.hud-side .viewhint{color:#bdae91;letter-spacing:.03em;text-align:right;text-shadow:0 1px 6px #000000e6;margin-top:-2px;font-size:11px}.hud-side{flex-direction:column;gap:8px;width:214px;display:flex;position:absolute;top:18px;right:18px}.hud-body{flex-direction:column;gap:8px;display:flex}.hud-side.shut .hud-body{display:none}.hud-toggle{letter-spacing:.06em;color:#bdae95;flex:none;align-self:flex-end;padding:7px 12px;font-size:11.5px}.row{gap:6px;display:flex}button{font:inherit;color:#e8e1d3;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);word-break:keep-all;background:#261f19db;border:1px solid #ffffff21;border-radius:7px;flex:1;padding:9px 8px;font-size:12.5px;font-weight:600;transition:all .12s}button:hover:not(:disabled){border-color:#ffffff52}button:disabled{opacity:.38;cursor:default}button.on,button.primary{color:#fff;background:#8a3b1e;border-color:#b8552e}.kifu{color:#cfc3ad;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1c1712b8;border:1px solid #ffffff17;border-radius:7px;max-height:46vh;margin-top:4px;padding:8px 10px;font-size:12.5px;line-height:1.85;list-style:none;overflow-y:auto}.kifu li{counter-increment:kifu}.kifu li:before{content:counter(kifu) ". ";color:#7d7265}.modal{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a08068c;place-items:center;display:grid;position:absolute;inset:0}.modal-inner{text-align:center;background:#241d17;border:1px solid #ffffff24;border-radius:12px;padding:22px 26px;box-shadow:0 24px 60px #0009}.modal-inner p{margin-bottom:14px;font-size:15px;font-weight:700}.modal-inner .row{gap:8px}.modal-inner button{padding:10px 22px}@media (width<=720px){.hud-side{overscroll-behavior:contain;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#14100cb8;border-radius:10px;width:auto;max-height:52vh;padding:10px;inset:auto 12px 12px;overflow-y:auto}.hud-side.shut{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;max-height:none;padding:0;overflow:visible}.kifu{max-height:14vh}.clocks{top:70px}.hud-top h1{font-size:16px}.hud-top p{font-size:12px}.clock{padding:5px 10px}.clock .t{font-size:15px}.hud-side .viewhint{display:none}}.nanori{cursor:pointer;background:radial-gradient(#0805031f,#0604039e);place-content:center;gap:26px;animation:7s ease-out forwards nanori-veil;display:grid;position:absolute;inset:0}.nanori-line{filter:drop-shadow(0 6px 22px #000000d9)drop-shadow(0 0 34px #d9a44173);width:min(74vw,1000px);height:auto;animation:7s cubic-bezier(.16,1,.3,1) forwards nanori-strike;display:block}.nanori-skip{text-align:center;letter-spacing:.34em;text-indent:.34em;color:#e9d8ba80;font-size:12px;animation:7s ease-out forwards nanori-hint}@keyframes nanori-strike{0%{opacity:0;filter:blur(10px);transform:scale(2.1)}9%{opacity:1;filter:blur();transform:scale(1)}78%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.06)}}@keyframes nanori-veil{0%{opacity:0}10%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes nanori-hint{0%,30%{opacity:0}50%{opacity:1}to{opacity:.6}}@media (prefers-reduced-motion:reduce){.nanori-line,.nanori,.nanori-skip{animation-duration:7s;animation-timing-function:linear}.nanori-line{animation-name:nanori-veil}}.start{background:radial-gradient(at 50% 60%,#0a08061f,#060504c7);place-items:center;padding:24px 16px;display:grid;position:absolute;inset:0;overflow-y:auto}.start-panel{background:#1a1510f0;border:1px solid #c6a06047;border-radius:14px;width:min(560px,100%);padding:26px 28px 24px;box-shadow:0 30px 80px #000000b3}.start-panel header{text-align:center;margin-bottom:20px}.start-panel .title{filter:drop-shadow(0 4px 16px #000c)drop-shadow(0 0 26px #d9a44159);width:min(74%,340px);height:auto;margin:2px auto 6px;display:block}.start-panel .era{letter-spacing:.5em;color:#b08d4e;text-indent:.5em;margin-bottom:8px;font-size:11px}.start-panel h1{letter-spacing:.18em;text-indent:.18em;color:#f2e4c4;font-family:Yu Mincho,Hiragino Mincho ProN,MS Mincho,serif;font-size:34px;font-weight:700}.start-panel .sub{color:#9b8d78;margin-top:8px;font-size:12.5px}.start-panel section{margin-bottom:16px}.start-panel h2{letter-spacing:.22em;color:#a08a63;margin-bottom:7px;font-size:11px;font-weight:700}.seg{gap:6px;display:flex}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:45%}.detail{color:#8d8271;margin-top:7px;font-size:11.5px;line-height:1.6}.check{color:#cfc3ad;cursor:pointer;align-items:center;gap:8px;margin-bottom:7px;font-size:12.5px;display:flex}.check input{accent-color:#a8571f;width:15px;height:15px}.start-panel .check.off{opacity:.55}.roomcode{letter-spacing:.26em;text-indent:.26em;text-align:center;color:#f0d79a;margin:4px 0 2px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:40px;font-weight:700}.codeinput{letter-spacing:.3em;text-align:center;text-transform:uppercase;color:#f0e3c8;background:#00000059;border:1px solid #c6a06059;border-radius:8px;flex:1;padding:9px 12px;font-size:17px}.start-panel button:disabled{opacity:.4;cursor:not-allowed}.start-panel .go{letter-spacing:.14em;color:#fff5e2;background:linear-gradient(#a8571f,#7d3c13);border-color:#c58b46;width:100%;margin-top:8px;padding:14px;font-size:15px;font-weight:700}.go-waiting{text-align:center;color:#a8977c;border:1px dashed #c58b466b;border-radius:7px;margin-top:8px;padding:14px;font-size:12.5px;line-height:1.6}.links{justify-content:center;align-items:center;gap:8px;margin-top:14px;display:flex}.links button{letter-spacing:.08em;color:#d9a441;text-underline-offset:4px;cursor:pointer;background:0 0;border:none;padding:4px 2px;font-size:12.5px;-webkit-text-decoration:underline #d9a44166;text-decoration:underline #d9a44166}.links button:hover{color:#f0c165}.links span{color:#6b6055;font-size:11px}.page{z-index:20;background:#060504d1;place-items:center;padding:28px 16px;display:grid;position:absolute;inset:0;overflow-y:auto}.page-inner{background:#18130ef5;border:1px solid #c6a06042;border-radius:14px;width:min(760px,100%);box-shadow:0 30px 90px #000000bf}.page-head{border-bottom:1px solid #c6a06029;justify-content:space-between;align-items:center;gap:16px;padding:20px 26px 14px;display:flex}.page-head h2{letter-spacing:.16em;color:#f0e3c8;font-family:Yu Mincho,Hiragino Mincho ProN,MS Mincho,serif;font-size:24px;font-weight:700}.page-close{flex:none;padding:7px 14px;font-size:12.5px}.page-body{color:#cec2ac;padding:20px 26px 30px;font-size:14px;line-height:1.95}.page-body .lead{color:#e0d3b8;border-left:2px solid #d9a44180;margin-bottom:22px;padding-left:14px}.page-body h3{letter-spacing:.1em;color:#f0c165;margin:26px 0 10px;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:16.5px;font-weight:700}.page-body h3:first-child{margin-top:0}.page-body p{margin-bottom:12px}.page-body em{color:#f0d79a;font-style:normal}.page-body b{color:#f0e3c8}.page-body ol,.page-body ul{margin:0 0 14px 1.3em}.page-body li{margin-bottom:7px;list-style:outside}.page-body ol li{list-style:decimal}.page-body dl{margin-bottom:16px}.page-body dl>div{border-bottom:1px solid #c6a0601a;grid-template-columns:8.5em 1fr;gap:10px;padding:8px 0;display:grid}.page-body dt{color:#e0c894;font-weight:700}.page-body .worth{border-collapse:collapse;width:100%;margin-bottom:14px}.page-body .worth th,.page-body .worth td{text-align:center;border-bottom:1px solid #c6a0601f;padding:7px 6px}.page-body .worth th{color:#e0c894;width:3.5em;font-weight:700}.page-body .sayings li{padding-left:1.1em;list-style:none;position:relative}.page-body .sayings li:before{content:"—";color:#8a7a5e;position:absolute;left:0}.page-body .note{color:#8d8271;border-top:1px solid #c6a06024;margin-top:20px;padding-top:14px;font-size:12.5px}.page-body h4{letter-spacing:.08em;color:#e0c894;margin:20px 0 8px;font-size:14.5px;font-weight:700}.page-body a{color:#d9a441;text-underline-offset:3px;text-decoration:underline}.ban-row{flex-wrap:wrap;justify-content:center;gap:16px;margin:16px 0 20px;display:flex}.ban{margin:0}.ban-grid{background:#d9b57e;border:2px solid #6b4a24;border-radius:2px;gap:1px;padding:1px;display:grid}.ban-sq{background:#e6c184;place-items:center;width:34px;height:36px;display:grid;position:relative}.ban-sm .ban-sq{width:26px;height:28px}.ban-sq.ring{box-shadow:inset 0 0 0 2px #c2712c}.ban-piece{color:#2b1d10;clip-path:polygon(50% 0%,88% 14%,100% 100%,0% 100%,12% 14%);background:#f0d9a8;place-items:center;width:92%;height:92%;font-family:Yu Mincho,Hiragino Mincho ProN,MS Mincho,serif;font-size:17px;font-weight:700;line-height:1;display:grid}.ban-sm .ban-piece{font-size:13px}.ban-piece.foe{color:#5c2018;background:#e3c290;transform:rotate(180deg)}.ban-dot{background:#3f8a5f;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 2px #3f8a5f47}.ban-sm .ban-dot{width:7px;height:7px}.ban-take{pointer-events:none;border:2px solid #c2551f;border-radius:50%;position:absolute;inset:3px}.ban figcaption{text-align:center;color:#a8997f;max-width:190px;margin-top:7px;font-size:11.5px;line-height:1.6}@media (width<=620px){.page-body dl>div{grid-template-columns:1fr;gap:2px}}.start-panel .hint{text-align:center;letter-spacing:.08em;color:#6f6555;margin-top:12px;font-size:11px}.clocks{flex-wrap:wrap;justify-content:center;gap:10px;display:flex;position:absolute;top:18px;left:50%;transform:translate(-50%)}.clock-held{text-align:center;color:#c58b46;flex-basis:100%;font-size:11px}.clock{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1c1712cc;border:1px solid #ffffff1a;border-radius:8px;align-items:baseline;gap:8px;padding:7px 14px;display:flex}.clock.active{background:#3c2a18db;border-color:#c58b46}.clock .who{color:#9b8d78;font-size:11px}.clock .t{font-variant-numeric:tabular-nums;color:#f0e9dc;font-size:17px;font-weight:700}.clock .t.urgent{color:#ef6b46}.clock .byo{color:#a08a63;font-size:10px}.hud-top p.check{color:#ef6b46;font-weight:700}.modal-inner p.big{font-size:19px}.modal-inner p.warn{color:#ef6b46;font-size:16px;font-weight:700}.modal-inner p.detail{max-width:30em;margin-top:6px}button.danger{color:#f0b8ac;border-color:#a33a2c}button.danger:hover:not(:disabled){border-color:#ef6b46}.langbar{justify-content:center;gap:4px;margin-bottom:16px;display:flex}.langbar button{letter-spacing:.04em;color:#a08a63;background:#00000040;border-color:#c6a06038;padding:4px 10px;font-size:11.5px}.langbar button.on{color:#f6ead0;background:#a8571fe6;border-color:#c58b46}.roomstep{color:#cbbda3;margin-bottom:10px;font-size:12.5px;line-height:1.7}.roomway{background:#ffffff05;border:1px solid #c6a06038;border-radius:9px;margin-bottom:10px;padding:10px 12px}.roomway .detail{margin:4px 0 8px}.start-panel .note{color:#7d715f;margin-top:8px;font-size:11px;line-height:1.7}
