*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit;color:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;background:none}button:disabled{opacity:.38;cursor:default}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--line);outline-offset:3px}input,textarea{min-width:0}textarea{resize:none}svg{width:18px;height:18px;flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin-top:0}button{transition:background .15s,border-color .15s,box-shadow .15s}::selection{background:var(--panel)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hidden{display:none!important}.invisible{visibility:hidden}.muted{color:var(--muted)}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.9px;color:var(--secondary)}.icon-button{width:30px;height:30px;display:inline-flex;justify-content:center;align-items:center;border-radius:6px;color:var(--secondary);flex:none}.icon-button:hover{background:var(--panel);color:var(--ink)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:7px;padding:12px 17px;font-size:13px;font-weight:500}.primary{background:var(--green);color:white}.primary:hover{background:var(--green-dark)}.secondary{background:var(--paper);border:1px solid var(--line)}.text-button,.danger-text{display:inline-flex;align-items:center;gap:7px;font-size:12px;padding:8px 0;color:var(--green)}.danger-text{color:var(--secondary)}.text-button:hover,.danger-text:hover{text-decoration:underline}.tone-sage{background:var(--sage)!important}.tone-sand{background:var(--sand)!important}.tone-clay{background:var(--clay)!important}.tone-lavender{background:var(--lavender)!important}.boot-screen{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}.wordmark{font-size:26px;font-weight:600;letter-spacing:-1.2px}.wordmark>span{color:var(--secondary)}.app-shell{display:flex;min-height:100dvh}.app-rail{width:66px;flex:none;background:var(--panel);border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;padding:21px 10px 16px;gap:11px;height:100dvh}.app-rail.expanded{width:230px;align-items:stretch;padding:28px 18px 18px}.brand{display:flex;align-items:center;justify-content:center;margin-bottom:21px}.expanded .brand{justify-content:flex-start;padding:0 5px;margin-bottom:31px}.brand-symbol{position:relative;font-family:var(--font-sans);font-size:37px;line-height:1;color:var(--green);letter-spacing:-4px;font-weight:bold}.brand-symbol span{color:var(--muted);font-size:30px}.expanded .brand-symbol{display:none}.expanded .wordmark{font-size:26px}.rail-new,.rail-item{height:38px;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:12px;width:39px;color:var(--secondary)}.rail-new{background:var(--paper);border:1px solid var(--line);color:var(--ink)}.rail-item:hover,.rail-workspace:hover{background:var(--panel)}.expanded .rail-new,.expanded .rail-item{width:100%;justify-content:flex-start;padding:0 13px;font-size:12px}.expanded .rail-new{margin-bottom:13px;box-shadow:0 1px 2px var(--shadow)}.rail-item.current{background:var(--panel);color:var(--ink)}.rail-section{font-size:9px;letter-spacing:1.4px;color:var(--secondary);margin:27px 11px 6px}.rail-workspaces{display:flex;flex-direction:column;gap:5px;overflow:auto}.rail-workspace{display:flex;align-items:flex-start;text-align:left;gap:10px;color:var(--secondary);border-radius:7px;padding:9px 11px;font-size:12px;line-height:1.5}.rail-workspace span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rail-workspace svg{width:15px;height:15px;margin-top:2px}.rail-bottom{margin-top:auto;display:flex;flex-direction:column;gap:18px;padding-top:25px}.profile{display:flex;align-items:center;gap:11px;font-size:12px}.profile>span{border:1px solid var(--line);border-radius:50%;width:32px;height:32px;background:var(--panel);display:flex;align-items:center;justify-content:center;color:var(--ink);font-size:11px}.profile small{display:block;font-size:10px;color:var(--secondary);margin-top:3px}.expanded .profile{padding:16px 7px 0;border-top:1px solid var(--line)}.home-main{flex:1;min-width:0;background:var(--canvas);height:100dvh;overflow:auto}.home-header{display:flex;align-items:center;justify-content:space-between;padding:28px 37px;font-size:11px;color:var(--secondary);gap:15px}.prototype-badge{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--secondary);border:1px solid var(--line);border-radius:20px;padding:6px 9px;white-space:nowrap}.prototype-badge>span,.simulation-note>span{width:5px;height:5px;border-radius:50%;background:var(--selected)}.home-content{max-width:855px;padding:40px 35px 26px;margin:0 auto}.welcome-mark{display:flex;justify-content:center;margin-bottom:21px}.welcome-mark svg{width:44px;height:44px;stroke:#71876a;stroke-width:1.1;transform:rotate(15deg)}.home-content>.eyebrow{text-align:center;font-size:9px;letter-spacing:2px}.home-content h1{text-align:center;font-family:var(--font-sans);font-size:48px;font-weight:400;line-height:1.13;letter-spacing:-1.7px;margin:22px 0 18px;color:var(--ink)}.home-subtitle{text-align:center;font-size:13px;color:var(--secondary);margin-bottom:32px}.home-composer{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:18px 18px 12px;box-shadow:0 5px 20px var(--shadow)}.home-composer:focus-within{border-color:var(--line);box-shadow:0 0 0 3px var(--shadow)}.home-composer textarea{background:transparent;border:0;width:100%;outline:none!important;line-height:1.7;font-size:14px;min-height:62px}.home-composer textarea::placeholder{color:var(--muted)}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.composer-bottom>span{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);min-width:0}.composer-bottom>span svg{width:13px;height:13px}.send-button{height:31px;width:31px;background:var(--accent);color:var(--muted);border-radius:7px;flex:none;display:flex;align-items:center;justify-content:center}.send-button:hover{background:var(--accent)}.starter-chips{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:16px;flex-wrap:wrap}.starter-chips button{border:1px solid var(--line);border-radius:7px;padding:8px 11px;font-size:10px;display:flex;align-items:center;gap:7px;color:var(--secondary)}.starter-chips button:hover{background:var(--panel)}.starter-chips svg{width:13px;height:13px}.recent-section{margin-top:62px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-heading h2{font-size:12px;font-weight:500;margin:0}.section-heading>span{font-size:10px;color:var(--secondary)}.workspace-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.workspace-card{border:1px solid var(--line);border-radius:10px;background:var(--paper);padding:17px;text-align:left;max-width:380px}.workspace-card:hover{border-color:var(--line);box-shadow:0 4px 16px var(--shadow);background:var(--paper)}.workspace-card-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);margin-bottom:17px}.workspace-card-top>svg{width:14px}.workspace-avatar{width:33px;height:33px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--secondary)}.workspace-card h3{font-size:13px;font-weight:500;margin-bottom:8px}.workspace-card p{font-size:11px;color:var(--secondary);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:22px;min-height:35px}.workspace-card-footer{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--secondary);border-top:1px solid var(--line);padding-top:13px}.workspace-card-footer svg{width:12px;height:12px}.workspace-card-footer .card-date{margin-left:auto;font-size:9px}.home-footnote{text-align:center;font-family:var(--font-sans);font-style:italic;color:var(--muted);margin:39px 0 5px;font-size:12px}.workspace-shell{height:100dvh;overflow:hidden}.workspace-main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}.workspace-header{height:65px;flex:none;display:flex;justify-content:space-between;align-items:center;padding:0 23px;border-bottom:1px solid var(--line);background:var(--paper);gap:18px}.workspace-identity,.header-actions{display:flex;align-items:center;gap:11px;min-width:0}.workspace-dot{width:26px;height:26px;background:var(--panel);color:var(--secondary);border-radius:7px;display:flex;align-items:center;justify-content:center}.workspace-dot svg{width:14px}.workspace-identity input{border:0;background:transparent;width:245px;font-size:13px;font-weight:500;text-overflow:ellipsis;padding:5px 0}.local-label{color:var(--muted);border-left:1px solid var(--line);padding-left:13px;font-size:10px;white-space:nowrap}.save-status{font-size:10px;color:var(--secondary);display:flex;align-items:center;gap:5px;white-space:nowrap;padding:5px}.save-status svg{width:13px;height:13px}.save-status.failed{color:var(--ink)}.add-surface-button{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);background:var(--paper);border-radius:7px;font-size:11px;font-weight:500;white-space:nowrap}.add-surface-button svg{width:14px;height:14px}.add-surface-button svg:last-child{width:11px;margin-left:6px}.add-surface-button:hover{background:var(--panel)}.workspace-body{display:flex;flex:1;min-height:0}.conversation-pane{width:305px;flex:none;display:flex;flex-direction:column;min-height:0;background:var(--paper);border-right:1px solid var(--line)}.conversation-heading{height:48px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-bottom:1px solid var(--line);color:var(--secondary);font-size:11px}.conversation-heading>span{display:flex;align-items:center;gap:8px}.conversation-heading svg{width:14px;height:14px}.tiny-tag{font-size:8px;letter-spacing:1px;color:var(--muted)}.messages{flex:1;overflow:auto;padding:25px 22px 20px;scroll-behavior:smooth}.message{margin-bottom:29px;font-size:12px;line-height:1.85;animation:appear .25s ease}.message-label{font-size:10px;color:var(--secondary);display:flex;align-items:center;gap:7px;margin-bottom:9px;font-weight:500}.assistant-mark{font-family:var(--font-sans);color:var(--secondary);font-weight:bold;font-size:18px;line-height:20px;letter-spacing:-2px;width:19px}.user-mark{width:18px;height:18px;border-radius:50%;background:var(--panel);color:var(--secondary);display:flex;align-items:center;justify-content:center;font-size:8px}.message-text{color:var(--ink);overflow-wrap:anywhere}.message.user .message-text{color:var(--secondary)}.message-surface{display:flex;align-items:center;gap:7px;color:var(--ink);font-size:10px;border:1px solid var(--line);border-radius:6px;padding:6px 9px;margin-top:14px;background:var(--paper)}.message-surface svg{width:12px;height:12px}.chat-bottom{padding:12px 15px 13px}.suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:13px}.suggestions button{font-size:9px;border:1px solid var(--line);padding:6px 7px;border-radius:5px;display:flex;align-items:center;gap:5px;color:var(--secondary);text-align:left}.suggestions button:hover{background:var(--paper)}.suggestions svg{width:10px;height:10px}.chat-composer{border:1px solid var(--line);border-radius:9px;padding:11px;background:var(--paper);box-shadow:0 2px 5px var(--shadow)}.chat-composer:focus-within{border-color:var(--line)}.chat-composer textarea{width:100%;border:0;background:transparent;outline:none!important;font-size:11px;line-height:1.7;min-height:60px}.chat-composer textarea::placeholder{color:var(--muted)}.chat-composer .send-button{width:26px;height:26px;border-radius:6px}.chat-composer .send-button svg{width:14px}.chat-composer .composer-bottom>span{font-size:8px;max-width:185px}.chat-composer .composer-bottom>span span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.simulation-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:8px;letter-spacing:.2px;color:var(--muted);margin:10px auto 0}.surface-area{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--paper)}.surface-tabs{height:48px;flex:none;border-bottom:1px solid var(--line);display:flex;align-items:stretch;padding:0 20px;gap:5px;background:var(--paper);overflow-x:auto;scrollbar-width:thin}.surface-tab{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--secondary);padding:0 14px;border-bottom:2px solid transparent;white-space:nowrap}.surface-tab>span{max-width:190px;overflow:hidden;text-overflow:ellipsis}.surface-tab svg{width:13px;height:13px}.surface-tab:hover{background:var(--paper)}.surface-tab.active{color:var(--ink);border-bottom-color:var(--line);background:linear-gradient(0deg,var(--paper),transparent)}.tab-add{align-self:center;margin-left:3px}.surface-toolbar{height:44px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 23px;border-bottom:1px solid var(--line);gap:10px}.surface-type{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--secondary);min-width:0}.surface-type svg{width:12px;height:12px}.toolbar-divider{width:1px;height:12px;background:var(--panel);margin:0 3px}.toolbar-hint{color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.surface-tools{display:flex;align-items:center;gap:8px;flex:none}.tool-button{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--secondary)}.tool-button svg{width:13px;height:13px}.surface-content-row{display:flex;flex:1;min-height:0}.surface-scroll{flex:1;overflow:auto;min-width:0}.editor-formatbar{height:39px;position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:4px;padding:0 26px;border-bottom:1px solid var(--line);background:var(--paper);backdrop-filter:blur(12px);color:var(--secondary)}.editor-formatbar button{display:flex;align-items:center;gap:5px;font-size:10px;padding:5px 7px;border-radius:4px;min-width:26px}.editor-formatbar button:hover,.editor-formatbar button.on{background:var(--panel);color:var(--ink)}.editor-formatbar svg{width:13px;height:13px}.editor-formatbar>span{height:14px;width:1px;background:var(--panel);margin:0 4px}.format-spacer{flex:1}.document-wrap{padding:28px 32px 60px}.document-sheet{max-width:780px;min-height:850px;margin:auto;background:var(--paper);border:1px solid var(--line);box-shadow:0 3px 15px var(--shadow);padding:45px 48px 24px}.tiptap{outline:none!important;line-height:1.85;font-size:12px;color:var(--secondary);min-height:300px}.tiptap>p:first-child{font-size:8px;letter-spacing:1.5px;color:var(--muted);font-family:inherit;margin:0 0 22px}.tiptap h1{font-family:var(--font-sans);font-weight:400;font-size:36px;line-height:1.15;letter-spacing:-1.3px;color:var(--ink);margin:0 0 22px}.tiptap h2{font-size:14px;font-weight:500;color:var(--ink);margin:34px 0 12px;letter-spacing:-.2px}.tiptap h3{font-size:13px;font-weight:500;margin-top:24px}.tiptap p{margin:0 0 17px}.tiptap li>p{margin:0}.tiptap ul,.tiptap ol{padding-left:20px;margin:15px 0 24px}.tiptap li{padding-left:5px;margin-bottom:8px}.tiptap li::marker{color:var(--muted)}.tiptap a{color:var(--ink);text-decoration:underline}.tiptap blockquote{border-left:3px solid var(--line);padding-left:18px;margin-left:0}.tiptap pre{background:var(--panel);padding:14px;border-radius:7px;overflow:auto}.insight-card{border:1px solid var(--line);border-radius:6px;padding:17px 20px;margin:27px 0;cursor:pointer;transition:border-color .15s,box-shadow .15s}.insight-card:hover,.insight-card.selected{border-color:var(--line);box-shadow:0 0 0 2px var(--shadow)}.insight-eyebrow{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--secondary);letter-spacing:.4px;margin-bottom:10px}.insight-eyebrow svg{width:12px;height:12px}.insight-eyebrow svg:last-child{margin-left:auto;opacity:.6}.insight-card p{font-family:var(--font-sans);font-size:18px;line-height:1.5;color:var(--secondary);margin:0}.document-bottom{display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid var(--line);padding-top:24px;margin-top:38px;color:var(--muted);font-size:9px}.document-bottom svg{width:13px;height:13px}.inspector{width:249px;flex:none;background:var(--paper);border-left:1px solid var(--line);overflow:auto}.inspector-header{height:47px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--line);font-size:11px;color:var(--secondary)}.inspector-content{padding:20px 17px;display:flex;flex-direction:column;gap:20px}.inspector-preview{width:40px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--secondary)}.field-label{display:flex;flex-direction:column;gap:8px;font-size:10px;color:var(--secondary)}.field-label input,.field-label textarea{width:100%;border:1px solid var(--line);border-radius:5px;padding:9px 10px;font-size:11px;background:var(--paper);line-height:1.6;outline:none}.field-label input:focus,.field-label textarea:focus{border-color:var(--line)}.field-label textarea{resize:vertical}.tone-picker{display:flex;gap:10px}.tone-swatch{height:27px;width:27px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center}.tone-swatch.selected{outline:1px solid var(--line);outline-offset:3px}.tone-swatch svg{width:12px;height:12px;color:var(--secondary)}.inspector-help{font-size:10px;color:var(--muted);line-height:1.8;margin:0}.inspector-tip{display:flex;align-items:flex-start;gap:10px;padding:14px;background:var(--paper);border-radius:6px;color:var(--secondary)}.inspector-tip p{font-size:10px;line-height:1.8;margin:0}.static-field{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:5px;padding:9px;background:var(--paper);font-size:11px}.static-field svg{width:14px;height:14px}.surface-menu{position:absolute;right:22px;top:58px;width:300px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:0 14px 45px var(--shadow);z-index:30;padding:9px;animation:appear .12s ease}.menu-heading{font-size:8px;letter-spacing:1.3px;color:var(--muted);padding:11px 10px 12px}.surface-menu>button{display:flex;align-items:center;gap:11px;text-align:left;padding:12px 10px;width:100%;border-radius:6px}.surface-menu>button:hover{background:var(--paper)}.menu-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:7px;color:var(--secondary)}.surface-menu strong{display:block;font-size:11px;font-weight:500;color:var(--secondary)}.surface-menu small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.surface-menu>button>svg{margin-left:auto;width:13px;height:13px;color:var(--muted)}.menu-foot{padding:13px 10px 6px;margin-top:6px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.empty-surface-area .surface-tabs{display:none}.conversation-only .conversation-pane{width:40%;max-width:560px;min-width:310px}.conversation-only .messages{padding:38px 34px}.conversation-only .message{font-size:13px}.conversation-only .chat-bottom{padding:20px 26px}.empty-surface{margin:auto;text-align:center;padding:50px 35px;max-width:490px}.empty-illustration{display:flex;align-items:center;justify-content:center;margin-bottom:42px}.empty-illustration>div{width:64px;height:81px;border:1px solid var(--line);border-radius:7px;background:var(--paper);display:flex;align-items:center;justify-content:center;color:var(--muted);box-shadow:0 4px 10px var(--shadow);transform:rotate(-12deg);margin-right:-10px}.empty-illustration>div:nth-child(2){transform:translateY(-12px);background:var(--panel);z-index:1}.empty-illustration>div:nth-child(3){transform:rotate(12deg);background:var(--panel)}.empty-illustration svg{width:25px;height:25px;stroke-width:1.2}.empty-surface h2{font-family:var(--font-sans);font-size:34px;font-weight:400;line-height:1.2;letter-spacing:-.8px;margin:20px 0;color:var(--ink)}.empty-surface>p{font-size:12px;line-height:1.85;color:var(--muted);margin-bottom:27px}.empty-surface-options{display:flex;gap:9px;justify-content:center}.empty-surface-options button{display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid var(--line);border-radius:6px;font-size:10px;color:var(--secondary)}.empty-surface-options button:hover{background:var(--panel)}.empty-surface-options svg{width:12px;height:12px}.empty-surface-options svg:last-child{width:10px}.empty-note{display:block;margin-top:23px;font-size:9px;color:var(--muted)}.chat-hidden .conversation-pane{display:none}.mobile-home{display:none}.storyboard-wrap,.project-wrap{padding:38px 38px 50px;max-width:1140px;margin:auto}.surface-heading>.eyebrow{font-size:8px;margin-bottom:17px}.surface-heading>.eyebrow span{color:var(--muted);margin:0 8px}.surface-title-input{display:block;width:100%;font-family:var(--font-sans);font-size:32px;letter-spacing:-.9px;border:0;background:transparent;padding:0 0 4px;margin-bottom:10px;color:var(--ink);outline:none}.surface-title-input:focus{box-shadow:0 1px var(--shadow)}.surface-heading p{font-size:11px;line-height:1.7;color:var(--muted);margin-bottom:27px}.board-summary{display:flex;align-items:center;gap:17px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:26px;color:var(--secondary);font-size:9px}.board-summary>span{display:flex;align-items:center;gap:5px}.board-summary svg{width:12px;height:12px}.board-summary .board-select-hint{margin-left:auto;color:var(--muted);font-size:8px}.storyboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.scene-card{padding:0;background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow:hidden;text-align:left;box-shadow:0 2px 4px var(--shadow);align-self:start}.scene-card:hover,.scene-card.selected{border-color:var(--line);box-shadow:0 0 0 2px var(--shadow)}.scene-art{height:175px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.scene-art>img{width:100%;height:100%;object-fit:cover}.scene-number{position:absolute;left:12px;top:12px;font-size:9px;color:var(--secondary);background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:4px 6px}.scene-duration{position:absolute;bottom:11px;right:12px;font-size:9px;color:var(--secondary);background:var(--paper);border-radius:4px;padding:3px 5px}.scene-edit{position:absolute;right:12px;top:12px;color:var(--secondary);opacity:0}.scene-card:hover .scene-edit,.scene-card.selected .scene-edit{opacity:1}.scene-edit svg{width:13px}.scene-caption{padding:17px 19px}.scene-shot{font-size:8px;color:var(--muted);letter-spacing:.2px}.scene-caption h3{font-size:13px;font-weight:500;color:var(--secondary);margin:8px 0}.scene-caption>p{font-size:10px;line-height:1.8;color:var(--muted);margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.scene-line{font-family:var(--font-sans);font-size:14px;color:var(--secondary);border-top:1px solid var(--line);padding-top:13px}.add-scene{border:1px dashed var(--line);border-radius:8px;min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);background:var(--paper)}.add-scene:hover{background:var(--panel)}.add-scene strong{font-weight:400;font-size:11px}.add-scene>span{font-size:9px;color:var(--muted)}.surface-bottom-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:31px;font-size:9px;color:var(--muted)}.surface-bottom-note svg{width:14px}.visual-picker{display:flex;gap:7px}.visual-picker button{width:36px;height:31px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}.visual-picker button.selected{background:var(--panel);border-color:var(--line)}.visual-picker svg{width:16px;height:16px}.upload-button{display:flex;align-items:center;justify-content:center;gap:7px;border:1px dashed var(--line);border-radius:5px;padding:10px;font-size:10px;color:var(--secondary);cursor:pointer}.upload-button svg{width:14px}.reorder-buttons{display:flex;gap:8px;margin-bottom:4px}.reorder-buttons button{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;border:1px solid var(--line);border-radius:5px;padding:7px;flex:1;color:var(--secondary)}.reorder-buttons svg{width:12px;height:12px}.project-wrap{max-width:940px;padding:42px 48px 60px}.project-meta{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:28px;font-size:9px;color:var(--muted)}.project-meta>span{display:flex;align-items:center;gap:6px;white-space:nowrap}.project-meta svg{width:12px;height:12px}.progress-track{height:3px;width:85px;background:var(--panel);border-radius:4px;overflow:hidden}.progress-track>span{height:100%;display:block;background:var(--selected)}.project-meta .text-button{margin-left:auto;font-size:9px;padding:0}.outline{padding-bottom:30px}.outline-node{position:relative}.outline-row{display:flex;align-items:center;gap:6px;padding-left:calc(var(--depth) * 23px);border-radius:5px;min-height:37px}.outline-row:hover,.outline-row:focus-within{background:var(--line)}.outline-collapse{width:18px;height:25px;display:flex;align-items:center;justify-content:center;color:var(--muted);padding:0}.outline-collapse svg{width:11px;height:11px}.outline-bullet{display:flex;align-items:center;justify-content:center;width:20px;height:27px;padding:0}.outline-bullet>span{width:5px;height:5px;background:var(--selected);border-radius:50%;outline:4px solid transparent}.outline-bullet:hover>span{outline-color:var(--line)}.outline-text{flex:1;border:0;background:none;padding:7px 0;font-size:12px;line-height:1.5;outline:none!important;color:var(--secondary)}.outline-node[style='--depth:0']>.outline-row>.outline-text{font-weight:500;color:var(--ink)}.outline-row.completed .outline-text{text-decoration:line-through;color:var(--muted)}.outline-row-tools{display:flex;align-items:center;gap:3px;margin-right:4px;opacity:0}.outline-row:hover .outline-row-tools,.outline-row:focus-within .outline-row-tools,.outline-row.completed .outline-row-tools{opacity:1}.item-check{display:flex;align-items:center;color:var(--muted);padding:5px}.item-check svg{width:13px;height:13px}.item-check.checked{color:var(--secondary)}.item-details{width:25px;height:25px}.item-details svg{width:14px;height:14px}.outline-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:-1px;margin-bottom:8px}.outline-node[style='--depth:0']{margin-bottom:18px}.add-item{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--muted);padding:9px 24px}.add-item:hover{color:var(--secondary)}.add-item svg{width:13px;height:13px}.outline-keyboard{display:flex;flex-wrap:wrap;gap:15px;padding-top:18px;border-top:1px solid var(--line);font-size:8px;color:var(--muted)}.outline-keyboard>span{display:flex;gap:5px;align-items:center}kbd{font:inherit;border:1px solid var(--line);border-radius:3px;padding:2px 4px;background:var(--paper)}.project-quote{text-align:center;font-family:var(--font-sans);font-style:italic;font-size:14px;color:var(--muted);margin-top:43px}.outline-breadcrumb{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin:0 0 15px}.outline-breadcrumb>svg{width:12px}.outline-breadcrumb button{display:flex;align-items:center;gap:5px;color:var(--secondary);font-size:10px}.outline-breadcrumb strong{font-weight:500}.outline-breadcrumb button svg{width:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:100;background:var(--accent);color:var(--muted);padding:12px 20px;border-radius:8px;box-shadow:0 5px 20px var(--shadow);font-size:12px;max-width:min(90vw,600px);line-height:1.5}.toast.error{background:var(--accent)}.modal-backdrop{position:fixed;inset:0;background:var(--accent);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:90;padding:24px}.modal{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:40px;max-width:600px;position:relative;box-shadow:0 25px 100px var(--shadow);max-height:90dvh;overflow:auto}.modal-close{position:absolute;top:14px;right:14px}.modal-icon{width:45px;height:45px;background:var(--panel);color:var(--secondary);display:flex;align-items:center;justify-content:center;border-radius:11px;margin-bottom:24px}.modal h2{font-family:var(--font-sans);font-size:32px;font-weight:400;color:var(--ink);letter-spacing:-.6px;margin:15px 0 20px}.modal p{font-size:12px;line-height:1.8;color:var(--secondary)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin-bottom:23px}.about-grid strong{font-size:11px;font-weight:500;color:var(--secondary)}.about-grid p{font-size:11px;margin:8px 0 0}.modal .primary{margin-top:10px}.thinking{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:9px;padding:5px 0 20px}.thinking span{height:4px;width:4px;border-radius:50%;background:var(--selected);animation:pulse 1s infinite}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s;margin-right:5px}@keyframes pulse{50%{opacity:.25}}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.conversation-pane{width:340px}.document-wrap{padding-top:38px}.document-sheet{padding:57px 64px}.tiptap{font-size:14px}.tiptap h1{font-size:42px}.scene-art{height:210px}.home-content{padding-top:70px}}
@media(max-width:1150px){.app-rail.expanded{width:195px}.home-content h1{font-size:42px}.conversation-pane{width:272px}.workspace-header{padding:0 16px}.local-label{display:none}.workspace-identity input{width:220px}.document-wrap{padding:23px 22px 40px}.document-sheet{padding:33px 30px}.inspector{width:225px}.storyboard-wrap,.project-wrap{padding:30px 26px}.toolbar-hint{display:none}.board-select-hint{display:none!important}.surface-tab{padding:0 10px}.surface-tab span{max-width:145px}.tiptap h1{font-size:31px}.scene-art{height:150px}.home-header{padding:24px}.scene-caption{padding:14px}.storyboard-grid{gap:15px}}
@media(max-width:920px){.app-rail.expanded{width:180px}.home-content{padding:28px 28px}.home-header>span{display:none}.home-header{justify-content:flex-end}.home-content h1{font-size:38px}.home-subtitle{font-size:12px}.composer-bottom>span{font-size:9px}.starter-chips{gap:6px}.starter-chips button{font-size:9px;padding:7px}.conversation-pane{width:250px}.inspector{position:absolute;right:0;top:157px;bottom:0;z-index:10;width:255px;box-shadow:-8px 0 30px var(--shadow)}.surface-tabs{padding:0 9px}.workspace-identity input{width:180px}.save-status{font-size:0}.save-status svg{width:15px}.surface-type{font-size:8px}.document-sheet{padding:29px 26px}.document-wrap{padding:17px 17px 40px}.tiptap{font-size:11px}.tiptap h1{font-size:29px}.tiptap h2{font-size:13px}.insight-card p{font-size:16px}.storyboard-grid{grid-template-columns:1fr}.scene-art{height:180px}.project-wrap{padding:27px 20px}.outline-row{gap:3px}.outline-text{font-size:11px}.surface-title-input{font-size:28px}.project-meta{gap:9px}.progress-track{width:35px}.empty-surface{padding:35px 23px}.empty-surface h2{font-size:29px}.empty-surface-options{flex-direction:column}.empty-surface-options button{justify-content:center}.empty-surface-options svg:last-child{margin-left:auto}.empty-surface-options svg:first-child{margin-right:auto}}
@media(max-width:700px){.app-rail.expanded{width:60px;padding:21px 10px}.expanded .brand{padding:0;justify-content:center}.expanded .brand-symbol{display:block}.expanded .wordmark,.expanded .rail-item span,.expanded .rail-new span,.rail-section,.rail-workspaces,.expanded .profile>div{display:none}.expanded .rail-new,.expanded .rail-item{width:39px;padding:0;justify-content:center}.expanded .profile{border:0;padding:0}.home-content{padding:26px 22px}.home-content h1{font-size:36px}.home-content>.eyebrow{font-size:8px}.home-subtitle{line-height:1.8}.home-composer{padding:14px}.home-composer textarea{font-size:12px}.home-composer .composer-bottom>span{font-size:8px;max-width:200px}.starter-chips{justify-content:flex-start}.recent-section{margin-top:39px}.section-heading>span{display:none}.workspace-cards{grid-template-columns:1fr}.workspace-card{max-width:none}.workspace-card p{margin-bottom:15px}.home-footnote{line-height:1.8}.workspace-shell .app-rail{display:none}.mobile-home{display:flex}.workspace-header{height:58px;padding:0 10px;gap:5px}.workspace-dot{display:none}.workspace-identity{gap:5px}.workspace-identity input{width:150px;font-size:11px}.header-actions{gap:5px}.add-surface-button{font-size:9px;padding:7px;gap:4px}.add-surface-button>svg:last-child{display:none}.save-status{padding:2px}.workspace-body{position:relative}.conversation-pane{display:none}.conversation-only .conversation-pane{display:flex;width:100%;min-width:0;max-width:none}.conversation-only .surface-area{display:none}.surface-tabs{height:44px;gap:0}.surface-tab{font-size:9px;padding:0 9px}.surface-tab span{max-width:110px}.surface-tab svg{width:11px}.tab-add{width:23px}.surface-toolbar{padding:0 14px;height:41px}.inspector{top:85px;width:260px}.document-wrap{padding:16px 12px 40px}.document-sheet{padding:28px 24px}.tiptap{font-size:12px}.tiptap h1{font-size:32px}.surface-title-input{font-size:31px}.storyboard-grid{grid-template-columns:1fr 1fr}.scene-art{height:145px}.storyboard-wrap{padding:27px 18px}.scene-caption{padding:13px}.scene-caption h3{font-size:11px}.scene-caption p{font-size:9px}.scene-line{font-size:12px}.board-summary{font-size:8px}.editor-formatbar{padding:0 15px}.surface-menu{right:9px;top:52px;width:290px}.project-wrap{padding:30px 22px}.outline-row-tools{opacity:1}.outline-text{font-size:11px}.outline-keyboard{gap:8px}.outline-node[style='--depth:0']{margin-bottom:14px}.modal{padding:29px}.about-grid{grid-template-columns:1fr;gap:15px}.modal h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
/* Reading contrast: keep the chrome quiet without making working text faint. */
.home-subtitle,.home-header,.home-footnote{color:var(--secondary)}.home-header{font-size:12px}.home-composer textarea::placeholder{color:var(--secondary)}.composer-bottom>span,.simulation-note{color:var(--secondary)}.starter-chips button{color:var(--secondary);font-size:11px}.section-heading>span,.workspace-card p{color:var(--secondary)}.workspace-card p{font-size:12px}.workspace-card-footer{color:var(--secondary)}.home-content>.eyebrow{color:var(--secondary)}.rail-workspace{color:var(--ink)}.surface-tab{font-size:12px;color:var(--secondary)}.surface-tab.active{color:var(--ink)}.surface-type,.toolbar-hint,.tool-button{color:var(--secondary)}.save-status{color:var(--secondary)}.message{font-size:13px;line-height:1.8}.message-text{color:var(--ink)}.message.user .message-text{color:var(--secondary)}.message-label{color:var(--secondary);font-size:11px}.suggestions button{color:var(--secondary);font-size:10px}.chat-composer textarea{font-size:12px}.simulation-note{font-size:9px}.surface-heading p{font-size:12px;color:var(--secondary)}.board-summary{color:var(--secondary)}.board-summary .board-select-hint{color:var(--secondary)}.scene-shot{color:var(--secondary);font-size:9px}.scene-caption>p{color:var(--secondary);font-size:11px}.scene-line{color:var(--secondary)}.surface-bottom-note{color:var(--secondary)}.field-label{font-size:11px;color:var(--secondary)}.field-label input,.field-label textarea{font-size:12px;color:var(--ink)}.inspector-help{font-size:11px;color:var(--secondary)}.inspector-tip p{color:var(--secondary);font-size:11px}.tiptap{font-size:14px;color:var(--ink)}.tiptap h2{font-size:16px;color:var(--ink)}.tiptap>p:first-child{color:var(--secondary);font-size:9px}.outline-text{font-size:14px;color:var(--ink)}.outline-node[style='--depth:0']>.outline-row>.outline-text{color:var(--ink)}.outline-note{font-size:11px;color:var(--secondary)}.outline-keyboard{color:var(--secondary);font-size:9px}.project-meta{color:var(--secondary);font-size:10px}.project-quote{color:var(--muted)}.empty-surface>p{color:var(--secondary)}.empty-note{color:var(--secondary)}.empty-surface-options button{color:var(--secondary)}.menu-heading,.menu-foot{color:var(--secondary)}.surface-menu small{color:var(--secondary)}.local-label{color:var(--secondary)}.surface-title-input{color:var(--ink)}.insight-card p{color:var(--ink)}.insight-eyebrow{color:var(--secondary)}.editor-formatbar{color:var(--secondary)}.outline-row.completed .outline-text{color:var(--secondary)}
@media(max-width:1150px){.tiptap{font-size:13px}.tiptap h2{font-size:15px}.outline-text{font-size:13px}.surface-tab{font-size:11px}}
@media(max-width:700px){.surface-tab{font-size:10px}.scene-caption>p{font-size:10px}.outline-text{font-size:12px}.message{font-size:13px}.field-label input,.field-label textarea{font-size:13px}.conversation-only .messages{padding:25px}.home-composer textarea{font-size:14px}}

/* Authored illustration primitives keep the storyboard self-contained. */
.art-window,.art-beans,.art-pour,.art-cup{position:relative;width:220px;height:160px}.window-frame{position:absolute;width:74px;height:95px;left:77px;top:17px;border:6px solid #a1b38c;background:linear-gradient(135deg,#f9fbeb,#d8e3c4)}.window-frame:before{content:'';position:absolute;left:50%;top:0;width:4px;height:100%;background:#a1b38c}.window-frame:after{content:'';position:absolute;left:0;top:47%;height:4px;width:100%;background:#a1b38c}.window-shadow{position:absolute;top:112px;left:66px;width:85px;height:55px;background:linear-gradient(100deg,#b3c39933,#d0ddbb00);transform:skewX(-45deg)}.plant{position:absolute;bottom:30px;right:31px;width:17px;height:22px;background:#b6bb9e;border-radius:0 0 4px 4px}.plant span{position:absolute;bottom:21px;left:8px;width:2px;height:30px;background:#a0b489;transform:rotate(-25deg)}.plant span:before{content:'';position:absolute;left:-8px;top:1px;width:10px;height:18px;border-radius:100% 0;background:#9db68a}.plant span:nth-child(2){transform:rotate(25deg);height:39px}.plant span:nth-child(3){transform:rotate(57deg);height:24px}.coffee-bag{position:absolute;left:64px;top:14px;transform:rotate(-8deg);width:90px;height:131px;background:#ddd4b9;box-shadow:9px 9px 0 #c1b99e20;border-radius:2px 2px 8px 8px;border-top:7px solid #c6bfa4;text-align:center;padding-top:17px;color:#8b8568}.coffee-bag small{font-size:14px;letter-spacing:2px;font-family:Georgia,serif}.coffee-bag span{display:block;font:italic 12px/1.4 Georgia,serif;margin:11px 0}.coffee-bag b{font-size:5px;letter-spacing:1px;font-weight:400}.bean{position:absolute;width:12px;height:19px;border-radius:50%;background:#a39270;transform:rotate(40deg);bottom:14px;right:38px}.bean:after{content:'';position:absolute;width:1px;height:15px;left:6px;top:2px;background:#d7ccb1}.b2{bottom:22px;right:25px;transform:rotate(-10deg)}.b3{bottom:10px;right:19px;transform:rotate(75deg)}.kettle{position:absolute;left:49px;top:5px;width:66px;height:49px;border-radius:12px 18px 23px 23px;background:#c3a696;transform:rotate(20deg)}.kettle:after{content:'';position:absolute;left:55px;top:8px;width:49px;height:10px;border-bottom:7px solid #c3a696;border-radius:0 0 70% 0;transform:rotate(-20deg)}.kettle:before{content:'';position:absolute;left:-17px;top:5px;border:5px solid #c3a696;width:24px;height:24px;border-radius:50%}.water{position:absolute;top:58px;left:152px;width:2px;height:26px;background:#c7b79a;transform:rotate(7deg)}.dripper{position:absolute;left:124px;top:84px;width:51px;height:37px;background:#c9bba3;clip-path:polygon(0 0,100% 0,64% 100%,36% 100%)}.pour-cup{position:absolute;left:121px;top:125px;width:57px;height:29px;background:#e5d6bd;border:1px solid #cfc1a6;border-radius:0 0 19px 19px}.saucer{position:absolute;left:53px;top:103px;width:115px;height:31px;background:#c9d1b4;border-radius:50%;transform:rotate(-8deg)}.cup-body{position:absolute;left:75px;top:65px;width:67px;height:55px;border-radius:8px 8px 25px 25px;background:#edf0df;border:1px solid #b8c2a1;transform:rotate(-8deg)}.cup-body:before{content:'';position:absolute;left:3px;top:-4px;width:59px;height:17px;border-radius:50%;background:#8b8b62;border:5px solid #edf0df}.cup-handle{position:absolute;left:134px;top:73px;width:25px;height:25px;border:6px solid #dce3cc;border-radius:50%}.steam{position:absolute;left:96px;top:27px;width:11px;height:30px;border-left:2px solid #b5c6a075;border-radius:50%;transform:rotate(10deg)}.s2{left:116px;top:20px;height:34px}.cup-caption{position:absolute;bottom:4px;left:60px;font:italic 12px Georgia,serif;color:#96a77c;transform:rotate(-7deg)}

/* Server-rendered Rails workspace library; keep link controls aligned with buttons. */
a.rail-item,a.rail-new,a.profile,a.workspace-library-card,a.secondary{ text-decoration:none; }
a.rail-item,a.rail-new{display:flex;align-items:center;justify-content:center;}
a.workspace-library-card{color:inherit;}
.workspace-view-toggle a{display:flex;align-items:center;justify-content:center;width:32px;height:30px;border-radius:5px;color:var(--muted);}
.workspace-view-toggle a svg{width:15px;height:15px;}
.workspace-view-toggle a[aria-current="true"]{background:var(--panel);color:var(--ink);}
.workspace-pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:24px;font-size:13px;}
.workspace-pagination a{color:var(--secondary);}

turbo-frame.workspace-library-content{display:block;}

/* Rails notification forms use the same feed layout and semantic colors. */
turbo-frame.notifications-content{display:block;}
.notification-filters a{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:6px;color:var(--muted);text-decoration:none;font-size:12px;}
.notification-filters a[aria-current="true"]{background:var(--panel);color:var(--ink);}
.notification-filters a span{font-size:10px;border-radius:4px;padding:2px 5px;background:var(--line);}
.notification-row>form{flex:none;}

/* Rails home links retain the authored card and expanded rail presentation. */
a.workspace-card,a.rail-workspace{text-decoration:none;color:inherit;}
.expanded a.rail-item,.expanded a.rail-new{justify-content:flex-start;}
.home-form-error{color:var(--secondary);font-size:14px;line-height:1.6;}

.assistant-status{font-size:12px;color:var(--secondary);line-height:1.5;margin:0 0 10px}.assistant-status>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.assistant-status form{margin:0}.assistant-status .text-button{padding:0;font-size:12px}.assistant-progress-dot{height:6px;width:6px;border-radius:50%;background:var(--accent);flex:none}.assistant-status .text-button svg{width:13px;height:13px}
