@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-grotesk-variable.ttf) format("truetype");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-variable.ttf) format("truetype");font-style:normal;font-weight:300 700;font-display:swap}:root{color-scheme:dark;--bg:#0d1b2a;--panel:#1b263b;--panel-strong:#202d45;--panel-soft:rgba(119,141,169,0.09);--mid:#415a77;--accent:#778da9;--accent-strong:#aabbd0;--text:#e0e1dd;--muted:#9aacc2;--line:rgba(119,141,169,0.24);--line-strong:rgba(141,162,187,0.46);--success:#9fd5bd;--warning:#f0ca8b;--danger:#ffc9c2;--danger-bg:#402b35;--radius-sm:8px;--radius:12px;--radius-lg:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--shadow:0 18px 50px rgba(3,10,20,0.22)}*{box-sizing:border-box}html{min-width:320px;background:var(--bg);color:var(--text);font-family:Hanken Grotesk,ui-sans-serif,system-ui,sans-serif}body{min-height:100vh;margin:0;background:radial-gradient(circle at 95% -5%,rgba(65,90,119,.16),transparent 28rem),var(--bg)}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit}a,button,input,select,textarea{outline:none}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}::selection{color:var(--bg);background:var(--accent-strong)}.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}h1,h2,h3,p{margin-top:0}.brand,h1,h2{font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.025em}b,h1,h2,h3,p,small,span,strong{overflow-wrap:anywhere}.app-shell{width:min(1120px,calc(100% - 40px));min-width:0;margin:0 auto;padding-bottom:64px}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);border-bottom:1px solid var(--line)}.brand{min-width:0;display:inline-flex;align-items:center;gap:10px;color:var(--text);font-size:19px;font-weight:700;line-height:1;text-decoration:none}.brand-mark{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;color:var(--text);background:var(--mid);border:1px solid rgba(170,187,208,.22);border-radius:9px;font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;font-size:15px;font-weight:700}.quiet-link{flex:0 0 auto;color:var(--muted);font-size:13px;text-underline-offset:4px;-webkit-text-decoration-color:transparent;text-decoration-color:transparent;transition:color .16s ease,-webkit-text-decoration-color .16s ease;transition:color .16s ease,text-decoration-color .16s ease;transition:color .16s ease,text-decoration-color .16s ease,-webkit-text-decoration-color .16s ease}.quiet-link:hover{color:var(--text);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.eyebrow,.preview-kicker,.section-kicker{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}.page-heading,.project-heading{min-width:0;display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6);padding:34px 0 26px}.page-heading>div,.project-heading>div{min-width:0}.page-heading h1,.project-heading h1{margin:0 0 7px;color:var(--text);font-size:clamp(28px,3vw,34px);line-height:1.08}.page-heading p,.project-heading p{max-width:660px;margin:0;color:var(--muted);font-size:14px;line-height:1.55}.panel{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.button,.panel{color:var(--text);background:var(--panel)}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:9px 16px;border:1px solid var(--line-strong);border-radius:9px;cursor:pointer;font-size:13px;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.button:hover:not(:disabled){transform:translateY(-1px);background:var(--panel-strong);border-color:var(--accent);box-shadow:0 8px 22px rgba(3,10,20,.22)}.button:disabled{cursor:wait;opacity:.52}.button-primary{color:var(--bg);background:var(--accent);border-color:var(--accent)}.button-primary:hover:not(:disabled){color:var(--bg);background:var(--accent-strong);border-color:var(--accent-strong)}.button-danger{color:var(--bg);background:var(--danger);border-color:var(--danger)}.button-large{min-height:48px;padding:12px 22px;font-size:14px}.button-small{min-height:34px;padding:7px 11px;font-size:12px}.button-ghost{background:transparent}label{min-width:0;display:grid;grid-gap:7px;gap:7px;color:var(--text);font-size:13px;font-weight:700}.field-help,.optional{color:var(--muted);font-weight:500}.optional{margin-left:4px}.field-help{margin-top:-6px;font-size:12px}input,select,textarea{width:100%;min-width:0;padding:10px 11px;color:var(--text);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);font-weight:400}input::placeholder,textarea::placeholder{color:#71849c;opacity:1}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(141,162,187,.18)}textarea{resize:vertical}fieldset:disabled{opacity:.62}.notice{padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.45}.auth-error,.notice-error{color:#ffd9d4;background:var(--danger-bg);border:1px solid #86565d}.auth-success{color:#d7f2e4;background:rgba(83,133,109,.2);border:1px solid rgba(159,213,189,.4)}.create-panel{display:grid;grid-template-columns:1fr 1fr;align-items:start;grid-gap:18px;gap:18px;margin-bottom:24px;padding:22px}.create-panel .notice,.form-actions,.form-heading{grid-column:1/-1}.form-heading h2{margin-bottom:4px;font-size:21px}.form-heading p{margin:0;color:var(--muted);font-size:13px}.form-actions{display:flex;justify-content:flex-end}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.project-card{min-width:0;min-height:250px;display:flex;flex-direction:column;padding:20px;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 7px 25px rgba(3,10,20,.13);text-decoration:none;transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.project-card:hover{transform:translateY(-2px);background:var(--panel-strong);border-color:var(--line-strong);box-shadow:var(--shadow)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.card-arrow{color:var(--muted);font-size:18px}.status-pill,.waiting-pill{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.status-active{color:#d3e0ee;background:rgba(119,141,169,.14)}.status-paused,.waiting-pill{color:var(--warning);background:rgba(171,123,56,.14);border-color:rgba(240,202,139,.28)}.status-completed{color:var(--success);background:rgba(83,133,109,.14);border-color:rgba(159,213,189,.25)}.project-card h2{margin:0 0 7px;font-size:20px;line-height:1.25}.project-card>p{flex:1 1;margin-bottom:14px;color:var(--muted);font-size:13px;line-height:1.5}.progress-row{display:flex;justify-content:space-between;gap:15px;margin:13px 0 7px;color:var(--muted);font-size:11px}.progress-row strong{flex:0 0 auto;color:var(--text)}.progress{height:5px;overflow:hidden;background:rgba(119,141,169,.18);border-radius:999px}.progress i,.progress span{height:100%;display:block;background:var(--accent);border-radius:inherit}.current-step{display:grid;grid-gap:4px;gap:4px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.current-step small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.current-step b{font-size:13px}.empty{padding:52px 24px;text-align:center}.empty-icon{width:44px;height:44px;display:grid;place-items:center;margin:0 auto 16px;color:var(--accent-strong);background:rgba(119,141,169,.14);border:1px solid var(--line);border-radius:50%;font-size:20px}.empty h1,.empty h2,.empty h3{margin-bottom:7px;font-size:clamp(23px,3vw,30px)}.empty p{max-width:530px;margin:0 auto 20px;color:var(--muted);line-height:1.55}.welcome-page{min-height:100vh}.welcome-header,.welcome-shell{width:min(1120px,calc(100% - 40px));margin:0 auto}.welcome-shell{min-height:calc(100vh - 64px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;grid-gap:clamp(36px,7vw,88px);gap:clamp(36px,7vw,88px);padding:56px 0 72px}.welcome-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.welcome-card h1{max-width:680px;margin:0 0 20px;font-size:clamp(38px,5.4vw,64px);line-height:1.03}.welcome-card .lead{max-width:580px;margin-bottom:28px;color:var(--muted);font-size:17px;line-height:1.62}.fineprint{max-width:420px;margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.welcome-preview{min-width:0;padding:clamp(26px,4vw,44px);color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.preview-dot-row{display:flex;gap:6px;margin-bottom:48px}.preview-dot-row i{width:7px;height:7px;background:var(--mid);border-radius:50%}.welcome-preview h2{margin:8px 0 20px;font-size:clamp(26px,3vw,38px);line-height:1.12}.preview-progress{height:5px;margin-bottom:32px;background:rgba(119,141,169,.18);border-radius:999px}.preview-progress span{width:48%;height:100%;display:block;background:var(--accent);border-radius:inherit}.preview-tree{display:grid}.preview-tree>div{min-width:0;display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}.preview-tree>div:last-child{border-bottom:0}.preview-tree b{flex:0 0 auto;color:var(--muted);font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;font-size:18px}.preview-tree span{min-width:0;display:grid;grid-gap:4px;gap:4px}.preview-tree small{color:var(--muted);font-size:11px}.preview-tree .muted{opacity:.6}.breadcrumb{min-width:0;display:flex;gap:8px;padding-top:20px;color:var(--muted);font-size:12px}.breadcrumb span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breadcrumb a{flex:0 0 auto;text-underline-offset:3px}.project-heading{padding-top:27px;padding-bottom:22px}.project-heading>div:first-child{flex:1 1 auto}.heading-title{min-width:0;display:flex;align-items:center;gap:9px}.heading-title h1{min-width:0}.project-side{flex:0 0 auto;display:grid;grid-gap:11px;gap:11px;justify-items:end}.project-progress{min-width:210px;display:grid;grid-template-columns:auto 1fr;align-items:end;grid-gap:3px 10px;gap:3px 10px}.project-progress strong{color:var(--text);font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;font-size:27px}.project-progress>span{padding-bottom:3px;color:var(--muted);font-size:11px}.project-progress .progress{grid-column:1/-1}.entity-actions,.note-actions,.order-buttons,.project-actions,.row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.tabs{display:flex;margin-bottom:24px;border-bottom:1px solid var(--line)}.tabs button{min-width:0;flex:0 0 auto;padding:10px 13px;color:var(--muted);background:transparent;border:0;border-bottom:2px solid transparent;cursor:pointer;font-size:12px;font-weight:750}.tabs button:hover{color:var(--text)}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}.tabs button span{margin-left:4px;padding:1px 6px;color:var(--text);background:rgba(119,141,169,.18);border-radius:999px;font-size:10px}.action-notice{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.icon-button,.text-button{min-height:30px;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:5px 7px;color:var(--muted);background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:12px}.icon-button{min-width:30px;font-size:16px;line-height:1}.icon-button:hover:not(:disabled),.text-button:hover:not(:disabled){color:var(--text);background:rgba(119,141,169,.14)}.icon-button:disabled,.text-button:disabled{cursor:not-allowed;opacity:.35}.danger-link,.note-actions .danger-link{color:var(--danger)}.structure{display:grid;grid-gap:15px;gap:15px}.milestone{min-width:0;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 26px rgba(3,10,20,.12)}.milestone-current{border-color:var(--line-strong);box-shadow:0 8px 30px rgba(65,90,119,.18)}.milestone-head{min-width:0;display:grid;grid-template-columns:44px minmax(0,1fr) auto;grid-gap:14px;gap:14px;padding:20px;border-bottom:1px solid var(--line)}.step-number{padding-top:2px;color:var(--muted);font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;font-size:19px}.entity-main{min-width:0}.title-line{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.title-line h2{min-width:0;margin:0;font-size:19px;line-height:1.28}.entity-description,.milestone-head p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.meta{display:flex;flex-wrap:wrap;gap:7px 13px;margin-top:8px;color:var(--muted);font-size:11px}.meta span+span:before{content:"·";margin-right:13px}.work-packages{display:grid;grid-gap:10px;gap:10px;padding:11px 20px 20px 78px}.work-package{min-width:0;overflow:hidden;background:rgba(13,27,42,.5);border:1px solid var(--line);border-radius:11px}.work-package-waiting{border-color:rgba(240,202,139,.35)}.work-package-head{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px 16px}.work-package-head>div:first-child{min-width:0}.work-package h3{margin:0;font-size:14px;line-height:1.35}.work-status{flex:0 0 auto;color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.work-status-in_progress{color:var(--warning)}.work-status-done{color:var(--success)}.date-warning{display:block!important;margin-top:5px;color:var(--warning)!important}.todo-list{margin:0;padding:0 16px 6px;list-style:none;border-top:1px solid var(--line)}.todo-list li{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.todo-list li:last-child{border-bottom:0}.todo-list li>span:nth-child(2){min-width:0;display:grid;grid-gap:3px;gap:3px}.todo-list small,.todo-list time{color:var(--muted);font-size:10px}.todo-check{width:18px;height:18px;display:grid;place-items:center;color:var(--bg);border:1px solid var(--line-strong);border-radius:5px;font-size:11px}.todo-done{background:var(--success);border-color:var(--success)}.todo-in_progress{color:var(--warning);background:rgba(240,202,139,.1);border-color:var(--warning)}.add-button{width:100%;padding:10px 12px;color:var(--muted);background:transparent;border:1px dashed var(--line-strong);border-radius:9px;cursor:pointer;font-size:12px;text-align:left}.add-button:hover:not(:disabled){color:var(--text);background:rgba(119,141,169,.08);border-color:var(--accent)}.add-button span{margin-right:7px;font-size:16px}.work-package .add-button{padding-left:16px;border:0;border-top:1px dashed var(--line);border-radius:0}.add-button-large{padding:15px;border-radius:13px}.inline-form{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;grid-gap:8px;gap:8px;padding:10px;background:rgba(13,27,42,.72);border:1px solid var(--line);border-radius:10px}.inline-form fieldset{min-width:0;display:contents;padding:0;margin:0;border:0}.inline-form input,.inline-form textarea{padding:8px 9px}.inline-form>div{display:flex;align-items:center;gap:6px}.work-package .inline-form{margin:0 10px 10px}.inline-form-large{grid-template-columns:1fr 1fr auto;padding:14px}.inline-form-large textarea{grid-row:2}.inline-form-large>div{grid-column:3;grid-row:1/3;align-items:flex-end}.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;grid-gap:13px;gap:13px}.board-column{min-width:0;min-height:320px;padding:12px;background:rgba(119,141,169,.08);border:1px solid var(--line);border-radius:13px}.column-in_progress{background:rgba(171,123,56,.09);border-color:rgba(240,202,139,.2)}.column-done{background:rgba(83,133,109,.09);border-color:rgba(159,213,189,.18)}.board-column-head{display:flex;justify-content:space-between;gap:12px;padding:3px 3px 13px}.board-column-head h2{margin:0 0 2px;font-family:Hanken Grotesk,ui-sans-serif,system-ui,sans-serif;font-size:15px}.board-column-head p{margin:0;color:var(--muted);font-size:10px}.board-column-head>span{flex:0 0 auto;width:24px;height:24px;display:grid;place-items:center;color:var(--text);background:rgba(119,141,169,.16);border-radius:50%;font-size:11px;font-weight:700}.board-cards{display:grid;grid-gap:9px;gap:9px}.todo-card{min-width:0;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 14px rgba(3,10,20,.12)}.todo-context{min-width:0;overflow:hidden;margin-bottom:7px;color:var(--muted);font-size:9px;font-weight:750;letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.todo-card h3{margin-bottom:6px;font-size:14px;line-height:1.35}.todo-card p{margin-bottom:8px;color:var(--muted);font-size:11px;line-height:1.5}.pending-note,.todo-card time{display:block;color:var(--muted);font-size:10px}.todo-card time{margin:9px 0}.pending-note{margin-top:6px}.status-select{margin-top:11px;color:var(--muted);font-size:9px}.status-select select{padding:7px 8px;font-size:11px;font-weight:650}.column-empty{padding:38px 10px;color:var(--muted);border:1px dashed var(--line-strong);border-radius:9px;font-size:11px;text-align:center}.dialog-backdrop{position:fixed;inset:0;z-index:20;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:20px;background:rgba(3,10,20,.76);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog,.dialog-dark{min-width:0;width:min(540px,100%);max-width:100%;max-height:calc(100dvh - 40px);overflow:auto;padding:22px;color:var(--text);background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:0 28px 80px rgba(0,0,0,.44)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.dialog-head h2{margin:0;font-size:22px}.dialog>.notice{margin-bottom:var(--space-4)}.dialog-form,.dialog-form fieldset{min-width:0;display:grid;grid-gap:14px;gap:14px}.dialog-form fieldset{padding:0;margin:0;border:0}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:19px}.dialog-copy{color:var(--muted);font-size:14px;line-height:1.55}.dialog-copy p:last-child{margin-bottom:0}.dialog-path{display:block;margin-top:4px;font-size:11px}.dependency-list{padding:0;margin:14px 0 0;list-style:none}.dependency-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid var(--line)}.dependency-list li span{min-width:0;display:grid;grid-gap:3px;gap:3px}.dependency-list small{font-size:10px}.calendar-view,.notes-view{min-width:0;color:var(--text);font-family:Hanken Grotesk,ui-sans-serif,system-ui,sans-serif}.calendar-view h2,.calendar-view h3,.dialog-dark h2,.notes-view h2,.notes-view h3{font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.02em}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.calendar-toolbar h2,.note-create h2{margin:0;color:var(--text);font-size:clamp(22px,3vw,28px)}.calendar-navigation{display:flex;align-items:center;gap:6px}.calendar-navigation .icon-button,.calendar-navigation .text-button{min-height:36px;padding:7px 11px;color:var(--text);border:1px solid var(--line)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:14px}.calendar-weekday{padding:9px 8px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-align:center;text-transform:uppercase}.calendar-day,.calendar-weekday{border-bottom:1px solid var(--line)}.calendar-day{min-width:0;min-height:132px;padding:8px;border-right:1px solid var(--line)}.calendar-day:nth-of-type(7n+7){border-right:0}.calendar-day>time{width:24px;height:24px;display:grid;place-items:center;color:var(--muted);font-size:11px}.calendar-day-today>time{color:var(--bg);background:var(--accent);border-radius:50%;font-weight:800}.calendar-day-outside{background:rgba(13,27,42,.38)}.calendar-day-outside>time{opacity:.48}.calendar-day-entries{display:grid;grid-gap:5px;gap:5px;margin-top:5px}.calendar-entry{width:100%;min-width:0;display:grid;grid-gap:3px;gap:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:7px;color:var(--text);background:rgba(119,141,169,.09);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:8px;cursor:pointer;text-align:left}.calendar-entry-workPackage{border-left-color:#a7b6c8}.calendar-entry-todo{border-left-color:#d2d9e2}.calendar-entry:hover:not(:disabled){background:rgba(119,141,169,.16)}.calendar-entry:disabled{cursor:wait;opacity:.6}.calendar-entry strong{min-width:0;overflow:hidden;font-size:12px;line-height:1.3;overflow-wrap:anywhere}.calendar-entry-meta,.calendar-entry-path,.calendar-entry-type,.calendar-warning{min-width:0;overflow:hidden;color:var(--muted);font-size:10px;line-height:1.35;overflow-wrap:anywhere}.calendar-entry-type{font-size:9px;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.calendar-entry-meta{display:flex;flex-wrap:wrap;gap:4px}.calendar-entry-meta>span{display:inline-flex;padding:2px 5px;border:1px solid var(--line);border-radius:999px}.calendar-entry-meta .calendar-overdue,.calendar-warning{color:var(--danger);border-color:rgba(255,201,194,.3)}.calendar-warning{white-space:normal}.calendar-agenda{display:none}.calendar-empty{box-shadow:none}.calendar-empty h3,.calendar-empty p{margin-bottom:6px}.notes-view{display:grid;grid-gap:18px;gap:18px}.notes-view .panel{box-shadow:none}.note-create{display:grid;grid-gap:16px;gap:16px;padding:22px}.note-create-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.note-create-heading>p{max-width:390px;margin:0;color:var(--muted);font-size:12px;line-height:1.5}.note-create fieldset{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(260px,1fr);grid-gap:13px;gap:13px;padding:0;margin:0;border:0}.note-create label{align-self:start;align-content:start}.note-create-actions{display:flex;justify-content:flex-end}.note-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:13px;gap:13px}.note-card{min-width:0;padding:18px}.note-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:13px;border-bottom:1px solid var(--line)}.note-card h3{margin:0 0 4px;font-size:17px}.note-card time{color:var(--muted);font-size:10px}.note-actions{justify-content:flex-end}.note-text{margin:14px 0 0;color:var(--text);font-size:13px;line-height:1.6;white-space:pre-wrap}.notes-empty{padding:34px 18px;color:var(--muted);border:1px dashed var(--line-strong);border-radius:13px;text-align:center}.notes-empty h3{margin-bottom:5px;color:var(--text)}.notes-empty p{margin:0}.state-shell{min-height:calc(100vh - 128px);display:grid;align-content:center;padding:48px 0}.state-shell .empty{width:min(660px,100%);margin:0 auto}.skeleton{background:linear-gradient(90deg,rgba(119,141,169,.08),rgba(119,141,169,.2),rgba(119,141,169,.08));background-size:200% 100%;border-radius:12px;animation:pulse 1.5s infinite}.skeleton-title{width:min(50%,420px);height:42px;margin-bottom:28px}.skeleton-panel{height:330px}@keyframes pulse{to{background-position:-200% 0}}.auth-shell{width:min(100% - 32px,520px);min-height:100vh;display:grid;place-items:center;margin:0 auto;padding:48px 0}.auth-card{width:100%;padding:clamp(22px,5vw,34px);color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.auth-card .brand{margin-bottom:34px}.auth-card h1{margin-bottom:8px;font-size:clamp(27px,6vw,34px)}.auth-card>p,.auth-copy{margin-bottom:0;color:var(--muted);line-height:1.55}.auth-form{display:grid;grid-gap:16px;gap:16px;margin-top:24px}.auth-form .button{width:100%}.auth-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:6px}.auth-error,.auth-success{padding:12px 14px;border-radius:10px;font-size:13px;line-height:1.45}@media (max-width:900px){.welcome-shell{grid-template-columns:1fr;gap:42px;padding-top:42px}.welcome-card{max-width:740px}.welcome-preview{max-width:720px}.work-packages{padding-left:20px}.board{grid-template-columns:1fr}.board-column{min-height:auto}.board-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-form,.inline-form-large{grid-template-columns:1fr}.inline-form-large textarea,.inline-form-large>div{grid-column:auto;grid-row:auto}}@media (max-width:760px){.page-heading,.project-heading{align-items:flex-start;flex-direction:column;gap:20px}.project-side{width:100%;justify-items:stretch}.project-progress{width:100%}.tabs{overflow-x:auto;scrollbar-width:thin}.calendar-grid{display:none}.calendar-agenda{display:grid;grid-gap:9px;gap:9px}.agenda-row{min-width:0;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:stretch;grid-gap:9px;gap:9px}.agenda-row>time{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);border:1px solid var(--line);border-radius:10px;font-size:9px;text-transform:uppercase}.agenda-row>time strong{color:var(--text);font-size:18px}.calendar-entry{padding:10px 11px}.calendar-entry strong{font-size:13px;white-space:normal}.calendar-entry-meta,.calendar-entry-path,.calendar-entry-type,.calendar-warning{white-space:normal}.calendar-toolbar,.note-create-heading{align-items:flex-start;flex-direction:column}.calendar-navigation{width:100%}.calendar-navigation .text-button{flex:1 1}.note-create fieldset,.note-list{grid-template-columns:1fr}.note-card-head{flex-direction:column}.note-actions{justify-content:flex-start}}@media (max-width:620px){.app-shell,.welcome-header,.welcome-shell{width:min(100% - 28px,1120px)}.topbar{height:60px}.brand{font-size:17px}.brand-mark{width:28px;height:28px}.page-heading,.project-heading{padding:27px 0 21px}.page-heading h1,.project-heading h1{font-size:28px}.page-heading .button{width:100%}.project-grid{grid-template-columns:1fr}.project-card{min-height:235px;padding:18px}.create-panel{grid-template-columns:1fr;padding:18px}.welcome-shell{min-height:calc(100vh - 60px);padding:44px 0 52px}.welcome-card h1{font-size:clamp(36px,12vw,48px)}.welcome-card .lead{font-size:15px}.welcome-preview{padding:22px}.preview-dot-row{margin-bottom:32px}.breadcrumb{padding-top:17px}.project-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.project-actions>*{min-width:0}.tabs{margin-inline:-14px;padding-inline:14px}.tabs button{flex:1 0 auto;padding:10px 8px;font-size:11px}.action-notice{align-items:flex-start;flex-direction:column}.action-notice .button{width:100%}.milestone-head{grid-template-columns:1fr;padding:17px}.step-number{font-size:14px}.entity-actions{justify-content:flex-start}.work-packages{padding:9px}.work-package-head{align-items:stretch;flex-direction:column}.todo-list li{grid-template-columns:auto minmax(0,1fr)}.row-actions,.todo-list time{grid-column:2}.board-cards{grid-template-columns:1fr}.note-create{padding:18px}.note-create-actions .button{width:100%}.dialog-backdrop{align-items:end;padding:10px}.dialog,.dialog-dark{max-height:calc(100dvh - 20px);padding:18px;border-radius:14px}.dialog-actions .button{flex:1 1 130px}.auth-shell{width:min(100% - 24px,520px);padding:24px 0}.auth-card{padding:22px 18px}.auth-card .brand{margin-bottom:28px}}@media (max-width:390px){.app-shell,.welcome-header,.welcome-shell{width:min(100% - 24px,1120px)}.quiet-link{font-size:12px}.project-actions{grid-template-columns:1fr}.tabs{margin-inline:-12px;padding-inline:12px}.tabs button{padding-inline:7px}.tabs button span{display:none}.agenda-row{grid-template-columns:42px minmax(0,1fr)}.dialog-backdrop{padding:6px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}