:root{--page:#faf7f0;--text:#2b2c2b;--text-secondary:#3a3b3a;--control-edge:#7f7155;--focus:#3d4f37;--header:#3d4f37;--header-text:#fff;--tab-bar:#fff;--tab-bar-edge:#7f7155;--tab-active:#3d4f37;--tab-active-text:#fff;--tab-inactive-text:#2b2c2b;--mark-bob:#3d4f37;--mark-cap:#7f7155;--tile:#fff;--disc-blue:#dff2fe;--disc-sand:#e6d3b3;--disc-rose:#ecd3d1;--disc-cream:#efe6d6;--warning:#f4c2bd;--warning-text:#2b2c2b;--warning-edge:#2b2c2b;--status-good:#cbdec5;--status-tight:#f3d27a;--status-short:#f4c2bd}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--page);color:var(--text);margin:0;font-family:-apple-system,system-ui,sans-serif;font-size:16px;line-height:1.4}button{font:inherit;color:inherit;background:0 0;border:0;margin:0}h1,h2{font-size:22px;font-weight:600;line-height:1.25}button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.header button:focus-visible{outline-color:var(--header-text)}.shell{flex-direction:column;min-height:100dvh;display:flex}header.header{height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left));background:var(--header);color:var(--header-text);align-items:center;gap:10px;display:flex;position:sticky;top:0}svg.mark{height:32px}.header svg.mark{width:40px;height:40px}.header .mark-disc{fill:var(--page)}.header .mark-bob{fill:var(--mark-bob)}.header .mark-cap{fill:var(--mark-cap)}span.header-name{font-size:20px;font-weight:600}button.header-settings{border:1px solid var(--header-text);border-radius:8px;min-width:44px;height:44px;margin-left:auto;padding:0 12px;font-size:17px}main.tab-panel{padding:18px max(18px, env(safe-area-inset-right)) 18px max(18px, env(safe-area-inset-left));flex:1}section.warning{background:var(--warning);border:1px solid var(--warning-edge);color:var(--warning-text);border-radius:12px;margin:0 0 18px;padding:16px}h2.warning-heading{margin:0 0 8px;font-size:17px;font-weight:700;line-height:1.3}p.warning-text{margin:0}p.warning-text+p.warning-text{margin-top:8px}nav.tab-bar{padding:6px max(8px, env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));border-top:1px solid var(--tab-bar-edge);background:var(--tab-bar);height:calc(61px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr;gap:8px;display:grid;position:sticky;bottom:0}button.tab{min-width:44px;height:48px;color:var(--tab-inactive-text);border-radius:8px;font-size:17px;font-weight:600}.tab.tab-active{background:var(--tab-active);color:var(--tab-active-text)}.screen{padding:24px max(18px, env(safe-area-inset-right)) calc(32px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left))}main.screen.install,main.screen.cannot-run{padding-top:calc(24px + env(safe-area-inset-top))}svg.mark.install-mark{height:64px;margin:0 auto 16px;display:block}.install-mark .mark-bob{fill:var(--mark-bob)}.install-mark .mark-cap{fill:var(--mark-cap)}h1.install-heading{text-align:center;margin:0 0 8px}p.install-intro{text-align:center;color:var(--text-secondary);margin:0 0 24px}h2.install-platform{margin:0 0 8px}ol.install-steps{margin:0;padding-left:24px}ol.install-steps li{margin:0 0 8px}ol.install-steps li:last-child{margin:0}hr.install-rule{border:0;border-top:1px solid var(--control-edge);margin:24px 0}h1.cannot-run-heading{color:var(--text);margin:0 0 8px}p.cannot-run-body{color:var(--text-secondary);margin:0}.settings{flex-direction:column;min-height:100dvh;display:flex}.settings .header{gap:12px}button.header-back{border:1px solid var(--header-text);border-radius:8px;min-width:44px;height:44px;padding:0 12px;font-size:17px}h1.header-title{margin:0}p.version-line{color:var(--text-secondary);margin:0}
