:root{font-family:Avenir Next,Segoe UI,Helvetica Neue,sans-serif;color:#eff3f8;background:#111315;font-synthesis:none;line-height:1.45;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#3642483d,#11131500 280px),#111315}a{color:inherit}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}#root{min-height:100vh}.app-shell{width:min(1280px,100%);min-height:100vh;margin:0 auto;padding:16px;display:grid;grid-template-rows:auto 1fr;gap:16px}.topbar{min-height:58px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;border:1px solid rgba(228,232,235,.13);border-radius:8px;padding:10px 12px;background:#141719e0}.brand-mark{color:#c2f06f;font-size:.86rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.primary-nav,.account-area{display:flex;align-items:center;gap:8px}.primary-nav{justify-content:flex-start}.account-area{justify-content:flex-end}.nav-link,.button,.inline-button{border-radius:6px;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.nav-link{padding:8px 10px;color:#b6c0c7;font-size:.92rem;text-decoration:none}.nav-link:hover,.nav-link.is-active{color:#f5f8fb;background:#ffffff14}.user-pill{color:#dce4e8;font-size:.9rem}.button{min-height:38px;border:1px solid rgba(228,232,235,.18);padding:8px 12px;display:inline-flex;align-items:center;justify-content:center;color:#f6f8f9;background:#ffffff0f;text-decoration:none}.button:hover{transform:translateY(-1px);border-color:#c2f06f80}.button.primary{border-color:#c2f06f9e;color:#0f1308;background:#c2f06f;font-weight:800}.button.secondary{color:#dce4e8;background:#4a656933}.button.ghost{color:#c9d0d6;background:transparent}.button.full-width{width:100%}.route-surface{min-width:0}.vault-page,.workspace-page,.narrow-page{display:grid;gap:16px}.narrow-page{min-height:68vh;place-items:center}.auth-page{place-items:center}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(228,232,235,.12);padding:10px 2px 18px}.page-header h1,.panel h1,.panel h2,.empty-state h3{margin:0;color:#f5f8fb;letter-spacing:0}.page-header h1{max-width:780px;font-size:clamp(2rem,5vw,4.2rem);line-height:.98}.panel h1{font-size:clamp(1.6rem,3vw,2.45rem);line-height:1.05}.panel h2{font-size:1.1rem}.empty-state h3{font-size:1.35rem}.lede{max-width:680px;margin:12px 0 0;color:#bac5c8;font-size:1rem}.eyebrow{margin:0 0 8px;color:#9bc9c4;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.subtle,.hint{color:#a5afb5}.hint{margin:0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric-tile,.panel{border:1px solid rgba(228,232,235,.13);border-radius:8px;background:#16191bdb}.metric-tile{padding:16px}.metric-tile p{margin:0 0 8px;color:#9fa9ad;font-size:.82rem}.metric-tile strong{color:#f5f8fb;font-size:2.1rem;line-height:1}.panel{padding:18px}.auth-panel{width:min(460px,100%)}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.project-list{display:grid;gap:8px}.project-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgba(228,232,235,.1);border-radius:8px;padding:14px;background:#ffffff09;text-decoration:none}.project-row:hover{border-color:#c2f06f61;background:#c2f06f11}.project-name{margin:0 0 4px;color:#f5f8fb;font-weight:800}.project-meta{margin:0;color:#a6b0b6;font-size:.9rem}.status-chip,.status{border-radius:6px}.status-chip{border:1px solid rgba(228,232,235,.12);padding:5px 8px;color:#dce4e8;font-size:.78rem;text-transform:capitalize;background:#ffffff0f}.status-chip.active{border-color:#c2f06f59;color:#dff8a6}.empty-state{min-height:220px;display:grid;place-items:center;align-content:center;gap:12px;border:1px dashed rgba(228,232,235,.18);border-radius:8px;padding:22px;text-align:center}.empty-state p{max-width:520px;margin:0;color:#aeb8bd}.form-grid{display:grid;gap:10px}.field-label{color:#d8e0e4;font-size:.88rem;font-weight:800}.text-input{width:100%;min-height:42px;border:1px solid rgba(228,232,235,.16);border-radius:6px;padding:9px 10px;color:#f5f8fb;background:#ffffff0e}.text-input:focus,.button:focus-visible,.nav-link:focus-visible,.inline-button:focus-visible{outline:2px solid #c2f06f;outline-offset:2px}.inline-button{border:0;padding:0;color:#c2f06f;background:transparent;font-weight:800}.status{margin:0;padding:10px}.status.error{border:1px solid rgba(255,112,112,.35);color:#ffd6d6;background:#681c1c3d}.status.success{border:1px solid rgba(118,209,142,.34);color:#ddffe6;background:#1a522b3d}.two-column{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:16px}.three-panel-grid{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(260px,.88fr) minmax(0,1.4fr);gap:16px}.file-panel,.viewer-panel{min-height:460px}.file-drop{position:relative;min-height:132px;border:1px dashed rgba(194,240,111,.42);border-radius:8px;padding:18px;display:grid;place-items:center;align-content:center;gap:8px;color:#dce4e8;background:#c2f06f0e}.file-drop span{color:#c2f06f;font-weight:800}.file-drop strong{max-width:100%;overflow:hidden;color:#f5f8fb;text-overflow:ellipsis;white-space:nowrap}.file-drop input{position:absolute;inset:0;opacity:0}.task-list{margin:0 0 18px;padding-left:20px;color:#c7d0d5}.task-list li+li{margin-top:8px}.code-preview{min-height:340px;margin:14px 0 0;overflow:auto;border:1px solid rgba(228,232,235,.12);border-radius:8px;padding:14px;color:#dbe8df;background:#0d0f10}code{color:#c2f06f}@media(max-width:860px){.app-shell{padding:10px}.topbar,.page-header{align-items:stretch;grid-template-columns:1fr}.topbar,.page-header,.primary-nav,.account-area{flex-direction:column}.page-header{display:grid}.metric-grid,.two-column,.three-panel-grid{grid-template-columns:1fr}.primary-nav,.account-area{align-items:stretch}.button,.nav-link{width:100%}}
