:root{--bg:#f6f6f4;--surface:#fff;--text:#1c1c1a;--muted:#6b6b66;--border:#e2e2dd;--accent:#3b5bdb;--accent-text:#fff;--ok:#2b8a3e;--warn:#b35c00;--error:#c92a2a;--radius:10px;--canvas-bg:#fafaf8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#161615;--surface:#20201e;--text:#ececea;--muted:#9a9a94;--border:#33332f;--accent:#748ffc;--accent-text:#10121a;--ok:#69db7c;--warn:#ffa94d;--error:#ff8787;--canvas-bg:#f4f4f1}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}.page{gap:16px;margin:0 auto;padding:24px 16px 48px;display:grid}.page.narrow{max-width:760px}.app-layout{grid-template-columns:320px minmax(0,1fr);gap:12px;height:100dvh;padding:12px;display:grid;overflow:hidden}.app-layout .side{align-content:start;gap:12px;min-height:0;display:grid;overflow-y:auto}.board-area{grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;display:grid}.board-header{align-items:center;gap:8px;min-height:28px;display:flex}.side-toggle{display:none}@media (width<=960px){.app-layout{grid-template-columns:minmax(0,1fr);padding:8px}.side-toggle{display:inline-block}.app-layout .side{z-index:20;background:var(--bg);border-radius:var(--radius);width:min(340px,100vw - 16px);padding:4px;transition:transform .15s;position:fixed;top:48px;bottom:8px;left:8px;transform:translate(calc(-100% - 16px));box-shadow:0 8px 24px #00000040}.app-layout.side-open .side{transform:none}}@media (prefers-reduced-motion:reduce){.app-layout .side{transition:none}}.canvas-shell{grid-template-rows:auto minmax(0,1fr) auto;gap:8px;height:100%;min-height:0;display:grid}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.warn{color:var(--warn)}.board-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.board-list li{align-items:center;gap:8px;display:flex}.board-item{color:inherit;border:1px solid var(--border);border-radius:8px;flex:1;align-items:center;gap:12px;padding:6px;text-decoration:none;display:flex}.board-item:hover{border-color:var(--accent)}.board-item img,.thumb-empty{object-fit:contain;background:#f1f3f5;border-radius:4px;flex:none;width:64px;height:48px}.dialog{background:0 0;border:none;max-width:min(440px,100vw - 32px);padding:0}.dialog::backdrop{background:#00000059}a{color:var(--accent)}.wide-dialog{width:100%;max-width:min(560px,100vw - 32px)}.segmented{border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.segmented button{border:none;border-radius:0;flex:1;padding:6px}.segmented button.active{background:var(--accent);color:var(--accent-text)}.ai-panel textarea.prompt{width:100%;font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);resize:vertical;border-radius:8px;margin-bottom:8px;padding:8px 10px}.ai-panel select{flex:1;min-width:0}.chat{gap:8px;max-height:320px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.chat li{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;gap:6px;padding:8px 10px;display:grid}.chat li.user{background:var(--bg);justify-self:end;max-width:90%}.chat li.assistant{border:1px solid var(--border)}.chat li .small-btn{justify-self:start}.ref{color:var(--accent);font:inherit;background:0 0;border:none;padding:0 3px;text-decoration:underline}.probe{margin:0;padding:0;font-size:.85rem;list-style:none}.probe .ok{color:var(--ok)}.probe .no{color:var(--muted)}.proposal{border:1px dashed var(--accent);border-radius:8px;gap:8px;padding:8px;display:grid}.canvas-frame{min-height:0;display:grid;position:relative}.minimap{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:6px;position:absolute;bottom:12px;right:12px;overflow:hidden;box-shadow:0 2px 10px #00000026}.minimap img{display:block}.minimap-view{border:2px solid var(--accent);pointer-events:none;background:#3b5bdb14;position:absolute}.minimap-close{color:#495057;background:#ffffffd9;border-radius:4px;width:20px;height:20px;padding:0;line-height:1;position:absolute;top:2px;right:2px}.minimap-toggle{position:absolute;bottom:12px;right:12px}.canvas-host{border:1px solid var(--border);background:var(--canvas-bg);border-radius:8px;outline:none;position:relative;overflow:hidden}.canvas-host:focus-visible{box-shadow:0 0 0 2px var(--accent)}.toolbar{scrollbar-width:thin;flex-wrap:nowrap;align-items:center;gap:12px;height:42px;display:flex;overflow:auto hidden}.tool-group{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex:none;align-items:center;gap:2px;padding:2px;display:flex}.tool-btn{background:0 0;border:none;border-radius:6px;width:34px;height:34px;padding:0;font-size:1rem;line-height:1}.tool-btn:hover:not(:disabled){background:var(--bg)}.tool-btn.active{background:var(--accent);color:var(--accent-text)}.swatch{border:1px solid #0003;border-radius:50%;width:22px;height:22px;margin:0 2px;padding:0}.statusbar{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.statusbar .hint{margin-left:auto}@media (width<=720px){.statusbar .hint{display:none}}.ora-text-editor{font-family:inherit}.stats{grid-template-columns:auto 1fr;gap:4px 16px;margin:0;display:grid}.stats dt{color:var(--muted)}.stats dd{font-variant-numeric:tabular-nums;margin:0}select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px 6px}.small-btn{padding:2px 8px;font-size:.85rem}.small-btn.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.head h1{margin:0;font-size:1.6rem}.tag{border:1px solid var(--border);vertical-align:middle;color:var(--muted);border-radius:6px;padding:1px 6px;font-size:.75rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:12px;padding:16px;display:grid}.card h2{margin:0;font-size:1.05rem}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--error);margin:0}input{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;min-width:0;padding:8px 10px}button{font:inherit;border:1px solid var(--border);background:var(--surface);color:inherit;cursor:pointer;border-radius:8px;padding:8px 14px}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);justify-self:start}.field{gap:6px;display:grid}.check{align-items:center;gap:8px;display:flex}.links{gap:8px;display:grid}.link-row{grid-template-columns:90px 1fr auto;align-items:center;gap:8px;display:grid}@media (width<=520px){.link-row{grid-template-columns:1fr auto}.link-label{grid-column:1/-1}}.status{border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:.85rem}.status-registered,.status-synced{color:var(--ok);border-color:currentColor}.status-reconnecting,.status-connecting,.status-conflict{color:var(--warn);border-color:currentColor}.status-closed,.status-ended{color:var(--error);border-color:currentColor}.participants{gap:6px;margin:0;padding:0;list-style:none;display:grid}.participants li{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.log{gap:4px;max-height:320px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.log li{overflow-wrap:anywhere;align-items:baseline;gap:8px;display:flex}.log li.system span{color:var(--muted);font-style:italic}.send{grid-template-columns:1fr auto;gap:8px;display:grid}.footer{justify-content:center;gap:8px;margin:24px 0 8px;display:flex}.footer a{color:inherit}.intro ol{gap:6px;margin:0;padding-left:20px;display:grid}.info-page h3{margin:14px 0 4px;font-size:.95rem}.info-page ul{padding-left:20px}.pre{white-space:pre-line}.empty-hint{text-align:center;color:#6b6f76;pointer-events:none;gap:4px;max-width:min(420px,80%);font-size:.9rem;display:grid;position:absolute;top:40%;left:50%;transform:translate(-50%,-50%)}.empty-hint strong{color:#495057;font-size:1.05rem}
