:root{color-scheme:light;--paper: #efeae2;--paper-2: #f7f4ee;--ink: #221f1b;--muted: #6f675e;--line: #ddd4c8;--pine: #2c5e52;--pine-deep: #1e433b;--shadow: 0 12px 30px rgba(34, 31, 27, .06);font-family:Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif;background:var(--paper);color:var(--ink)}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;min-height:100%}body:has(.scene-root){overflow:hidden}button,select,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--pine);outline-offset:2px}.eyebrow{margin:0 0 8px;color:var(--pine);font-size:.78rem;letter-spacing:.14em}h1{margin:0;font-family:Iowan Old Style,Palatino Linotype,Palatino,Yu Mincho,serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:600;letter-spacing:-.03em}.status-view{max-width:640px;margin:0 auto;padding:40px 20px 64px;padding:calc(40px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) calc(64px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px))}.status-view p{color:var(--muted)}.text-button,.overlay-button{border:1px solid transparent;border-radius:999px;background:var(--ink);color:#f7f4ee}.text-button{padding:10px 16px}.scene-root{position:fixed;inset:0;background:#141816;--layer-chrome: 2;--layer-orientation: 4;--layer-settings: 5}.scene-stage{position:absolute;inset:0}.scene-canvas{width:100%;height:100%;display:block;touch-action:none}.scene-chrome{position:absolute;z-index:var(--layer-chrome);inset:0;pointer-events:none;color:#f7f4ee;opacity:1;visibility:visible;transition:opacity .32s ease,visibility 0s linear 0s}.chrome-group{position:absolute;display:flex;flex-direction:column;align-items:stretch;gap:6px;pointer-events:auto}.chrome-top-left{top:calc(12px + env(safe-area-inset-top,0px));left:calc(16px + env(safe-area-inset-left,0px))}.chrome-menu-wrap{position:relative;display:flex;flex-direction:column}.chrome-menu{position:absolute;z-index:1;top:calc(100% + 6px);right:0;display:grid;gap:4px;min-width:9.5em;max-width:calc(100vw - 200px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));padding:6px;background:#f7f4ee;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.chrome-menu[hidden]{display:none}.menu-item{min-height:44px;padding:0 14px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-weight:600;text-align:left;white-space:nowrap}.menu-item[aria-pressed=true]{background:var(--ink);color:#f7f4ee}.menu-item:hover:not([aria-pressed=true]){background:#00000012}.chrome-top-right{top:calc(12px + env(safe-area-inset-top,0px));right:calc(16px + env(safe-area-inset-right,0px))}.fullscreen-button{min-width:4.8em}.fullscreen-button[hidden]{display:none}.scene-chrome:before{content:"";position:absolute;top:0;left:0;right:0;height:calc(72px + env(safe-area-inset-top,0px));background:linear-gradient(to bottom,#0c0e0d99,#0c0e0d00)}.scene-root.is-chrome-idle .scene-chrome{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s ease,visibility 0s linear .32s}.scene-root.is-chrome-revealing .scene-chrome,.scene-root.is-chrome-revealing .chrome-group{pointer-events:none}.overlay-button{display:flex;align-items:center;justify-content:center;min-width:84px;min-height:44px;padding:0 14px;background:#141816b8;border-color:#f7f4ee47;color:#f7f4ee;font-size:.92rem;text-align:center;text-decoration:none;white-space:nowrap}.chrome-back{font-size:.82rem}.settings-panel{display:none;position:absolute;z-index:var(--layer-settings);top:calc(120px + env(safe-area-inset-top,0px));left:calc(16px + env(safe-area-inset-left,0px));width:min(300px,calc(100vw - 32px));width:min(300px,calc(100vw - 32px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:calc(100vh - 136px);max-height:calc(100dvh - 136px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:hidden;padding:0;background:#f7f4eef5;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.settings-panel.is-open{display:flex;flex-direction:column}.settings-panel-bar{display:flex;flex:none;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 0 16px}.settings-panel h2{margin:0;font-size:1rem}.settings-close{flex:none;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);line-height:1.2;white-space:nowrap}.settings-panel-body{display:grid;gap:12px;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:12px 16px 16px}.field{display:grid;gap:6px;font-size:.92rem}.field input,.field select,.panel-button{width:100%}.field select,.panel-button{min-height:40px;padding:8px 10px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:10px}.panel-button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#f7f4ee}.panel-button:disabled{opacity:.5}.panel-section{display:grid;gap:8px}.panel-heading{margin:0;color:var(--pine);font-size:.78rem;letter-spacing:.08em}.choice-group{display:grid;gap:8px}.panel-note{margin:0;color:var(--muted);font-size:.82rem;line-height:1.5}.orientation-hint{position:absolute;z-index:var(--layer-orientation);inset:0;display:flex;align-items:center;justify-content:center;padding:28px 20px;padding:calc(28px + env(safe-area-inset-top,0px)) calc(20px + env(safe-area-inset-right,0px)) calc(28px + env(safe-area-inset-bottom,0px)) calc(20px + env(safe-area-inset-left,0px));background:#080c1038;color:#f4f1ea;pointer-events:none}.orientation-hint[hidden]{display:none}.orientation-hint p{margin:0;max-width:18rem;padding:12px 18px;border:1px solid rgba(244,241,234,.22);border-radius:999px;background:#0a0e129e;font-size:.92rem;letter-spacing:.04em;line-height:1.5;text-align:center}@media(prefers-reduced-motion:reduce){.scene-chrome{transition:none}}@media(pointer:coarse),(max-width:520px),(max-height:520px)and (max-width:1100px){.scene-root.is-settings-open .scene-chrome{visibility:hidden;pointer-events:none}.scene-root.is-settings-open .settings-panel{top:calc(10px + env(safe-area-inset-top,0px));max-height:calc(100vh - 26px);max-height:calc(100dvh - 26px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}
