@import "https://fonts.googleapis.com/css2?family=Courier+Prime:ital,wght@0,400;0,700;1,400&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-canvas:#09090b;--bg-chrome:#0f0f12;--bg-surface:#18181b;--bg-raised:#202023;--bg-hover:#27272a;--bg-selected:#8ab4f824;--text-primary:#f4f4f5;--text-secondary:#a1a1aa;--text-tertiary:#8e8e98;--text-disabled:#71717a;--border-subtle:#ffffff14;--border-default:#ffffff1f;--border-strong:#ffffff2e;--border-control:#71717a;--accent:#8ab4f8;--accent-hover:#a8c7fa;--accent-pressed:#75a5f5;--accent-tint:#8ab4f824;--accent-border:#8ab4f861;--on-accent:#0b1220;--status-info:#8ab4f8;--status-success:#4cc38a;--status-warning:#f0b44d;--status-danger:#f06a6a;--status-neutral:#a1a1aa;--status-danger-text:#f28080;--font-ui:"Inter", "Segoe UI", sans-serif;--font-code:"Cascadia Mono", Consolas, monospace;--font-screenplay:"Courier Prime", "Courier New", monospace;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--space-7:20px;--space-8:24px;--space-9:32px;--space-10:40px;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-raised:0 1px 2px #00000059, 0 0 0 1px #ffffff0f;--shadow-popover:0 8px 24px #00000073, 0 0 0 1px #ffffff1a, inset 0 1px 0 #ffffff0a;--shadow-modal:0 24px 64px #0000008c, 0 0 0 1px #ffffff1f, inset 0 1px 0 #ffffff0d;--ring-focus-inset:inset 0 0 0 2px var(--accent);--ring-speaking:0 0 0 2px var(--status-success);--dur-instant:80ms;--dur-fast:.12s;--dur-standard:.16s;--dur-enter:.2s;--dur-exit:.14s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--z-sticky:20;--z-toolbar:40;--z-popover:80;--z-dock:120;--z-modal:200;--z-toast:240;--size-control-xs:20px;--size-control-sm:28px;--size-control-md:32px;--size-hit-min:24px;--size-icon-sm:14px;--stroke-icon-sm:1.5px;--size-icon-md:16px;--stroke-icon-md:1.75px;--size-badge-min:16px;--size-titlebar:38px;--size-prop-label:96px;--size-row:35px;--size-lane:34px;--size-board-col:280px;--size-talk-rail:240px;--size-talk-header:48px;--indent-tree:var(--space-6);--indent-timeline:var(--space-5);--indent-board:var(--space-4);--indent-board-max:80px;--t-feedback-delay:.4s;--t-progress-determinate:2s;--t-background:10s;--t-net-deadline:10s;--t-unsynced:2s;--t-toast:5s;--t-toast-action:8s;--t-undo:var(--t-toast-action);--t-autosave-debounce:.8s;--t-autosave-max-wait:5s;--t-tooltip-show:.5s;--t-tooltip-warm:1s;--drag-threshold:4px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){:root{--dur-fast:var(--dur-instant);--dur-standard:var(--dur-instant);--dur-enter:var(--dur-instant);--dur-exit:var(--dur-instant)}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations"),url(./inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations"),url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(./inter-latin-wght-italic-DpCbqKDY.woff2)format("woff2-variations"),url(./inter-latin-wght-italic-DpCbqKDY.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(./inter-latin-ext-wght-italic-0pjOp8NU.woff2)format("woff2-variations"),url(./inter-latin-ext-wght-italic-0pjOp8NU.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--bg-base:var(--bg-canvas);--accent-color:var(--accent);--font-main:var(--font-ui);--text-faint:var(--text-tertiary);--tk-panel:var(--bg-surface);--tk-line:var(--border-subtle);--tk-dim:var(--text-secondary);--tk-fg:var(--text-primary);--tk-accent:var(--accent);--tk-hover:var(--bg-hover);--tk-danger:var(--status-danger);--tk-warn:var(--status-warning);--tk-ok:var(--status-success)}.auth-gate{background-color:var(--bg-base);height:100vh;font-family:var(--font-main);justify-content:center;align-items:center;display:flex}.auth-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);padding:calc(var(--space-10) + var(--space-4)) var(--space-10);text-align:center;border-radius:16px;width:100%;max-width:400px;box-shadow:0 8px 32px #0006}.auth-logo{margin-bottom:var(--space-5);font-size:48px}.auth-title{color:var(--text-primary);margin:0 0 var(--space-2) 0;font-size:24px;font-weight:600;line-height:32px}.auth-subtitle{color:var(--text-secondary);margin:0 0 var(--space-8) 0;font-size:14px;font-weight:500}.auth-desc{color:var(--text-secondary);margin:0 0 var(--space-8) 0;font-size:14px;line-height:1.5}.auth-google-btn{justify-content:center;align-items:center;gap:var(--space-5);color:#3c4043;padding:var(--space-5) var(--space-8);cursor:pointer;background-color:#fff;border:none;border-radius:8px;width:100%;font-size:14px;font-weight:600;transition:box-shadow .2s,transform .1s;display:inline-flex;box-shadow:0 2px 6px #0000004d}.auth-google-btn:hover{box-shadow:0 0 0 3px #4285f44d,0 2px 6px #0000004d}@media (prefers-reduced-motion:no-preference){.auth-google-btn:active{transform:scale(.98)}}.auth-google-icon{width:20px;height:20px}.auth-error{color:#f55;margin-top:var(--space-6);font-size:13px}.auth-update{margin-top:var(--space-7);padding:var(--space-5) var(--space-6);text-align:left;color:var(--text-secondary);background:#8ab4f814;border:1px solid #8ab4f859;border-radius:10px;font-size:13px;line-height:1.5}.auth-update p{margin:0}.auth-update strong{color:var(--text-primary)}.auth-update-btn{margin-top:var(--space-4);padding:var(--space-3) var(--space-5);color:var(--accent-color);cursor:pointer;background:0 0;border:1px solid #8ab4f880;border-radius:6px;font-size:13px;font-weight:600}.auth-update-btn:hover{background:#8ab4f81f}.auth-update-note{color:var(--text-primary);margin-top:var(--space-4)!important}.auth-loading{background-color:var(--bg-base);height:100vh;color:var(--text-secondary);font-family:var(--font-main);flex-direction:column;justify-content:center;align-items:center;display:flex}.auth-spinner{border:3px solid var(--border-subtle);border-top-color:var(--accent-color);width:32px;height:32px;margin-bottom:var(--space-6);border-radius:50%;animation:.8s linear infinite auth-spin}@media (prefers-reduced-motion:reduce){.auth-spinner{animation:none}}@keyframes auth-spin{to{transform:rotate(360deg)}}.portal-container{background-color:var(--bg-base);height:100vh;color:var(--text-primary);font-family:var(--font-main);flex-direction:column;display:flex;overflow:hidden auto}.portal-header{z-index:5;justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-5) clamp(var(--space-6), 2.5vw, var(--space-10));background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);display:flex;position:sticky;top:0}.portal-brand{align-items:center;gap:var(--space-6);min-width:0;display:flex}.portal-logo{object-fit:contain;height:32px}.portal-brand h1{color:var(--text-primary);white-space:nowrap;margin:0;font-size:16px;font-weight:600;line-height:22px}.portal-user{align-items:center;gap:var(--space-4);min-width:0;display:flex}.portal-avatar{border-radius:50%;width:32px;height:32px}.user-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-main{width:100%;max-width:1880px;padding:clamp(var(--space-8), 3vw, calc(var(--space-10) + var(--space-4))) clamp(var(--space-6), 3vw, calc(var(--space-10) + var(--space-4))) calc(var(--space-10) + var(--space-10) + var(--space-6));flex:1;margin:0 auto}.welcome-section{text-align:center;margin-bottom:clamp(var(--space-8), 3vw, calc(var(--space-10) + var(--space-4)))}.welcome-section h2{margin:0 0 var(--space-4) 0;color:var(--text-primary);font-size:24px;line-height:32px}.welcome-section p{color:var(--text-secondary);margin:0;font-size:14px;line-height:20px}.tools-section+.tools-section{margin-top:clamp(var(--space-8), 3vw, calc(var(--space-10) + var(--space-4)))}.tools-section h3{margin:0 0 clamp(var(--space-6), 1.5vw, var(--space-8)) 0;border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-5);font-size:20px;line-height:28px}.tools-grid{gap:clamp(var(--space-6), 1.5vw, var(--space-8));grid-template-columns:1fr;display:grid}@media (width>=760px){.tools-grid.is-apps{grid-template-columns:repeat(2,1fr)}.tools-grid.is-utilities{grid-template-columns:repeat(3,1fr)}}@media (width>=1500px){.tools-grid.is-apps{grid-template-columns:repeat(4,1fr)}}.tool-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);padding:clamp(var(--space-6), 1.5vw, var(--space-9));cursor:pointer;border-radius:12px;flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.tool-card:hover:not(.disabled){border-color:var(--accent-color);box-shadow:0 8px 24px #0003}@media (prefers-reduced-motion:no-preference){.tool-card:hover:not(.disabled){transform:translateY(-4px)}}.tool-icon{margin-bottom:clamp(var(--space-5), 1vw, var(--space-6));font-size:clamp(32px,2.6vw,52px);line-height:1}.tool-info{margin-bottom:clamp(var(--space-6), 1.5vw, var(--space-8));flex:1}.tool-info h4{margin:0 0 var(--space-4) 0;font-size:16px;line-height:22px}.tool-info p{color:var(--text-secondary);margin:0;font-size:13px;line-height:18px}.tool-card.is-compact{padding:clamp(var(--space-5), 1.1vw, var(--space-7))}.tool-card.is-compact .tool-icon{margin-bottom:var(--space-4);font-size:clamp(26px,1.9vw,36px)}.tool-card.is-compact .tool-info h4{font-size:14px;line-height:20px}.tool-card.is-compact .tool-info{margin-bottom:var(--space-5)}.launch-group{gap:var(--space-3);align-items:stretch;width:100%;display:flex}.launch-group .launch-btn{flex:auto;width:auto;min-width:0}.launch-group .launch-btn.is-window{padding-left:var(--space-5);padding-right:var(--space-5);color:var(--text-secondary);border:1px solid var(--border-strong);background-color:#0000;flex:none}.tool-card:hover:not(.disabled) .launch-btn.is-window,.launch-group .launch-btn.is-window:hover{background-color:var(--bg-hover);color:var(--text-primary)}.launch-btn{background-color:var(--accent-color);color:var(--on-accent);padding:clamp(var(--space-4), .7vw, var(--space-5)) var(--space-6);cursor:pointer;border:none;border-radius:6px;width:100%;font-size:13px;font-weight:600;line-height:18px;transition:background-color .2s}.tool-card:hover:not(.disabled) .launch-btn{background-color:var(--accent-hover)}.tool-card.disabled{opacity:.5;cursor:not-allowed}.tool-card.disabled .launch-btn{background-color:var(--border-subtle);color:var(--text-secondary);cursor:not-allowed}.plugins-panel{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:min(720px,94vw);max-height:86vh;padding:var(--space-8);gap:var(--space-6);flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 8px 40px #0009}.plugins-header{justify-content:space-between;align-items:flex-start;display:flex}.plugins-header h2{margin:0;font-size:20px;font-weight:600}.plugins-sub{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:13px}.plugins-empty{border:1px dashed var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-7);color:var(--text-secondary);font-size:13px;line-height:1.6}.plugins-empty p{margin:0 0 var(--space-4)}.plugins-empty-inline{color:var(--text-secondary);padding:var(--space-3) 0;font-size:12px}.plugin-card{background-color:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-6)}.plugin-card+.plugin-card{margin-top:0}.plugin-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-6);display:flex}.plugin-title{color:var(--text-primary);font-size:14px;font-weight:600}.plugin-desc{color:var(--text-secondary);margin-top:var(--space-2);font-size:12px;line-height:1.5}.plugin-status{align-items:center;gap:var(--space-4);margin-top:var(--space-5);color:var(--text-secondary);flex-wrap:wrap;font-size:12px;display:flex}.plugin-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.plugin-dot.on{background-color:#51cf66}.plugin-dot.off{background-color:#6b6b70}.plugin-badge{color:var(--text-secondary);border:1px solid var(--border-strong);padding:0 var(--space-4);border-radius:999px;font-size:11px;font-weight:600;line-height:16px}.plugin-warn{color:#ffd43b}.plugin-note{margin:var(--space-5) 0 0;color:var(--text-secondary);border-left:2px solid var(--accent-color);padding-left:var(--space-4);font-size:12px;line-height:1.5}.plugin-projects{gap:var(--space-3);margin-top:var(--space-5);flex-direction:column;display:flex}.plugin-project{align-items:center;gap:var(--space-4);color:var(--text-primary);cursor:pointer;padding:var(--space-3) var(--space-4);border-radius:6px;font-size:13px;display:flex}.plugin-project:hover{background-color:var(--bg-hover)}.plugin-project input{accent-color:var(--accent-color);cursor:pointer}.plugin-activity{margin-top:var(--space-5);max-height:180px;overflow-y:auto}.plugin-activity-row{gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle);align-items:center;font-size:12px;display:flex}.plugin-activity-time{color:var(--text-secondary);font-variant-numeric:tabular-nums}.plugin-activity-kind{color:var(--text-primary)}.plugin-steps{margin:var(--space-5) 0 0;padding-left:var(--space-7);color:var(--text-secondary);font-size:12px;line-height:1.8}.plugin-steps code{background:var(--bg-hover);padding:0 var(--space-2);color:var(--text-primary);border-radius:4px;font-size:11px}summary.plugin-title{cursor:pointer}.plugin-error{color:#ff6b6b;padding:var(--space-4);border:1px solid #ff6b6b4d;border-radius:6px;font-size:12px}.dashboard-container{background-color:var(--bg-base);min-height:100vh;color:var(--text-primary);font-family:var(--font-main);flex-direction:column;display:flex}.dashboard-header{padding:var(--space-6) var(--space-9);background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.dashboard-brand{align-items:center;gap:var(--space-5);display:flex}.brand-icon{font-size:24px}.dashboard-brand h1{margin:0;font-size:20px;font-weight:600;line-height:28px}.dashboard-user{align-items:center;gap:var(--space-6);display:flex}.user-email{color:var(--text-secondary);font-size:14px}.dashboard-main{padding:var(--space-10) var(--space-9);flex:1;width:100%;max-width:1200px;margin:0 auto}.dashboard-toolbar{margin-bottom:var(--space-9);justify-content:space-between;align-items:center;display:flex}.dashboard-toolbar h2{margin:0;font-size:24px;font-weight:500}.projects-grid{gap:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.project-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);padding:var(--space-8);cursor:pointer;gap:var(--space-6);border-radius:12px;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.project-card:hover{border-color:var(--accent-color);box-shadow:0 8px 24px #0003}@media (prefers-reduced-motion:no-preference){.project-card:hover{transform:translateY(-4px)}}.project-card-header{justify-content:space-between;align-items:flex-start;display:flex}.project-card h3{color:var(--text-primary);margin:0;font-size:16px;font-weight:600;line-height:22px}.delete-project-btn{color:var(--text-secondary);cursor:pointer;padding:0 var(--space-2);opacity:0;background:0 0;border:none;border-radius:4px;font-size:24px;line-height:1;transition:opacity .2s,color .2s,background-color .2s}.project-card:hover .delete-project-btn{opacity:1}.delete-project-btn:hover{color:#f55;background-color:#ff55551a}.project-card-meta{gap:var(--space-2);color:var(--text-secondary);flex-direction:column;font-size:13px;display:flex}.create-project-card{background-color:var(--bg-surface);border:1px solid var(--accent-color);padding:var(--space-8);margin-bottom:var(--space-8);border-radius:12px;box-shadow:0 8px 24px #8ab4f81a}.project-input{background-color:var(--bg-base);border:1px solid var(--border-control);width:100%;color:var(--text-primary);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6);border-radius:8px;font-family:inherit;font-size:16px}.project-input:focus{border-color:var(--accent-color)}.create-actions{justify-content:flex-end;gap:var(--space-5);display:flex}.empty-state{text-align:center;padding:calc(var(--space-10) + var(--space-8)) 0;color:var(--text-secondary);background-color:var(--bg-surface);border:1px dashed var(--border-subtle);border-radius:12px}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}button,input,select,textarea{font-family:inherit}:where(button,input,select,textarea){font-size:13px}:where(h1,h2,h3,h4,h5,h6,strong,b,th):where(:not(.ProseMirror *,.page-content-area *,.script-paper *)){font-weight:600}select option,select optgroup{background-color:var(--bg-surface);color:var(--text-primary)}select optgroup{color:var(--text-secondary);font-style:normal;font-weight:600}#root{flex-direction:column;width:100vw;height:100vh;display:flex}.ProseMirror{outline:none;min-height:300px;font-size:16px;line-height:1.6}.ProseMirror p.is-editor-empty:first-child:before{color:var(--text-secondary);content:attr(data-placeholder);float:left;pointer-events:none;height:0}.ProseMirror p{display:flow-root}.ProseMirror>*+*{margin-top:.75em}.ProseMirror ul,.ProseMirror ol{padding:0 1rem}.editor-wrapper{border:1px solid var(--border-subtle);border-radius:var(--radius-md);height:100%;margin-top:var(--space-5);flex-direction:column;display:flex;overflow:hidden}.editor-toolbar{gap:var(--space-3);padding:var(--space-4) var(--space-5);background-color:var(--bg-hover);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;display:flex}.toolbar-btn{color:var(--text-secondary);padding:var(--space-3) var(--space-4);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.toolbar-btn:hover{color:var(--text-primary);background-color:#ffffff0d}.toolbar-btn.is-active{color:var(--accent-color);background-color:#8ab4f826}.toolbar-divider{background-color:var(--border-subtle);width:1px;height:24px;margin:0 var(--space-2)}.toolbar-select{color:var(--text-primary);padding:var(--space-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px}.toolbar-select:hover{border-color:var(--border-subtle)}.color-picker-wrapper{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.color-picker-wrapper input[type=color]{cursor:pointer;background:0 0;border:none;width:20px;height:20px;padding:0}.mention-pill-container{vertical-align:middle;line-height:0;display:inline-block!important}.mention-pill{align-items:center;gap:var(--space-2);background:var(--bg-hover);color:var(--text-primary);padding:var(--space-1) var(--space-4);margin:0 var(--space-1);border:1px solid var(--border-strong);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;font-size:.9em;font-style:normal;font-weight:500;line-height:1;text-decoration:none;transition:all .2s;display:inline-flex}.mention-pill:hover{filter:brightness(1.2)}.pill-icon{font-size:1.1em}ul[data-type=taskList]{padding-left:0;list-style:none}ul[data-type=taskList] li{align-items:flex-start;margin-top:.5rem;display:flex}ul[data-type=taskList] li>label{-webkit-user-select:none;user-select:none;align-items:center;margin-top:2px;margin-right:8px;padding-top:4px;display:flex}ul[data-type=taskList] li>label input[type=checkbox]{cursor:pointer;width:15px;height:15px;margin:0}ul[data-type=taskList] li>div{flex:1}ul[data-type=taskList] li>div>p{margin:0;line-height:1.5}.zoom-wrapper{transform-origin:top;justify-content:center;width:100%;transition:transform .2s;display:flex}@media (prefers-reduced-motion:reduce){.zoom-wrapper{transition:none}}.editor-canvas-wrapper{padding:var(--space-10) var(--space-7);background-color:#1a1a1a;flex:1;justify-content:center;display:flex;position:relative;overflow-y:auto;align-items:flex-start!important}.google-docs-paper{background-color:var(--bg-base);border:1px solid var(--border-subtle);background-image:repeating-linear-gradient(transparent, transparent 1054px, var(--border-subtle) 1054px, var(--border-subtle) 1056px);border-radius:2px;width:816px;margin:0 auto;padding:1in;box-shadow:0 4px 12px #00000080;height:max-content!important}.google-docs-paper .ProseMirror{outline:none;min-height:864px}.google-docs-paper:has(.ProseMirror:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.page-tracker-pill{bottom:var(--space-7);right:var(--space-9);background-color:var(--bg-hover);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:var(--space-3) var(--space-6);z-index:1000;pointer-events:none;font-variant-numeric:tabular-nums;border-radius:20px;font-size:12px;font-weight:600;position:absolute;box-shadow:0 4px 12px #00000080}.google-docs-paper p,.google-docs-paper h1,.google-docs-paper h2,.google-docs-paper h3{padding-top:.4em;padding-bottom:.4em;margin-top:0!important;margin-bottom:0!important}[data-indent]{position:relative}[data-indent]:before{content:"";background-color:var(--border-subtle);pointer-events:none;z-index:1;width:1px;position:absolute;top:0;bottom:0}[data-indent="1"]{margin-left:2rem!important;padding-left:.5rem!important}[data-indent="1"]:before{left:-2rem}[data-indent="2"]{margin-left:4rem!important;padding-left:.5rem!important}[data-indent="2"]:before{box-shadow:2rem 0 0 var(--border-subtle);left:-4rem}[data-indent="3"]{margin-left:6rem!important;padding-left:.5rem!important}[data-indent="3"]:before{box-shadow:2rem 0 0 var(--border-subtle), 4rem 0 0 var(--border-subtle);left:-6rem}[data-indent="4"]{margin-left:8rem!important;padding-left:.5rem!important}[data-indent="4"]:before{box-shadow:2rem 0 0 var(--border-subtle), 4rem 0 0 var(--border-subtle), 6rem 0 0 var(--border-subtle);left:-8rem}[data-indent="5"]{margin-left:10rem!important;padding-left:.5rem!important}[data-indent="5"]:before{box-shadow:2rem 0 0 var(--border-subtle), 4rem 0 0 var(--border-subtle), 6rem 0 0 var(--border-subtle), 8rem 0 0 var(--border-subtle);left:-10rem}[data-indent="6"]{margin-left:12rem!important;padding-left:.5rem!important}[data-indent="6"]:before{box-shadow:2rem 0 0 var(--border-subtle), 4rem 0 0 var(--border-subtle), 6rem 0 0 var(--border-subtle), 8rem 0 0 var(--border-subtle), 10rem 0 0 var(--border-subtle);left:-12rem}.editor-canvas-wrapper.is-page-mode{background-color:var(--bg-base);padding:0}.web-page-paper{background-color:var(--bg-base);outline:none;width:100%;max-width:800px;min-height:100%;margin:0 auto;padding:60px 40px}.page-view-wrapper{background-color:var(--bg-base);min-height:calc(100% + 40px);margin:calc(-1 * var(--space-7)) calc(-1 * var(--space-10));flex-direction:column;flex:1;display:flex;overflow-y:auto}.page-header-bar{padding:var(--space-4) var(--space-7);border-bottom:1px solid var(--border-subtle);z-index:10;background-color:#010101;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.page-title-compact{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:30%;margin:0;font-size:16px;font-weight:600;overflow:hidden}.page-meta-center{align-items:center;gap:var(--space-7);color:var(--text-secondary);font-size:12px;display:flex}.page-author-compact{align-items:center;gap:var(--space-3);display:flex}.author-avatar-compact{background-color:var(--accent-color);width:20px;height:20px;color:var(--on-accent);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.page-content-area{max-width:800px;padding:var(--space-10) var(--space-7);width:100%;margin:0 auto}.collaboration-caret__caret{pointer-events:none;word-break:normal;border-left:1px solid;border-right:1px solid;margin-left:-1px;margin-right:-1px;position:relative}.collaboration-caret__label{color:#0d0d0d;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:3px 3px 3px 0;padding:.1rem .3rem;font-size:11px;font-weight:600;line-height:normal;position:absolute;top:-1.4em;left:-1px}.script-paper{background-color:var(--bg-base);border:1px solid var(--border-subtle);width:816px;min-height:1056px;color:var(--text-primary);margin:0 auto;padding:1in 1in 1in 1.5in;box-shadow:0 4px 12px #00000080;font-family:Courier Prime,Courier New,monospace!important;font-size:12pt!important;line-height:1.1!important}.script-paper .ProseMirror{outline:none;min-height:864px}.script-paper:has(.ProseMirror:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.script-paper p{margin:0;padding:0}.script-scene{text-transform:uppercase;font-weight:700;margin-top:1.5em!important;margin-bottom:.5em!important}.script-action{margin-top:1em!important}.script-character{text-transform:uppercase;max-width:40%;margin-top:1.5em!important;margin-left:35%!important}.script-parenthetical{max-width:30%;margin-top:0!important;margin-left:28%!important}.script-dialogue{max-width:60%;margin-top:0!important;margin-left:20%!important}.script-transition{text-transform:uppercase;text-align:right!important;margin-top:1.5em!important;padding-right:5%!important}.graph-wrapper{background-color:var(--bg-base);width:100%;height:100%;position:relative}.custom-db-node{background-color:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);min-width:150px;color:var(--text-primary);font-family:var(--font-main);transition:border-color .1s;box-shadow:0 4px 12px #0006}.custom-db-node.selected,.custom-db-node:hover{border-color:var(--accent-color)}.node-header{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:11px;line-height:16px}.node-title{color:var(--text-primary);font-size:14px;font-weight:600}.react-flow__handle{background-color:var(--text-secondary);border:2px solid var(--bg-base);width:8px;height:8px}.react-flow__handle:hover{background-color:var(--accent-color)}.react-flow .react-flow__node.selectable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.react-flow__controls button{background-color:var(--bg-hover)!important;border-bottom:1px solid var(--border-subtle)!important;fill:var(--text-primary)!important}.react-flow__controls button:hover{background-color:var(--bg-surface)!important}.custom-db-node{cursor:pointer}.graph-top-bar{top:var(--space-4);left:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-2) var(--space-4);gap:var(--space-4);z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#18181be6;display:flex;position:absolute;box-shadow:0 4px 12px #00000080}.graph-menu-dropdown{position:relative}.graph-menu-btn{color:var(--text-primary);padding:var(--space-2) var(--space-5);cursor:pointer;background:0 0;border:none;border-radius:4px;font-size:13px}.graph-menu-btn:hover{background-color:var(--bg-hover)}.graph-context-menu{background-color:var(--bg-surface);border:1px solid var(--border-subtle);z-index:50;min-width:160px;padding:var(--space-2);border-radius:6px;flex-direction:column;display:flex;position:absolute;box-shadow:0 4px 16px #000c}.context-menu-item{color:var(--text-primary);padding:var(--space-4) var(--space-5);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:4px;font-size:13px}.context-menu-item:hover{background-color:var(--accent-color);color:var(--on-accent)}.context-menu-header{padding:var(--space-4) var(--space-5) var(--space-2);color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--space-2);font-size:12px;font-weight:500;line-height:16px}.shape-node{padding:var(--space-5);border:2px solid;flex-direction:column;width:100%;height:100%;display:flex;box-shadow:0 4px 12px #0006}.shape-node.circle{text-align:center;border-radius:50%;justify-content:center;align-items:center}.shape-node.box{border-radius:var(--radius-md)}.shape-node input{color:inherit;width:100%;text-align:inherit;margin-bottom:var(--space-4);background:0 0;border:none;font-size:16px;font-weight:600}.shape-node input::placeholder{color:#fff6}.shape-node textarea{color:inherit;resize:none;width:100%;text-align:inherit;font-size:12px;font-family:var(--font-main);background:0 0;border:none;flex:1}.shape-node textarea::placeholder{color:#fff6}.react-flow__handle{background-color:var(--text-secondary);border:2px solid var(--bg-surface);width:10px;height:10px;transition:background-color .2s,transform .1s ease-in-out}.react-flow__handle:hover{background-color:var(--accent-color);z-index:20}@media (prefers-reduced-motion:no-preference){.react-flow__handle:hover{transform:scale(1.5)}}.shape-node.line{border:none;border-radius:2px;padding:0;box-shadow:0 2px 4px #00000080}.shape-node.line input,.shape-node.line textarea{display:none}.handle-tl{top:0!important;left:0!important;transform:translate(-50%,-50%)!important}.handle-tr{top:0!important;left:100%!important;transform:translate(-50%,-50%)!important}.handle-bl{top:100%!important;left:0!important;transform:translate(-50%,-50%)!important}.handle-br{top:100%!important;left:100%!important;transform:translate(-50%,-50%)!important}.rotate-handle{top:calc(-1 * var(--space-9));background-color:var(--bg-hover);border:1px solid var(--border-subtle);width:24px;height:24px;color:var(--text-primary);cursor:grab;z-index:100;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:background-color .1s,color .1s;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000080}.rotate-handle:hover{background-color:var(--bg-surface)}.rotate-handle:active{cursor:grabbing;background-color:var(--accent-color);color:var(--on-accent)}.rotate-handle:after{content:"";bottom:calc(-1 * var(--space-3));background-color:var(--border-subtle);width:1px;height:6px;position:absolute;left:50%;transform:translate(-50%)}.node-mode-toolbar{gap:var(--space-2);background-color:var(--bg-surface);border:1px solid var(--border-subtle);padding:var(--space-2);border-radius:6px;display:flex;box-shadow:0 4px 12px #00000080}.mode-btn{color:var(--text-secondary);cursor:pointer;padding:var(--space-2) var(--space-4);background:0 0;border:none;border-radius:4px;font-size:12px;font-weight:600;transition:all .1s}.mode-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.mode-btn.active{background-color:var(--accent-color);color:var(--on-accent)}.graph-global-toolbar{top:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-3);gap:var(--space-2);z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#18181be6;display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0009}.graph-global-btn{color:var(--text-secondary);cursor:pointer;padding:var(--space-3) var(--space-5);align-items:center;gap:var(--space-3);background:0 0;border:none;border-radius:6px;font-size:12px;font-weight:600;transition:all .1s;display:flex}.graph-global-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.graph-global-btn.active{background-color:var(--accent-color);color:var(--on-accent)}.graph-global-btn.is-danger:hover{color:var(--status-danger-text)}.hotkey-hint{padding:var(--space-1) var(--space-2);background:#0000004d;border-radius:4px;font-size:11px}.rotate-handle{touch-action:none;-webkit-user-select:none;user-select:none}.hide-handles .react-flow__handle{pointer-events:none!important;opacity:0!important}.react-flow__resize-control{z-index:100!important}.handle-tl-circle{top:14.65%!important;left:14.65%!important;transform:translate(-50%,-50%)!important}.handle-tr-circle{top:14.65%!important;left:85.35%!important;transform:translate(-50%,-50%)!important}.handle-bl-circle{top:85.35%!important;left:14.65%!important;transform:translate(-50%,-50%)!important}.handle-br-circle{top:85.35%!important;left:85.35%!important;transform:translate(-50%,-50%)!important}.board-wrapper{background-color:#111;width:100%;height:100%;position:relative}.image-board-node{border:2px solid #0000;border-radius:4px;justify-content:center;align-items:center;width:100%;height:100%;transition:border-color .1s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #000c}.image-board-node.selected{border-color:var(--accent-color)}.image-board-node img{object-fit:cover;pointer-events:none;width:100%;height:100%}.image-placeholder{color:var(--text-secondary);text-align:center;padding:var(--space-7);font-size:12px}.react-flow__resize-control.handle{background-color:var(--bg-base)!important;border:2px solid var(--accent-color)!important;z-index:100!important;border-radius:4px!important;width:14px!important;height:14px!important}.board-wrapper.mode-resize .react-flow__node,.board-wrapper.mode-rotate .react-flow__node,.board-wrapper.mode-edit .react-flow__node{cursor:default!important}.rotate-handle{cursor:grab}.rotate-handle:active{cursor:grabbing}.cards-board-wrapper{background-color:var(--bg-base);width:100%;height:100%;padding:var(--space-7);gap:var(--space-7);align-items:flex-start;display:flex;overflow:auto hidden}.cards-column{border:1px solid var(--border-subtle);background-color:#1e1e1e80;border-radius:8px;flex-direction:column;width:320px;min-width:320px;max-height:100%;display:flex}.cards-column-header{padding:var(--space-5);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);justify-content:space-between;align-items:center;font-weight:600;display:flex}.cards-column-header input{color:inherit;font-weight:inherit;background:0 0;border:none;width:100%;font-size:14px}.cards-column-body{padding:var(--space-5);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.plot-card{background-color:var(--bg-hover);border-left:4px solid var(--accent-color);border-top:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);padding:var(--space-5);cursor:grab;gap:var(--space-4);border-radius:6px;flex-direction:column;transition:transform .1s;display:flex}.plot-card:active{cursor:grabbing}@media (prefers-reduced-motion:no-preference){.plot-card:active{transform:scale(.98)}}.plot-card-title{color:var(--text-primary);background:0 0;border:none;width:100%;font-size:14px;font-weight:600}.plot-card-desc{color:var(--text-secondary);resize:vertical;background:0 0;border:none;width:100%;min-height:60px;font-family:inherit;font-size:13px}.cards-add-btn{border:1px dashed var(--border-subtle);color:var(--text-secondary);padding:var(--space-4);cursor:pointer;text-align:center;background:0 0;border-radius:6px;font-weight:600;transition:all .2s}.cards-add-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-color)}.timeline-wrapper{background-color:var(--bg-base);flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.timeline-toolbar{padding:var(--space-6);border-bottom:1px solid var(--border-subtle);z-index:20;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.timeline-canvas{flex:1;position:relative;overflow:auto hidden}.timeline-track-line{background-color:var(--border-subtle);z-index:1;pointer-events:none;min-width:100%;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.timeline-events-container{z-index:2;height:100%;min-height:500px;display:block;position:relative}.timeline-event-wrapper{pointer-events:none;flex-direction:column;width:340px;height:100%;display:flex;position:absolute;top:0;transform:translate(-50%)}.timeline-event-wrapper .timeline-card,.timeline-event-wrapper .timeline-node{pointer-events:auto}.timeline-card-space{flex:1;position:relative}.timeline-card-holder{position:absolute;left:0;right:0}.top-space .timeline-card-holder{bottom:var(--arm,30px)}.bottom-space .timeline-card-holder{top:var(--arm,30px)}.timeline-center-axis{z-index:10;justify-content:center;align-items:center;height:0;display:flex;position:relative}.timeline-node{background-color:var(--bg-base);border:4px solid var(--accent-color);z-index:10;border-radius:50%;width:18px;height:18px;position:absolute}.timeline-stem{background-color:var(--border-subtle);width:2px;position:absolute;left:50%;transform:translate(-50%)}.is-top .timeline-stem{height:var(--arm,30px);bottom:0}.is-bottom .timeline-stem{height:var(--arm,30px);top:0}.timeline-card{background-color:var(--bg-hover);border:1px solid var(--border-subtle);padding:var(--space-6);gap:var(--space-4);z-index:5;border-radius:8px;flex-direction:column;transition:border-color .2s,transform .2s;display:flex;position:relative;box-shadow:0 4px 12px #0006}.timeline-card:hover{border-color:var(--accent-color);z-index:20}@media (prefers-reduced-motion:no-preference){.timeline-card:hover{transform:translateY(-2px)}}.timeline-mode-buttons{gap:var(--space-3);align-items:center;display:flex}.timeline-mode-btn{background:var(--bg-hover);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:var(--space-3) var(--space-5);cursor:pointer;align-items:center;gap:var(--space-4);border-radius:4px;font-family:inherit;font-size:12px;display:flex}.timeline-mode-btn:hover{border-color:var(--accent-color);color:var(--text-primary)}.timeline-mode-btn.active{background:var(--accent-color);color:var(--on-accent);border-color:var(--accent-color)}.timeline-mode-btn .hotkey-hint{padding:0 var(--space-2);background:#00000040;border-radius:3px;font-size:11px;font-weight:600}.timeline-card.mode-grab{cursor:grab}.timeline-card.mode-grab:active{cursor:grabbing}.timeline-card.mode-grab input,.timeline-card.mode-grab textarea{pointer-events:none;-webkit-user-select:none;user-select:none}.timeline-card.mode-edit{cursor:default}.timeline-card-header{border-bottom:1px solid var(--border-subtle);padding-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.timeline-date-input{color:var(--text-primary);font-variant-numeric:tabular-nums;background:0 0;border:none;width:100%;font-size:14px;font-weight:600}.timeline-ymd{align-items:center;gap:var(--space-1);background:var(--bg-base);border:1px solid var(--border-subtle);padding:var(--space-2) var(--space-3);border-radius:4px;display:flex}.timeline-ymd:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.timeline-ymd input{color:var(--text-primary);text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;background:0 0;border:none;outline:none;font-family:inherit;font-size:12px}.timeline-ymd input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.timeline-ymd input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timeline-ymd .ymd-year{width:44px}.timeline-ymd .ymd-month,.timeline-ymd .ymd-day{width:24px}.timeline-ymd .ymd-sep{color:var(--text-secondary);font-size:11px}.timeline-title-input{color:var(--text-primary);background:0 0;border:none;width:100%;font-size:16px;font-weight:600}.timeline-desc-input{color:var(--text-secondary);resize:vertical;background:0 0;border:none;width:100%;min-height:80px;font-family:inherit;font-size:13px;line-height:1.5}@media (prefers-reduced-motion:reduce){.timeline-card{transition:none}}*{box-sizing:border-box}body{font-family:var(--font-main);background-color:var(--bg-base);color:var(--text-primary);flex-direction:column;height:100vh;margin:0;padding:0;display:flex;overflow:hidden}header{padding:var(--space-5) var(--space-7);color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);background-color:#000;align-items:center;width:100%;font-size:14px;display:flex}header strong{color:var(--text-primary);font-weight:600}.app-container{gap:var(--space-5);padding:var(--space-5);flex:1;display:flex;overflow:hidden}.sidebar{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);width:260px;padding:var(--space-6) var(--space-5);flex-direction:column;display:flex}.sidebar-header-container{margin-bottom:var(--space-5);padding:0 var(--space-4);justify-content:space-between;align-items:center;display:flex}.sidebar-header{color:var(--text-tertiary);margin-bottom:0;padding-left:0;font-size:12px;font-weight:500;line-height:16px}.sidebar-actions{gap:var(--space-3);display:flex}.action-btn{color:var(--text-secondary);cursor:pointer;padding:var(--space-2);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .2s;display:flex}.action-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.file-tree{min-height:0;padding-bottom:var(--space-7);flex:1;overflow:hidden auto}.file-item{padding:var(--space-4);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:var(--space-4);-webkit-user-select:none;user-select:none;min-width:0;font-size:13px;display:flex}.file-name{white-space:nowrap;flex:1;min-width:0;display:flex}.file-name-base{text-overflow:ellipsis;min-width:0;overflow:hidden}.file-name-ext{flex:none}.file-item.active{background-color:var(--bg-selected);color:var(--text-primary)}.file-item.selected-folder{border-left:2px solid var(--accent-color);background-color:#ffffff08}.file-item.drag-over{background-color:var(--accent-tint);border:1px dashed var(--accent-border)}.tree-children{border-left:1px solid var(--border-subtle);margin-left:var(--space-5);padding-left:var(--space-2)}.collapse-arrow{text-align:center;cursor:pointer;width:16px;color:var(--text-secondary);margin-right:var(--space-2);font-size:11px;transition:color .2s;display:inline-block}.collapse-arrow:hover{color:var(--text-primary)}.collapse-arrow.hidden{opacity:0;pointer-events:none}.delete-btn{color:var(--text-secondary);cursor:pointer;opacity:0;padding:0 var(--space-2);background:0 0;border:none;margin-left:auto;font-size:14px;transition:opacity .2s,color .2s}.file-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:#f55}.workspace{gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow:hidden}.panel{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.editor-panel{flex:1;box-shadow:0 4px 24px #0003}.database-panel{transition:height .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.panel-header{padding:var(--space-5) var(--space-6) 0 var(--space-6);gap:var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.content-area{padding:var(--space-7) var(--space-10);flex:1;overflow-y:auto}.tabs{gap:var(--space-4);display:flex}.tab{padding:var(--space-4) var(--space-6);color:var(--text-secondary);border-radius:var(--radius-md) var(--radius-md) 0 0;cursor:pointer;font-size:13px;position:relative}.tab.active{color:var(--accent-color)}.tab.active:after{content:"";background-color:var(--accent-color);width:100%;height:2px;position:absolute;bottom:-1px;left:0}.tabs-container{background-color:var(--bg-base);border-bottom:1px solid var(--border-subtle);display:flex;overflow-x:auto}.workspace-tab{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);background-color:var(--bg-hover);border-right:1px solid var(--border-subtle);color:var(--text-secondary);cursor:grab;-webkit-user-select:none;user-select:none;font-size:13px;display:flex}.workspace-tab:active{cursor:grabbing}.workspace-tab.active{background-color:var(--bg-base);color:var(--accent-color);border-top:2px solid var(--accent-color)}.workspace-tab .close-tab{opacity:0;color:inherit;cursor:pointer;padding:var(--space-1) var(--space-2);background:0 0;border:none;border-radius:4px}.workspace-tab:hover .close-tab{opacity:1}.workspace-tab .close-tab:hover{background-color:#ffffff1a}.split-drop-overlay{background:var(--accent-tint);border:2px dashed var(--accent-border);pointer-events:none;z-index:50;transition:all .1s;position:absolute}.split-drop-overlay.right{width:50%;top:0;bottom:0;right:0}.split-drop-overlay.bottom{inset:50% 0 0}.split-drop-overlay.center{background:#ffffff0d;border-color:#fff3;inset:0}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-8);overscroll-behavior:contain;width:400px;max-height:88vh;overflow-y:auto;box-shadow:0 8px 24px #00000080}.modal-content>.modal-header{top:calc(-1 * var(--space-8));z-index:2;background:var(--bg-hover);margin:calc(-1 * var(--space-8)) calc(-1 * var(--space-8)) var(--space-6);padding:var(--space-8) var(--space-8) var(--space-5);position:sticky}.modal-header{margin-bottom:var(--space-6);color:var(--text-primary);font-size:16px;font-weight:600;line-height:22px}.modal-actions{justify-content:flex-end;gap:var(--space-5);margin-top:var(--space-8);display:flex}.btn-primary{background-color:var(--accent-color);color:var(--on-accent);padding:var(--space-4) var(--space-6);cursor:pointer;border:none;border-radius:4px;font-weight:600}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-subtle);padding:var(--space-4) var(--space-6);cursor:pointer;background-color:#0000;border-radius:4px}.btn-primary:hover{filter:brightness(1.1)}.btn-secondary:hover{background-color:#ffffff0d}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px}.dropdown-item{color:var(--text-primary);padding:var(--space-4) var(--space-5);text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0d;font-size:13px;transition:background .1s,color .1s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:var(--accent-color);color:var(--on-accent)}.panel-resizer{z-index:30;background:0 0;flex:none;transition:background-color .15s;position:relative}.panel-resizer.is-vertical{cursor:col-resize;align-self:stretch;width:6px}.panel-resizer.is-horizontal{cursor:row-resize;width:100%;height:6px}.panel-resizer:before{content:"";position:absolute;inset:0}.panel-resizer.is-vertical:before{left:calc(-1 * var(--space-2));right:calc(-1 * var(--space-2))}.panel-resizer.is-horizontal:before{top:calc(-1 * var(--space-2));bottom:calc(-1 * var(--space-2))}.panel-resizer:hover{background-color:var(--accent-color)}.panel-resizer:focus-visible{background-color:var(--accent-color);outline:2px solid var(--accent);outline-offset:2px}.panel-resizer:active{background-color:var(--accent-color)}.sidebar,.inspector-panel,.database-panel{flex:none}body.is-resizing,body.is-resizing *{-webkit-user-select:none!important;user-select:none!important}body.is-resizing .database-panel{transition:none!important}body.is-resizing.resize-col,body.is-resizing.resize-col *{cursor:col-resize!important}body.is-resizing.resize-row,body.is-resizing.resize-row *{cursor:row-resize!important}.file-rename-input{background:var(--bg-base);border:1px solid var(--accent-color);min-width:0;color:var(--text-primary);padding:var(--space-1) var(--space-3);border-radius:4px;outline:none;flex:1;font-family:inherit;font-size:13px}.file-rename-input:focus-visible{box-shadow:var(--ring-focus-inset);outline:2px solid #0000}.file-item.is-focused{background-color:#ffffff0a}.file-context-menu{background-color:var(--bg-base);border:1px solid var(--border-subtle);min-width:170px;padding:var(--space-2);border-radius:6px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 24px #000c}.file-context-menu .dropdown-item{align-items:center;gap:var(--space-4);display:flex}@media (width<=1100px){.app-container{gap:var(--space-4);padding:var(--space-4)}}@media (width<=900px){.inspector-panel{right:var(--space-4);top:var(--space-4);bottom:var(--space-4);z-index:50;max-width:90vw;position:absolute;box-shadow:0 8px 40px #0009}.workspace{position:relative}}.doc-workitems{gap:var(--space-1);flex-direction:column;display:flex}.doc-workitem{align-items:center;gap:var(--space-4);width:100%;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;padding:var(--space-2) var(--space-3);background:0 0;border:1px solid #0000;border-radius:6px;display:flex}.doc-workitem:hover{background:var(--bg-hover);border-color:var(--border-subtle)}.doc-workitem-key{color:var(--text-secondary);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:500}.doc-workitem-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:12px;overflow:hidden}@media (prefers-reduced-motion:reduce){.database-panel{transition:none}}.db-category-bar{gap:var(--space-4);margin-bottom:var(--space-5);padding-bottom:var(--space-2);display:flex;overflow-x:auto}.db-category-pill{background-color:var(--bg-hover);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:var(--space-2) var(--space-5);cursor:pointer;white-space:nowrap;border-radius:12px;font-size:12px;font-weight:600;transition:all .2s}.db-category-pill:hover{color:var(--text-primary);background-color:#ffffff0d}.db-category-pill.active{border-color:var(--accent-color);color:var(--accent-color);background-color:#8ab4f826}.db-grid{gap:var(--space-5);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.db-card{background-color:var(--bg-base);border:1px solid var(--border-subtle);padding:var(--space-5);border-radius:var(--radius-md);gap:var(--space-2);cursor:grab;flex-direction:column;width:200px;font-size:13px;display:flex}.db-card:active{cursor:grabbing}.db-card-type{color:var(--text-secondary);font-size:11px;line-height:16px}.db-editor-container{max-width:600px;padding-top:var(--space-7);margin:0 auto}.db-editor-form{gap:var(--space-6);flex-direction:column;display:flex}.db-editor-form label{color:var(--text-secondary);font-size:12px;font-weight:500;line-height:16px}.db-editor-form input,.db-editor-form select,.db-editor-form textarea{background:var(--bg-base);border:1px solid var(--border-control);color:var(--text-primary);padding:var(--space-5);border-radius:var(--radius-md);font-family:inherit;font-size:14px}.db-editor-form textarea{resize:vertical;min-height:200px}.db-editor-form input:focus{border-color:var(--accent-color)}.inspector-panel{background-color:var(--bg-hover);border-left:1px solid var(--border-subtle);flex-direction:column;width:320px;animation:.2s ease-out slideInRight;display:flex}@media (prefers-reduced-motion:reduce){.inspector-panel{animation:none}}@keyframes slideInRight{0%{margin-right:calc(-1 * (var(--space-10) + var(--space-10) + var(--space-10) + var(--space-10) + var(--space-10) + var(--space-10) + var(--space-10) + var(--space-10)));opacity:0}to{opacity:1;margin-right:0}}.inspector-header{padding:var(--space-6);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;font-weight:600;display:flex}.inspector-content{padding:var(--space-6);flex:1;overflow-y:auto}.inspector-field{margin-bottom:var(--space-6)}.inspector-field-label{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:12px;font-weight:500;line-height:16px}.inspector-field-value{color:var(--text-primary);background-color:var(--bg-base);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:4px;font-size:14px;line-height:1.5}input.inspector-field-value,textarea.inspector-field-value,select.inspector-field-value{border-color:var(--border-control)}.db-col-delete{color:var(--text-secondary);cursor:pointer;padding:0 var(--space-2);opacity:0;background:0 0;border:none;border-radius:4px;margin-left:auto;font-size:14px;line-height:1;transition:opacity .15s,color .15s,background-color .15s}.db-col-header:hover .db-col-delete{opacity:1}.db-col-delete:focus-visible{opacity:1;outline:2px solid var(--accent-color)}.db-col-delete:hover{color:#f55;background-color:#ff55551f}.db-danger-btn{border:1px solid var(--border-default);color:var(--text-secondary)}.db-danger-btn:hover{color:var(--status-danger-text);border-color:color-mix(in srgb, var(--status-danger) 32%, transparent);background-color:color-mix(in srgb, var(--status-danger) 14%, transparent)}.db-col-rename{background:var(--bg-base);border:1px solid var(--accent-color);color:var(--text-primary);padding:var(--space-1) var(--space-3);border-radius:4px;outline:none;width:11ch;min-width:80px;font-family:inherit;font-size:12px;font-weight:600}.db-col-rename:focus-visible{box-shadow:var(--ring-focus-inset);outline:2px solid #0000}.db-row-check{accent-color:var(--accent-color);cursor:pointer;width:14px;height:14px;margin:0}tr.is-selected{background-color:var(--bg-selected)}tr.is-selected td{color:var(--text-primary)}.db-bulk-bar{bottom:var(--space-6);align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4);background:var(--bg-base);border:1px solid var(--border-subtle);z-index:60;border-radius:10px;flex-wrap:wrap;max-width:calc(100% - 32px);display:flex;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #000000b3}.db-bulk-count{font-variant-numeric:tabular-nums;color:var(--text-primary);padding:0 var(--space-4) 0 var(--space-2);border-right:1px solid var(--border-subtle);white-space:nowrap;font-size:12px;font-weight:600}.db-bulk-btn{color:var(--text-secondary);padding:var(--space-3) var(--space-4);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;font-family:inherit;font-size:12px}.db-bulk-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.db-bulk-btn.is-primary{background:var(--accent-color);color:var(--on-accent);font-weight:600}.db-bulk-btn.is-primary:hover{filter:brightness(1.1)}.db-bulk-btn.is-danger:hover{color:#f55;background:#ff555526}.db-bulk-select{background:var(--bg-surface);border:1px solid var(--border-control);color:var(--text-primary);padding:var(--space-2) var(--space-4);border-radius:6px;font-family:inherit;font-size:12px}.db-bulk-value{background:var(--bg-surface);border:1px solid var(--border-control);min-width:160px;padding:var(--space-2) var(--space-4);color:var(--text-primary);border-radius:6px;font-size:12px}.db-bulk-close{color:var(--text-secondary);cursor:pointer;padding:var(--space-2) var(--space-3);background:0 0;border:none;border-radius:4px;font-size:16px;line-height:1}.db-bulk-close:hover{background:var(--bg-hover);color:var(--text-primary)}tr.is-anchor td:first-child{box-shadow:inset 2px 0 0 var(--accent-color)}.db-grid-wrapper tbody td{-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums}.db-grid-wrapper tbody td input,.db-grid-wrapper tbody td textarea{-webkit-user-select:text;user-select:text}.db-grid-wrapper td :is(input,select,textarea):focus-visible,.db-bulk-value :is(input,select,textarea):focus-visible{box-shadow:var(--ring-focus-inset);outline:2px solid #0000}tr.is-cut td{color:var(--text-tertiary);border-top:1px dashed var(--text-secondary);border-bottom:1px dashed var(--text-secondary)}.db-bulk-btn.is-armed{background:var(--bg-selected);color:var(--accent-color)}
