:root{--bg:#faf9f7;--surface:#fff;--surface-2:#f3f1ed;--border:#e3e0da;--border-strong:#c9c4bb;--text:#3d3a45;--text-h:#1c1926;--text-dim:#7d7a85;--accent:#996515;--accent-soft:#9965151a;--accent-contrast:#fff;--fear:#6b3fa0;--fear-soft:#6b3fa01a;--hope:#996515;--danger:#b3382e;--danger-soft:#b3382e17;--ok:#3e7d4f;--ok-soft:#3e7d4f1a;--warn:#9a6a10;--warn-soft:#9a6a101a;--frame-green:#5d7d3f;--frame-green-soft:#5d7d3f1a;--radius-s:6px;--radius-m:10px;--radius-l:14px;--shadow-card:0 1px 2px #1c19260d, 0 2px 8px #1c19260f;--shadow-overlay:0 8px 32px #1c192640;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--serif:"Palatino Linotype", Palatino, Georgia, serif;font:16px/150% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#111318;--surface:#1a1d24;--surface-2:#232732;--border:#2c303b;--border-strong:#424757;--text:#c3c6ce;--text-h:#f0f1f4;--text-dim:#82868f;--accent:#d9a441;--accent-soft:#d9a4411f;--accent-contrast:#1c1611;--fear:#9b6fd0;--fear-soft:#9b6fd024;--hope:#d9a441;--danger:#e05c5c;--danger-soft:#e05c5c1f;--ok:#6bbf59;--ok-soft:#6bbf591f;--warn:#e6a23c;--warn-soft:#e6a23c1f;--frame-green:#8fb573;--frame-green-soft:#8fb5731f;--shadow-card:none;--shadow-overlay:0 8px 32px #0000008c}}*{box-sizing:border-box}body{margin:0}#root{min-height:100svh}h1,h2,h3{color:var(--text-h);font-weight:600}h1{font-family:var(--serif);letter-spacing:.01em}h2{text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);margin:0 0 .75rem;font-size:.8rem;font-weight:700}::selection{background:var(--accent-soft)}button{font:inherit;color:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-s);cursor:pointer;background:0 0;padding:.45rem .9rem;transition:border-color .12s,background-color .12s,color .12s}button:hover{border-color:var(--accent);background:var(--accent-soft)}button:disabled{opacity:.5;cursor:default}button:disabled:hover{border-color:var(--border-strong);background:0 0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}button.primary:hover{filter:brightness(1.08);background:var(--accent)}button.danger-button{color:var(--danger);border-color:var(--danger)}button.danger-button:hover{background:var(--danger-soft);border-color:var(--danger)}input,select,textarea{font:inherit;color:inherit;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-s);padding:.5rem .6rem}input::placeholder,textarea::placeholder{color:var(--text-dim)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-track{background:0 0}.brand-mark{color:var(--accent);flex-shrink:0}.pane-hint{color:var(--text-dim);font-size:.9rem}.attribution{color:var(--text-dim);text-align:center;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem 1rem;font-size:.7rem;display:flex}.attribution p{margin:0}.attribution-link{color:var(--text-dim);border-bottom:1px solid var(--border-strong);padding-bottom:1px;text-decoration:none}.attribution-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.login-error{color:var(--danger);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-s);margin:0;padding:.5rem .7rem;font-size:.9rem}.login-notice{color:var(--ok);background:var(--ok-soft);border:1px solid var(--ok);border-radius:var(--radius-s);margin:0;padding:.5rem .7rem;font-size:.9rem}.tap-button{border-radius:var(--radius-m);background:var(--surface);min-width:44px;min-height:44px;font-size:1.1rem}.ghost-button{border:1px solid var(--border-strong);border-radius:var(--radius-s);color:var(--text-dim);background:0 0;padding:.3rem .6rem;font-size:.85rem}.ghost-button:hover{color:var(--text-h)}.cockpit-section h3{align-items:center;gap:.6rem;margin:0 0 .5rem;font-size:.95rem;font-weight:600;display:flex}.adversary-head{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.adversary-head strong,.pc-card>.adversary-head strong{font-family:var(--serif);font-size:1.05rem}.adversary-head .ghost-button:last-child{margin-left:auto}.condition-row,.feature-row{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.condition-chip{border:1px solid var(--border-strong);color:var(--text-dim);background:0 0;border-radius:999px;min-height:40px;padding:.35rem .7rem;font-size:.85rem}button.condition-chip{min-height:44px}.condition-chip:hover{color:var(--text-h)}.condition-chip.active{background:var(--danger);border-color:var(--danger);color:#fff}.library-tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);flex-wrap:wrap;gap:.25rem;width:fit-content;max-width:100%;margin-bottom:.6rem;padding:.25rem;display:flex}.library-tabs .tap-button,.library-tabs .ghost-button{border-radius:var(--radius-s);opacity:1;border:none;min-width:0;min-height:44px;padding:.4rem .8rem;font-size:.9rem}.library-tabs .tap-button{background:var(--accent-soft);color:var(--accent);font-weight:600}.library-tabs .ghost-button{color:var(--text-dim);background:0 0}.library-tabs .ghost-button:hover{color:var(--text-h)}.story-item{text-align:left;border-radius:var(--radius-s);color:inherit;background:0 0;border:1px solid #0000;min-height:44px;padding:.4rem .6rem}.story-item:hover{background:var(--surface-2);border-color:var(--border)}.story-item.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text-h)}.note-import{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.inline-form{background:var(--surface-2);border:1px dashed var(--border-strong);border-radius:var(--radius-m);flex-direction:column;gap:.6rem;padding:.75rem;display:flex}.inline-form input,.inline-form select,.inline-form textarea{background:var(--surface);padding:.5rem;font-size:.95rem}.inline-form label{color:var(--text-dim);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.5rem;display:grid}.feature-editor{border:1px solid var(--border);border-radius:var(--radius-m)}.condition-chip.frame-tag-chip{border-color:var(--frame-green);color:var(--frame-green);font-weight:600}.sync-notices{z-index:5;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:fixed;bottom:1rem;left:1rem;right:1rem}.sync-notices.is-compact{bottom:calc(4.75rem + env(safe-area-inset-bottom,0px))}.sync-notice{pointer-events:auto;background:var(--surface-2);width:min(36rem,100%);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-m);box-shadow:var(--shadow-overlay);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem .9rem;padding:.7rem .8rem .7rem 1rem;display:flex}.sync-notice.is-danger{border-color:var(--danger);background:var(--surface);box-shadow:inset 4px 0 0 var(--danger), var(--shadow-overlay)}.sync-notice.is-warn{border-color:var(--warn);background:var(--surface);box-shadow:inset 4px 0 0 var(--warn), var(--shadow-overlay)}.sync-notice-text{overflow-wrap:anywhere;flex-direction:column;flex:14rem;gap:.2rem;min-width:0;display:flex}.sync-notice-text strong{color:var(--text-h)}.sync-notice-actions{flex-wrap:wrap;gap:.4rem;display:flex}.sync-notice-actions button{min-height:44px}.sync-login-notice{border:1px solid var(--warn);border-radius:var(--radius-m);background:var(--warn-soft);width:min(28rem,100% - 2rem);color:var(--text-h);overflow-wrap:anywhere;margin:1rem auto 0;padding:.7rem 1rem}.sync-status.sync-alert .sync-dot{background:var(--danger)}.sync-status.sync-alert{color:var(--danger)}.sync-notice .danger-button{color:var(--danger);border-color:var(--danger)}
