:root{--paper: #ffffff;--surface: #f7f7f8;--surface-2: #f0f0f2;--ink: #151618;--ink-2: #34363b;--muted: #777a82;--faint: #a9acb3;--line: #e7e8eb;--line-strong: #c9cbd1;--purple: #5e6ad2;--purple-soft: #eeeeff;--blue: #2583e9;--green: #67a900;--green-soft: #eaf4da;--amber: #c98200;--amber-soft: #fff2d0;--red: #c84c57;--red-soft: #fff0f1;--shadow: 0 22px 70px rgba(25, 26, 30, .14);--sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Inter, Helvetica, Arial, sans-serif;--mono: "SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{--paper: #111214;--surface: #191a1d;--surface-2: #222328;--ink: #f3f3f4;--ink-2: #d3d4d8;--muted: #9b9ea6;--faint: #696c74;--line: #303238;--line-strong: #494b53;--purple: #858de0;--purple-soft: #24263a;--blue: #5c9fe7;--green: #8abf3e;--green-soft: #24311c;--amber: #d8a23e;--amber-soft: #332b1c;--red: #dc6a74;--red-soft: #352024;--shadow: 0 24px 80px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;min-height:100%;margin:0}body{overflow-x:hidden;background:var(--paper)}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{border-radius:2px}a{color:inherit}h1,h2,h3,p,ul,ol,pre,fieldset{margin:0}ul,ol{padding:0;list-style:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--purple);outline-offset:2px}::selection{background:color-mix(in srgb,var(--purple) 25%,transparent)}.brand{display:inline-flex;align-items:center;gap:11px;min-width:0;color:var(--ink);text-decoration:none}.brand__mark{width:30px;height:30px;flex:0 0 auto;display:grid;place-items:center;background:var(--ink)}.brand__mark svg{width:24px;height:24px;fill:var(--paper)}.brand__mark .brand__vein{fill:none;stroke:var(--ink);stroke-width:1.6}.brand__copy{min-width:0}.brand__copy strong{display:block;font-size:13px;line-height:1;letter-spacing:-.02em}.brand__copy small{display:block;max-width:220px;margin-top:5px;overflow:hidden;color:var(--muted);font:650 7px/1 var(--mono);letter-spacing:.1em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.brand--compact .brand__mark{width:27px;height:27px}.eyebrow{color:var(--purple);font:750 9px/1 var(--mono);letter-spacing:.15em;text-transform:uppercase}.accent-line{height:2px;background:var(--surface-2);position:relative}.accent-line:after{content:"";display:block;width:28%;min-width:180px;height:100%;background:var(--purple)}.plain-button,.primary-button,.secondary-button,.danger-button,.compile-button{min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;padding:0 13px;cursor:pointer;font-size:11px;font-weight:700;white-space:nowrap}.plain-button{min-height:30px;padding-inline:3px;background:transparent;color:var(--muted)}.plain-button:hover{color:var(--ink)}.plain-button--icon{gap:5px;font-family:var(--mono);font-size:9px}.primary-button{background:var(--ink);color:var(--paper)}.primary-button:hover{opacity:.86}.primary-button--wide{width:100%;min-height:42px;justify-content:space-between;padding-inline:16px}.secondary-button{border:1px solid var(--line-strong);background:var(--paper);color:var(--ink-2)}.secondary-button:hover{border-color:var(--ink)}.danger-button{border:1px solid color-mix(in srgb,var(--red) 45%,var(--line));background:transparent;color:var(--red)}.compile-button{min-width:96px;background:var(--ink);color:var(--paper)}button:disabled{cursor:default;opacity:.42}.icon-button{width:32px;height:32px;flex:0 0 auto;display:inline-grid;place-items:center;border:0;background:transparent;color:var(--muted);cursor:pointer}.icon-button:hover{background:var(--surface);color:var(--ink)}.icon-button--danger:hover{background:var(--red-soft);color:var(--red)}.theme-control{height:30px;display:inline-flex;align-items:center;border:1px solid var(--line);background:var(--paper)}.theme-control button{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:0;background:transparent;color:var(--faint);cursor:pointer}.theme-control button+button{border-left:1px solid var(--line)}.theme-control button:hover{color:var(--ink)}.theme-control button.is-active{background:var(--ink);color:var(--paper)}.field{min-width:0;display:grid;gap:8px}.field>span,fieldset>legend{color:var(--muted);font:700 8px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.field input,.field select{width:100%;height:39px;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;outline:0;background:transparent;color:var(--ink);font-size:13px}.field input:focus,.field select:focus{border-bottom-color:var(--purple);box-shadow:0 1px 0 var(--purple)}.field input::placeholder{color:var(--faint)}.field-help,.dialog-copy{color:var(--muted);font-size:11px;line-height:1.55}.stack-form{display:grid;gap:24px}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding-top:8px}.form-actions__spacer{flex:1}.inline-form{display:grid;grid-template-columns:minmax(160px,1fr) 140px auto;gap:18px;align-items:end;padding:25px 0;border-block:1px solid var(--line)}.inline-form--agent{grid-template-columns:1fr auto;border-top-color:var(--ink)}.vertical-actions{display:grid;gap:8px}.vertical-actions>button{justify-content:flex-start}.inline-message{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-left:2px solid;font-size:11px;line-height:1.45}.inline-message--error{border-color:var(--red);background:var(--red-soft);color:var(--red)}.inline-message--success{border-color:var(--green);background:var(--green-soft);color:var(--green)}.loading-block{min-height:86px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font:680 9px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:transparent;color:var(--ink)}.modal::backdrop{background:color-mix(in srgb,var(--ink) 24%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal__surface{position:absolute;top:50%;left:50%;width:min(92vw,620px);max-height:min(88dvh,780px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;transform:translate(-50%,-50%);border:1px solid var(--ink);background:var(--paper);box-shadow:var(--shadow)}.modal--small .modal__surface{width:min(92vw,430px)}.modal--large .modal__surface{width:min(94vw,820px)}.modal__header{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 24px;border-bottom:1px solid var(--line)}.modal__header h2{margin-top:9px;font-size:25px;line-height:1;letter-spacing:-.035em}.modal__body{min-height:0;overflow:auto;padding:28px 24px 30px}.template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;border:0}.template-grid legend{grid-column:1 / -1;margin-bottom:3px}.template-card{position:relative;min-height:128px;display:flex;flex-direction:column;padding:18px;border:1px solid var(--line);cursor:pointer}.template-card:hover,.template-card.is-selected{border-color:var(--ink)}.template-card.is-selected{box-shadow:inset 0 -2px var(--purple)}.template-card input{position:absolute;opacity:0;pointer-events:none}.template-card__check{position:absolute;top:12px;right:12px;width:18px;height:18px;display:grid;place-items:center;border:1px solid var(--line);color:var(--purple)}.template-card strong{font-size:17px;letter-spacing:-.02em}.template-card small{margin-top:9px;color:var(--muted);font-size:11px;line-height:1.45}.template-card code{margin-top:auto;padding-top:12px;color:var(--faint);font:650 8px/1 var(--mono)}.rule-list{border-top:1px solid var(--ink)}.rule-row{min-height:64px;display:grid;grid-template-columns:28px minmax(0,1fr) auto 32px;gap:14px;align-items:center;border-bottom:1px solid var(--line)}.rule-row>svg{color:var(--purple)}.rule-row strong,.rule-row small{display:block}.rule-row strong{font-size:12px}.rule-row small{margin-top:5px;color:var(--muted);font-size:9px}.empty-row{padding:28px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.status-label{color:var(--muted);font:720 8px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}.status-label--active{color:var(--green)}.compact-select{height:30px;border:0;border-bottom:1px solid var(--line-strong);border-radius:0;background:transparent;color:var(--ink);font-size:10px}.avatar{width:27px;height:27px;display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font:750 8px/1 var(--mono)}.dialog-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:22px}.dialog-intro p{max-width:570px;color:var(--muted);font-size:12px;line-height:1.55}.secret-card,.credential-card{margin:20px 0 26px;padding:18px;border:1px solid var(--ink);background:var(--surface)}.secret-card__label,.credential-card>header{display:flex;align-items:center;gap:8px;color:var(--purple);font:720 9px/1.4 var(--mono);text-transform:uppercase}.secret-card>code{display:block;margin:15px 0 4px;overflow-wrap:anywhere;font:11px/1.55 var(--mono)}.secret-card>small{display:block;margin-top:10px;color:var(--muted);font-size:9px}.credential-card{background:var(--purple-soft)}.credential-card>header{margin-bottom:18px;color:var(--ink)}.credential-card>a{display:inline-block;margin-top:16px;color:var(--purple);font-size:10px;font-weight:700}.credential-line{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid color-mix(in srgb,var(--purple) 18%,var(--line))}.credential-line>span{color:var(--muted);font:700 8px/1 var(--mono);text-transform:uppercase}.credential-line code{overflow:auto;color:var(--ink-2);font:10px/1.45 var(--mono);white-space:nowrap}.credential-secret{color:var(--purple)!important}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;padding-top:24px;border-top:1px solid var(--red)}.danger-zone strong,.danger-zone span{display:block}.danger-zone strong{color:var(--red);font-size:12px}.danger-zone span{margin-top:5px;color:var(--muted);font-size:10px}.boot-screen,.offline-screen,.workspace-loading{width:100vw;min-height:100dvh;display:grid;place-items:center;align-content:center;gap:34px;padding:30px}.offline-card{width:min(100%,560px);padding-top:34px;border-top:3px solid var(--ink)}.offline-card>svg{margin-bottom:32px;color:var(--muted)}.offline-card h1{margin-top:15px;font-size:clamp(42px,7vw,74px);line-height:.92;letter-spacing:-.06em}.offline-card p{max-width:460px;margin:25px 0 32px;color:var(--muted);font-size:16px;line-height:1.55}.auth-shell{width:100%;min-height:100dvh;display:grid;grid-template-rows:78px 2px 1fr auto}.auth-head{display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,60px);border-bottom:1px solid var(--line)}.auth-main{width:100%;max-width:1440px;min-height:calc(100dvh - 122px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(350px,.75fr);gap:clamp(60px,10vw,150px);align-items:center;padding:clamp(60px,8vw,120px) clamp(26px,7vw,112px)}.auth-story h1{max-width:850px;margin-top:22px;font-size:clamp(56px,7.2vw,108px);font-weight:610;line-height:.87;letter-spacing:-.068em}.auth-story>p{max-width:650px;margin-top:30px;color:var(--muted);font-size:clamp(17px,1.7vw,24px);line-height:1.5}.auth-proof{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--ink)}.auth-proof span{padding:18px 15px 0 0;color:var(--muted);font-size:10px}.auth-proof span+span{padding-left:15px;border-left:1px solid var(--line)}.auth-proof b{margin-right:9px;color:var(--purple);font:720 9px/1 var(--mono)}.auth-panel{padding-top:24px;border-top:3px solid var(--purple)}.auth-panel__label{display:flex;align-items:center;gap:8px;color:var(--purple);font:750 8px/1 var(--mono);letter-spacing:.12em}.auth-panel h2{margin-top:25px;font-size:clamp(34px,4vw,52px);line-height:.96;letter-spacing:-.05em}.auth-panel>p{margin-top:14px;color:var(--muted);font-size:13px;line-height:1.55}.auth-form{display:grid;gap:21px;margin-top:34px}.auth-switch{margin-top:24px;color:var(--muted);font-size:11px}.auth-switch a{color:var(--ink);font-weight:700;text-underline-offset:3px}.setup-note{display:grid;gap:6px;margin-top:20px;padding:14px;border-left:2px solid var(--amber);background:var(--amber-soft);font-size:10px;line-height:1.5}.setup-note span{color:var(--muted)}.setup-note code{font-family:var(--mono)}.auth-footer,.dashboard-footer{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 clamp(22px,4vw,60px);border-top:1px solid var(--line);color:var(--faint);font:650 7px/1.3 var(--mono);letter-spacing:.08em}.dashboard-shell{min-height:100dvh;display:grid;grid-template-rows:78px 2px 1fr auto}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:0 clamp(22px,4vw,60px);border-bottom:1px solid var(--line)}.dashboard-head__actions{display:flex;align-items:center;gap:17px}.user-chip{min-width:90px}.user-chip b,.user-chip small{display:block}.user-chip b{overflow:hidden;font-size:11px;text-overflow:ellipsis}.user-chip small{margin-top:4px;color:var(--muted);font:680 7px/1 var(--mono);letter-spacing:.1em}.dashboard-main{width:100%;max-width:1440px;margin:0 auto;padding:clamp(60px,7vw,105px) clamp(26px,7vw,112px) 110px}.dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.dashboard-intro h1{margin-top:18px;font-size:clamp(52px,7vw,96px);font-weight:610;line-height:.88;letter-spacing:-.065em}.dashboard-intro p{max-width:670px;margin-top:25px;color:var(--muted);font-size:clamp(15px,1.5vw,20px);line-height:1.5}.dashboard-intro__actions{display:flex;gap:10px;padding-bottom:5px}.project-section{margin-top:clamp(65px,8vw,110px)}.project-section>header{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;border-bottom:1px solid var(--ink)}.project-section h2{font-size:15px;letter-spacing:-.02em}.project-section>header span{color:var(--muted);font:700 9px/1 var(--mono)}.project-list{border-bottom:1px solid var(--line)}.project-row{width:100%;min-height:92px;display:grid;grid-template-columns:45px minmax(220px,1.5fr) repeat(3,minmax(80px,.55fr)) minmax(110px,.65fr) 25px;gap:24px;align-items:center;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.project-row:last-child{border-bottom:0}.project-row:hover{background:var(--surface)}.project-row__number{color:var(--purple);font:720 10px/1 var(--mono)}.project-row__main strong,.project-row__main small,.project-row__meta small,.project-row__meta b{display:block}.project-row__main strong{overflow:hidden;font-size:19px;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.project-row__main small{margin-top:7px;color:var(--muted);font:650 8px/1 var(--mono)}.project-row__meta small{color:var(--faint);font:680 7px/1 var(--mono);letter-spacing:.08em}.project-row__meta b{margin-top:7px;overflow:hidden;font-size:10px;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.project-row__arrow{color:var(--faint);transition:transform .15s}.project-row:hover .project-row__arrow{color:var(--ink);transform:translate(3px)}.compile-chip{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font:700 8px/1 var(--mono);text-transform:uppercase}.compile-chip i,.compile-state i,.status-dot{width:6px;height:6px;background:var(--faint)}.compile-chip--succeeded i,.compile-state--succeeded i{background:var(--green)}.compile-chip--failed i,.compile-state--failed i{background:var(--red)}.compile-chip--queued i,.compile-chip--compiling i,.compile-state--queued i,.compile-state--compiling i,.status-dot--working{background:var(--purple);animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}.dashboard-empty{min-height:300px;display:grid;place-items:center;align-content:center;text-align:center}.dashboard-empty>svg{margin-bottom:22px;color:var(--faint)}.dashboard-empty h3{font-size:27px;letter-spacing:-.035em}.dashboard-empty p{margin-top:10px;color:var(--muted);font-size:12px}.dashboard-empty button{margin-top:22px}.workspace-shell{width:100vw;height:100dvh;display:grid;grid-template-rows:62px 2px minmax(0,1fr) 30px;overflow:hidden;background:var(--paper)}.workspace-head{min-width:0;display:flex;align-items:center;gap:13px;padding:0 13px;border-bottom:1px solid var(--line)}.workspace-back{margin-right:-4px}.workspace-head .brand{display:none}.project-crumb{min-width:130px;max-width:250px;padding-left:13px;border-left:1px solid var(--line)}.project-crumb span,.project-crumb small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-crumb span{font-size:12px;font-weight:700}.project-crumb small{margin-top:4px;color:var(--muted);font:650 7px/1 var(--mono);letter-spacing:.06em}.workspace-actions{min-width:0;margin-left:auto;display:flex;align-items:center;gap:10px}.presence-stack{display:flex;align-items:center;padding-left:8px}.presence-avatar,.presence-more{width:25px;height:25px;display:grid;place-items:center;margin-left:-7px;border:2px solid var(--paper);background:var(--person-color, var(--surface-2));color:#fff;font:750 7px/1 var(--mono)}.presence-more{background:var(--surface-2);color:var(--muted)}.live-activity{min-width:0;max-width:240px;display:flex;align-items:center;gap:6px;overflow:hidden;color:var(--purple);font:680 8px/1 var(--mono);text-overflow:ellipsis;white-space:nowrap}.compile-progress{height:2px;background:var(--surface-2);overflow:hidden}.compile-progress i{display:block;width:0;height:100%;background:var(--purple)}.compile-progress--queued i,.compile-progress--compiling i{width:38%;animation:compile-line 1.2s ease-in-out infinite}.compile-progress--succeeded i{width:100%;background:var(--green);animation:fade-line 1.4s forwards}.compile-progress--failed i{width:100%;background:var(--red)}@keyframes compile-line{0%{transform:translate(-110%)}to{transform:translate(300%)}}@keyframes fade-line{70%{opacity:1}to{opacity:0}}.workspace-body{position:relative;min-height:0;display:flex;overflow:hidden}.workspace-tree-wrap{width:232px;flex:0 0 232px;min-height:0;border-right:1px solid var(--line);transition:width .18s,flex-basis .18s}.workspace-tree-wrap.is-collapsed{width:0;flex-basis:0;overflow:hidden;border:0}.tree-toggle{position:absolute;z-index:8;left:232px;top:8px;width:26px;height:27px;display:grid;place-items:center;transform:translate(-100%);border:0;background:var(--paper);color:var(--muted);cursor:pointer}.workspace-tree-wrap.is-collapsed+.editor-pdf{margin-left:0}.workspace-tree-wrap.is-collapsed~.tree-toggle,.workspace-body:has(.workspace-tree-wrap.is-collapsed) .tree-toggle{left:27px;transform:none;border:1px solid var(--line)}.editor-pdf{min-width:0;flex:1;display:flex}.editor-wrap{width:var(--editor-percent);min-width:260px;min-height:0;overflow:hidden}.pdf-wrap{width:calc(100% - var(--editor-percent));min-width:280px;min-height:0;overflow:hidden}.split-handle{position:relative;width:5px;flex:0 0 5px;background:var(--line);cursor:col-resize;touch-action:none}.split-handle:after{content:"";position:absolute;inset:0 -3px}.split-handle:hover{background:var(--purple)}.workspace-status{min-width:0;display:flex;align-items:center;gap:18px;padding:0 13px;border-top:1px solid var(--line);color:var(--muted);font:650 8px/1 var(--mono)}.workspace-status__spacer{flex:1}.compile-state{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-transform:uppercase}.mobile-tabs{display:none}.workspace-shell>.inline-message{position:fixed;z-index:60;right:16px;bottom:42px;max-width:420px;box-shadow:var(--shadow)}.file-tree{height:100%;min-width:232px;display:grid;grid-template-rows:44px minmax(0,1fr);background:var(--paper)}.file-tree__head{display:flex;align-items:center;justify-content:space-between;padding:0 8px 0 13px;border-bottom:1px solid var(--line)}.file-tree__head>span{color:var(--muted);font:720 8px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}.file-tree__head b{margin-left:6px;color:var(--faint)}.file-tree__head>div{display:flex}.file-tree__scroll{min-height:0;overflow:auto;padding:10px 7px 60px}.tree-file{min-width:0;height:30px;display:flex;align-items:center;padding-left:calc(var(--depth) * 14px);border-left:2px solid transparent}.tree-file.is-active{border-left-color:var(--purple);background:var(--surface)}.tree-file__select{min-width:0;height:100%;flex:1;display:flex;align-items:center;gap:7px;overflow:hidden;padding:0 5px;border:0;background:transparent;color:var(--muted);cursor:pointer;text-align:left}.tree-file__select:hover,.tree-file.is-active .tree-file__select{color:var(--ink)}.tree-file__select span{min-width:0;overflow:hidden;font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.tree-file__select i{margin-left:auto;color:var(--purple);font:720 6px/1 var(--mono);font-style:normal}.tree-file__menu{width:24px;height:24px;display:grid;place-items:center;opacity:0;border:0;background:transparent;color:var(--muted);cursor:pointer}.tree-file:hover .tree-file__menu,.tree-file__menu:focus-visible{opacity:1}.tree-folder__row{width:100%;height:29px;display:flex;align-items:center;gap:5px;padding:0 5px 0 calc(5px + var(--depth) * 14px);border:0;background:transparent;color:var(--muted);cursor:pointer;text-align:left}.tree-folder__row:hover{color:var(--ink)}.tree-folder__row span{overflow:hidden;font-size:9px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.tree-empty{padding:25px 10px;color:var(--muted);font-size:10px}.editor-pane{height:100%;display:grid;grid-template-rows:44px minmax(0,1fr)}.pane-label{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 14px;border-bottom:1px solid var(--line);color:var(--muted);font:650 8px/1 var(--mono)}.pane-label>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connection{display:inline-flex;align-items:center;gap:6px;text-transform:uppercase}.connection:before{content:"";width:5px;height:5px;background:var(--faint)}.connection--connected:before{background:var(--green)}.connection--connecting:before,.connection--synchronizing:before{background:var(--amber)}.editor-mount{min-height:0;overflow:hidden}.editor-mount>.cm-editor{height:100%}.editor-empty{height:100%;display:grid;place-items:center;padding:30px;color:var(--muted);font-size:12px;text-align:center}.pdf-viewer{position:relative;width:100%;height:100%;display:grid;grid-template-rows:44px minmax(0,1fr);background:var(--surface-2)}.pdf-toolbar{min-width:0;display:flex;align-items:center;gap:4px;padding:0 8px 0 13px;border-bottom:1px solid var(--line);background:var(--paper)}.pane-title{margin-right:12px;color:var(--muted);font:720 8px/1 var(--mono);letter-spacing:.09em;text-transform:uppercase}.pdf-toolbar__group{display:flex;align-items:center}.pdf-toolbar__spacer{flex:1}.pdf-readout{min-width:48px;text-align:center;color:var(--muted);font:680 8px/1 var(--mono)}.pdf-scroll{position:relative;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-color:var(--line-strong) transparent}.pdf-pages{min-width:max-content;display:grid;gap:18px;justify-content:center;padding:26px 32px 80px}.pdf-page{position:relative;background:#fff;box-shadow:0 2px 10px #0000001f}.pdf-page canvas{display:block}.pdf-source-highlight{position:absolute;z-index:2;pointer-events:none;border:1px solid rgba(94,106,210,.58);border-left-width:3px;border-radius:2px;background:#5e6ad233;box-shadow:0 0 0 2px #5e6ad214}.pdf-empty{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.pdf-empty strong{color:var(--ink-2);font-size:15px}.pdf-empty span{font-size:10px}.pdf-empty--error strong{color:var(--red)}.pdf-loading{position:sticky;z-index:3;top:10px;width:max-content;display:flex;align-items:center;gap:8px;margin:10px auto -38px;padding:8px 10px;border:1px solid var(--line);background:var(--paper);color:var(--muted);font:680 8px/1 var(--mono);box-shadow:0 3px 15px #00000014}.pdf-focus-back{position:fixed;z-index:102;top:12px;left:50%;min-height:34px;display:inline-flex;align-items:center;gap:8px;transform:translate(-50%);border:1px solid var(--line-strong);background:color-mix(in srgb,var(--paper) 92%,transparent);color:var(--ink);box-shadow:var(--shadow);cursor:pointer;font-size:10px;font-weight:700;opacity:.3;transition:opacity .15s}.pdf-focus-back:hover,.pdf-focus-back:focus-visible{opacity:1}.pdf-focus-back kbd{padding-left:8px;border-left:1px solid var(--line);color:var(--muted);font:650 8px/1 var(--mono)}.pdf-viewer--focus{position:fixed;z-index:100;inset:0;width:100vw;height:100dvh;grid-template-rows:0 minmax(0,1fr)}.pdf-viewer--focus .pdf-toolbar{visibility:hidden}.pdf-viewer--focus .pdf-pages{padding-top:35px}.drawer{position:fixed;z-index:45;top:64px;right:0;bottom:30px;width:min(430px,94vw);display:grid;grid-template-rows:auto minmax(0,1fr);transform:translate(102%);border-left:1px solid var(--ink);background:var(--paper);box-shadow:var(--shadow);transition:transform .2s ease}.drawer.is-open{transform:translate(0)}.drawer>header{min-height:79px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px;border-bottom:1px solid var(--line)}.drawer>header h2{max-width:330px;margin-top:8px;overflow:hidden;font-size:17px;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap}.revision-list{overflow:auto;padding:0 17px 60px}.revision-list>button{width:100%;min-height:65px;display:grid;grid-template-columns:29px 1fr 20px;gap:12px;align-items:center;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);text-align:left;cursor:pointer}.revision-list>button:hover{background:var(--surface)}.revision-list strong,.revision-list small{display:block}.revision-list strong{font-size:11px}.revision-list small{margin-top:5px;color:var(--muted);font-size:9px}.revision-list>button>svg{color:var(--faint)}.actor-mark{width:27px;height:27px;display:grid;place-items:center;background:var(--surface-2);color:var(--muted)}.actor-mark--agent{background:var(--purple-soft);color:var(--purple)}.revision-preview{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:15px;padding:17px;overflow:hidden}.revision-preview__meta{padding-top:12px;border-top:1px solid var(--line)}.revision-preview__meta strong,.revision-preview__meta span{display:block}.revision-preview__meta span{margin-top:5px;color:var(--muted);font-size:9px}.revision-preview pre,.log-drawer pre{min-height:0;overflow:auto;margin:0;padding:15px;border:1px solid var(--line);background:var(--surface);color:var(--ink-2);font:10px/1.6 var(--mono);white-space:pre-wrap}.log-drawer{grid-template-rows:auto auto minmax(0,1fr)}.log-drawer>.inline-message{margin:14px 17px 0}.log-drawer>pre{margin:17px}@media(max-width:1180px){.workspace-action-text{width:32px;overflow:hidden;padding:0;font-size:0}.workspace-action-text svg{width:15px;height:15px}.live-activity{display:none}.project-row{grid-template-columns:38px minmax(190px,1.4fr) repeat(2,minmax(80px,.55fr)) minmax(110px,.65fr) 24px}.project-row__meta:nth-of-type(4){display:none}}@media(max-width:1050px){.auth-main{grid-template-columns:1fr;align-content:start}.auth-story{padding-top:20px}.auth-panel{width:min(100%,520px)}.workspace-head{height:62px}.workspace-head .brand{display:inline-flex}.workspace-head .brand__copy{display:none}.project-crumb{max-width:180px}.workspace-tree-wrap{position:absolute;z-index:20;inset:0 auto 0 0;width:245px;flex-basis:245px;box-shadow:var(--shadow)}.workspace-tree-wrap.is-collapsed{width:0}.tree-toggle{z-index:21;left:245px}.editor-pdf{width:100%}.workspace-body:has(.workspace-tree-wrap.is-collapsed) .tree-toggle{left:7px;top:8px}.project-row{grid-template-columns:35px minmax(180px,1fr) minmax(80px,.5fr) minmax(105px,.6fr) 24px}.project-row__meta:nth-of-type(3){display:none}.dashboard-intro{align-items:flex-start;flex-direction:column}}@media(max-width:720px){.plain-button,.primary-button,.secondary-button,.danger-button,.compile-button{min-height:44px}.icon-button{width:44px;height:44px}.theme-control{height:44px}.theme-control button{width:42px;height:42px}.auth-shell,.dashboard-shell{grid-template-rows:66px 2px 1fr auto}.auth-head,.dashboard-head{padding-inline:16px}.auth-head .brand__copy small,.dashboard-head .brand__copy small{display:none}.auth-main{min-height:0;gap:65px;padding:58px 22px 80px}.auth-story h1{font-size:49px}.auth-story>p{font-size:17px}.auth-proof{grid-template-columns:1fr}.auth-proof span,.auth-proof span+span{padding:13px 0;border-left:0;border-bottom:1px solid var(--line)}.auth-footer,.dashboard-head__actions .plain-button,.dashboard-head__actions .user-chip{display:none}.dashboard-head__actions{gap:5px}.dashboard-main{padding:60px 22px 90px}.dashboard-intro h1{font-size:52px}.dashboard-intro__actions{width:100%}.dashboard-intro__actions button{flex:1}.project-section{margin-top:70px}.project-row{min-height:104px;grid-template-columns:29px minmax(0,1fr) 20px;gap:12px}.project-row__meta,.compile-chip{display:none}.project-row__main strong{font-size:17px}.dashboard-footer{padding-inline:22px}.dashboard-footer span{display:none}.modal__surface{inset:0;width:100%!important;height:100dvh;max-height:none;transform:none;border:0}.modal__header{min-height:70px;padding-inline:18px}.modal__body{padding:24px 18px 50px}.template-grid,.inline-form{grid-template-columns:1fr}.form-actions{flex-wrap:wrap}.dialog-intro{align-items:flex-start;flex-direction:column}.credential-line{grid-template-columns:1fr auto}.credential-line>span{grid-column:1 / -1}.workspace-shell{grid-template-rows:56px 2px 46px minmax(0,1fr) 30px}.workspace-head{height:56px;gap:3px;padding-inline:6px}.workspace-head .project-crumb,.workspace-head .presence-stack,.workspace-head .theme-control,.workspace-head .workspace-back,.workspace-head .workspace-action-text,.workspace-head .workspace-actions>.icon-button{display:none}.workspace-head .brand{margin-left:5px}.workspace-actions{gap:4px}.compile-button{min-width:90px;height:38px;min-height:38px}.mobile-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}.mobile-tabs button{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:0;background:var(--paper);color:var(--muted);font-size:9px;font-weight:700}.mobile-tabs button[aria-selected=true]{color:var(--ink)}.mobile-tabs button[aria-selected=true]:after{content:"";position:absolute;right:20%;bottom:-1px;left:20%;height:2px;background:var(--purple)}.workspace-body{display:block}.workspace-tree-wrap{position:absolute;inset:0;z-index:2;width:100%;box-shadow:none;border:0}.file-tree{min-width:0}.tree-toggle,.split-handle{display:none}.editor-pdf{width:100%;height:100%;display:block}.editor-wrap,.pdf-wrap{width:100%;height:100%;min-width:0}.workspace-shell[data-mobile-pane=files] .editor-pdf,.workspace-shell:not([data-mobile-pane=files]) .workspace-tree-wrap{display:none}.workspace-shell[data-mobile-pane=editor] .pdf-wrap,.workspace-shell[data-mobile-pane=pdf] .editor-wrap{display:none}.workspace-tree-wrap.is-collapsed{display:block;width:100%}.workspace-status{padding-inline:9px}.workspace-status>span:not(.workspace-status__spacer){display:none}.drawer{top:104px;bottom:30px;width:100%;border-left:0}.pdf-toolbar{padding-left:8px}.pane-title{display:none}.pdf-pages{padding:18px 16px 70px}.workspace-shell>.inline-message{right:10px;bottom:38px;left:10px}}@media(max-width:390px){.brand__mark{width:28px;height:28px}.dashboard-head__actions .user-chip{display:none}.dashboard-intro__actions{flex-direction:column}.auth-story h1{font-size:44px}.pdf-toolbar .icon-button{width:34px;height:40px}.pdf-toolbar .pdf-readout{min-width:38px}.rule-row{grid-template-columns:27px minmax(0,1fr) auto}.rule-row>.icon-button{grid-column:3}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.user-chip{padding:0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.user-chip:hover b{color:var(--purple)}@media(max-width:720px){.dashboard-head__actions .admin-invites-button{width:44px;display:inline-grid;place-items:center;padding:0}.dashboard-head__actions .admin-invites-button span{display:none}.dashboard-head__actions .user-chip{width:44px;height:44px;display:grid;place-items:center;background:var(--surface);text-align:center}.dashboard-head__actions .user-chip small{display:none}.dashboard-head__actions .user-chip b{max-width:38px;font-size:8px}}.mobile-more-button{display:none}.mobile-action-list{border-top:1px solid var(--ink)}.mobile-action-list>button,.mobile-theme-row{width:100%;min-height:68px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:12px;align-items:center;padding:0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);text-align:left}.mobile-action-list>button{cursor:pointer}.mobile-action-list>button:hover{background:var(--surface)}.mobile-action-list>button>svg{color:var(--purple)}.mobile-action-list strong,.mobile-action-list small{display:block}.mobile-action-list strong{font-size:12px}.mobile-action-list small{margin-top:5px;color:var(--muted);font-size:9px}.mobile-theme-row{grid-template-columns:minmax(0,1fr) auto}.mobile-logout-action{color:var(--red)!important}@media(max-width:720px){.workspace-head .workspace-actions>.mobile-more-button{display:inline-grid}.workspace-head .workspace-actions>.desktop-logout{display:none}}.pdf-loading{position:absolute;left:50%;top:10px;margin:0;transform:translate(-50%)}@media(any-pointer:coarse){html,body,#root{height:100%;min-height:0;overflow:hidden;overscroll-behavior:none}body{position:fixed;inset:0;touch-action:none;-webkit-text-size-adjust:100%}.auth-shell,.dashboard-shell{height:100%;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.modal__body,.file-tree__scroll,.editor-mount .cm-scroller,.pdf-scroll,.revision-list,.revision-preview pre,.log-drawer pre,.credential-line code{overscroll-behavior:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}}
