:root{--bg:#eef3f5;--card:#fff;--teal:#2d6074;--ink:#0f4a5e;--mut:#5b7480;--bd:#c3d3da;--amb:#f5a31a;--run:#e6eef1;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#10222b;--card:#18323e;--ink:#cfe6ee;--mut:#93aeb9;--bd:#2f4d5b;--run:#1f4150}}:root[data-theme=dark]{--bg:#10222b;--card:#18323e;--ink:#cfe6ee;--mut:#93aeb9;--bd:#2f4d5b;--run:#1f4150}*{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:"Exo 2",Segoe UI,system-ui,Arial,sans-serif;background:var(--bg);color:var(--ink);display:flex;flex-direction:column}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--card);z-index:10}.bar{background:var(--card);color:var(--ink);border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:14px;padding:8px 22px;flex-wrap:wrap}.logo{height:46px;width:auto;background:#fff;border-radius:8px;padding:3px 8px;display:block}.bar h1{font-size:16px;font-weight:600;margin:0;flex:1}.role{display:flex;align-items:center;gap:8px;font-size:13px}select{font:inherit;font-size:13px;padding:6px 8px;border-radius:6px;border:1px solid var(--bd);background:var(--bg);color:var(--ink)}.shell{flex:1;display:flex;min-height:0}nav{width:176px;background:var(--card);border-right:1px solid var(--bd);padding:12px 8px;display:flex;flex-direction:column;gap:4px;flex:none}nav button,.vb button{font:inherit;font-size:14px;text-align:left;border:0;background:none;color:var(--ink);padding:10px 12px;border-radius:8px;cursor:pointer;border-left:3px solid transparent}nav button:hover,.vb button:hover{background:var(--run)}nav button.on{background:var(--run);border-left-color:var(--amb);font-weight:700}button:focus-visible,select:focus-visible{outline:2px solid var(--amb);outline-offset:2px}main{flex:1;display:flex;flex-direction:column;min-width:0}.vb{display:flex;gap:6px;padding:8px 14px;background:var(--card);border-bottom:1px solid var(--bd);overflow-x:auto;align-items:center}.vb[hidden]{display:none}.vb span{font-size:12px;color:var(--mut);margin-right:6px;white-space:nowrap}.vb button{border:1px solid var(--bd);border-radius:999px;padding:6px 14px;white-space:nowrap;font-size:13px}.vb button.on{background:var(--teal);color:#fff;border-color:var(--teal)}#stage{flex:1;position:relative;min-height:0}iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;background:var(--bg)}#guide{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:24px 22px 40px}.g{max-width:900px;margin:0 auto}.g h2{font-size:26px;margin:0 0 6px}.g h3{font-size:17px;margin:28px 0 10px}.g p{color:var(--mut);line-height:1.55;margin:0 0 10px;max-width:68ch}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--bd);font-size:14px}th,td{padding:10px 12px;border-bottom:1px solid var(--bd);text-align:center}th:first-child,td:first-child{text-align:left}th{background:var(--run);font-weight:600}.y{color:#2e8b57;font-weight:700}.n{color:var(--mut)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.c{background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--teal);border-radius:8px;padding:14px}.c:nth-child(2){border-top-color:var(--amb)}.c:nth-child(3){border-top-color:var(--mut)}.c b{display:block;margin-bottom:4px}.c p{font-size:14px}.c button{font:inherit;font-size:13px;margin-top:6px;padding:7px 12px;border-radius:6px;border:1px solid var(--teal);background:none;color:var(--ink);cursor:pointer}.c button:hover{background:var(--teal);color:#fff}ol{padding-left:20px;line-height:1.6;margin:0}ol li{margin-bottom:6px;max-width:68ch}.note{font-size:12.5px;color:var(--mut);margin-top:22px}.vb .sp{flex:1}.vb em{font-style:normal;font-size:12px;color:var(--mut);white-space:nowrap;margin:0 4px}.vb .tg[aria-pressed=true]{background:var(--amb);border-color:var(--amb);color:#0f4a5e;font-weight:600}.who{font-size:13px;color:var(--mut);display:flex;align-items:center;gap:10px}.who button{font:inherit;font-size:13px;padding:6px 12px;border-radius:6px;border:1px solid var(--bd);background:var(--bg);color:var(--ink);cursor:pointer}.signin{flex:1;display:flex;align-items:center;justify-content:center;padding:24px 16px}.signin form{width:100%;max-width:460px;background:var(--card);border:1px solid var(--bd);border-top:3px solid var(--teal);border-radius:10px;padding:26px;display:flex;flex-direction:column;gap:14px}.signin h2{margin:0;font-size:20px}.signin p{margin:0;color:var(--mut);font-size:14px}.signin .roles{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.signin .roles button{font:inherit;font-size:13px;font-weight:600;min-height:48px;padding:6px 8px;border:1px solid var(--bd);border-radius:8px;background:var(--bg);color:var(--ink);cursor:pointer;text-align:left}.signin .roles button small{display:block;font-weight:400;color:var(--mut);font-size:12px}.signin .roles button.on{background:var(--teal);border-color:var(--teal);color:#fff}.signin .roles button.on small{color:#d7e7ed}.signin input{font:inherit;font-size:15px;padding:10px 12px;border-radius:6px;border:1px solid var(--bd);background:var(--bg);color:var(--ink)}.signin .go{font:inherit;font-size:15px;font-weight:700;padding:11px;border:0;border-radius:6px;background:var(--teal);color:#fff;cursor:pointer}.signin .go:disabled{opacity:.6;cursor:wait}.signin .err{color:#c0392b;font-size:13px;min-height:1em}.signin .roles button:first-child{grid-column:1/-1}[hidden]{display:none!important}
