:root{color-scheme:dark;--bg:#090c0e;--paper:#14191c;--raised:#1b2225;--ink:#f5f6f3;--muted:#aab7b7;--line:#344044;--accent:#b8ff39;--accent-ink:#111a05;--danger:#ffa397;--warn:#f1be68;--soft:#263915;font-family:Manrope,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}
:root[data-theme=light]{color-scheme:light;--bg:#eef0ed;--paper:#fff;--raised:#e7ede7;--ink:#121b18;--muted:#53645a;--line:#bcc9c0;--accent:#315d16;--accent-ink:#fff;--danger:#a52b21;--warn:#855000;--soft:#e0edcf}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a{color:var(--accent);text-underline-offset:3px}button{border:1px solid var(--line);background:var(--paper);padding:10px 14px;border-radius:4px;font-weight:600}button:hover{background:var(--raised);border-color:var(--muted)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.primary:hover{filter:brightness(.94);background:var(--accent)}.quiet{background:transparent;border-color:transparent}.danger{color:var(--danger)}input,select,textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:11px 12px;caret-color:var(--accent)}textarea{resize:vertical;line-height:1.6}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}input[type=color]{height:43px;padding:4px}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}*{scrollbar-color:var(--line) var(--bg);scrollbar-width:thin}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}h2{font-size:27px;letter-spacing:-.035em;margin-bottom:9px}h3{font-size:16px;margin-bottom:14px}p{line-height:1.6;max-width:75ch}small,.muted{color:var(--muted)}small{line-height:1.5}label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.row{display:flex;align-items:center;gap:12px}.spread{justify-content:space-between}.wrap{max-width:1800px;margin:auto;padding:0 32px}.top{background:var(--bg);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:38px;height:38px;object-fit:cover;border-radius:50%}.brand strong{font-size:20px;letter-spacing:-.04em;font-style:italic}.brand span{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.topline{min-height:86px;display:flex;align-items:center;gap:20px}.topline>.account{margin-left:auto;display:flex;align-items:center;gap:10px}.live{font-size:11px;color:var(--accent)}.live.offline{color:var(--danger)}.tabs{display:flex;gap:28px;overflow:auto}.tabs button{flex-shrink:0;border:0;border-bottom:3px solid transparent;border-radius:0;background:none;padding:16px 0;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.tabs button.active{border-color:var(--accent);color:var(--ink)}main{padding-bottom:60px!important}.pagehead{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 0 22px}.pagehead p{margin:0;font-size:13px;color:var(--muted)}.pagehead h2{margin-bottom:6px}.hero{position:relative;min-height:330px;padding:40px;display:flex;align-items:center;overflow:hidden;background:#101718;color:#fff}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,10,.94),rgba(4,10,10,.74) 35%,rgba(4,10,10,.06) 85%)}.hero>div{position:relative;z-index:1;max-width:570px}.hero h1{font-family:Impact,'Arial Narrow',sans-serif;font-style:italic;text-transform:uppercase;font-size:66px;line-height:1;letter-spacing:-.02em;margin-bottom:18px}.hero p{color:#e2e9e1;font-size:15px;max-width:46ch}.hero .primary{background:#b8ff39;color:#111a05;border-color:#b8ff39}.section{margin-top:28px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}.sectionhead h3{margin:0}.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.briefline{padding:14px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;align-items:center}.briefline p{margin:3px 0 0;font-size:12px;color:var(--muted)}.briefline b{font-size:14px}.textlink{border:0;background:none;padding:0;text-align:left;font-weight:600;line-height:1.5}.textlink:hover{color:var(--accent);background:none}.status{font-size:11px;white-space:nowrap;text-transform:capitalize;padding:4px 7px;border:1px solid var(--line);border-radius:3px;display:inline-block}.status.at-risk,.status.blocked{color:var(--danger);border-color:var(--danger)}.status.done{color:var(--accent)}.number{font-variant-numeric:tabular-nums}.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar input{max-width:340px}.toolbar select{max-width:230px}.toolbar .spacer{flex:1}.seg{display:flex}.seg button{border-radius:0}.seg .selected{background:var(--soft);color:var(--accent)}.legend{display:flex;flex-wrap:wrap;gap:18px;font-size:11px;margin:15px 0;color:var(--muted)}.legend span{display:flex;gap:7px;align-items:center}.dot{height:9px;width:9px;display:inline-block;border-radius:50%;background:var(--accent)}.gantt{border:1px solid var(--line);background:var(--paper);overflow:auto;max-height:74vh;position:relative;isolation:isolate}.gantt-inner{width:calc(440px + var(--chart-width));min-width:100%}.gantt-header,.gantt-row{display:grid;grid-template-columns:440px minmax(0,1fr)}.gantt-header{position:sticky;top:0;z-index:6;background:var(--paper);height:52px;border-bottom:1px solid var(--line)}.gantt-title{padding:16px 22px;position:sticky;left:0;z-index:4;background:var(--paper);border-right:1px solid var(--line);display:flex;align-items:center}.axis{position:relative;background:var(--paper)}.axis span{position:absolute;top:18px;font-size:11px;color:var(--muted);white-space:nowrap}.gantt-category{position:sticky;left:0;width:calc(100vw - 68px);max-width:1732px;padding:16px 22px;background:var(--raised);z-index:5;display:flex;align-items:center;gap:10px;min-height:56px}.gantt-category strong{font-size:13px}.gantt-category button{margin-left:auto;padding:5px 10px;font-size:11px}.gantt-row{min-height:92px;border-bottom:1px solid var(--line)}.gantt-label{position:sticky;left:0;background:var(--paper);border-right:1px solid var(--line);z-index:3;padding:17px 22px;display:flex;flex-direction:column;justify-content:center;gap:7px}.gantt-label button{font-size:13px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.gantt-label small{font-size:11px}.track{position:relative;display:flex;align-items:center;min-height:92px;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) * 7 - 1px),var(--line) calc(var(--day-width) * 7 - 1px),var(--line) calc(var(--day-width) * 7))}.bar{position:absolute;height:36px;min-width:22px;padding:0 10px;display:flex;align-items:center;justify-content:center;font-size:11px;border-radius:3px;color:#fff;white-space:nowrap;overflow:hidden;border:1px solid #ffffff44;background:var(--bar);font-variant-numeric:tabular-nums}.bar:hover{background:var(--bar);filter:brightness(1.2);border-color:#fff}.bar.conflict{outline:2px solid var(--danger);outline-offset:2px}.bar.done{opacity:.6}.bar.milestone{width:26px;min-width:26px;height:34px;padding:0;border:0;border-radius:2px;background:transparent;color:var(--ink);overflow:visible}.bar.milestone:hover{background:var(--raised)}.bar.milestone .checkpoint-shape{width:26px;height:32px}.bar.milestone .checkpoint-shape path{fill:var(--bar)}.today-line{position:absolute;top:0;bottom:0;width:1px;background:var(--warn);pointer-events:none}.table-scroll{overflow:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:16px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--raised);font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}td:first-child{min-width:260px;max-width:480px}td small{display:block;margin-top:5px}.notice{border:1px solid var(--line);background:var(--raised);padding:15px 18px;margin:18px 0;line-height:1.6;font-size:13px}.notice.warning{color:var(--warn)}.empty{padding:24px 0;color:var(--muted);font-size:13px}.proposal{padding:20px 0;border-bottom:1px solid var(--line)}.proposal ul{padding-left:20px;font-size:13px;line-height:1.7}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:32px}.stack{display:flex;flex-direction:column;gap:18px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.formgrid .full{grid-column:1/-1}.checklist{border:1px solid var(--line);padding:12px;max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:12px}.checklist label{display:flex;flex-direction:row;align-items:flex-start;font-weight:400;line-height:1.5}.cardform{background:var(--paper);padding:24px;border:1px solid var(--line)}dialog{padding:0;color:var(--ink);background:var(--paper);border:0;border-left:1px solid var(--line);width:min(640px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0 0 0 auto;box-shadow:-12px 0 40px #0005}dialog[open]{display:flex;flex-direction:column}dialog::backdrop{background:#0008}dialog header{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line)}dialog h2{font-size:19px;margin:0}dialog .body{overflow:auto;padding:24px;flex:1}dialog footer{padding:16px 24px;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center}dialog form{display:contents}.help{font-size:12px;color:var(--muted);line-height:1.6}.error{color:var(--danger);line-height:1.5;font-size:13px;white-space:pre-wrap}.attachment{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;overflow-wrap:anywhere}.activity{font-size:12px;padding:12px 0;border-bottom:1px solid var(--line)}.activity p{margin:6px 0 0;color:var(--muted)}.auth{min-height:100dvh;display:grid;grid-template-columns:1.1fr 1fr}.auth-art{position:relative;background:#101718;overflow:hidden}.auth-art>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:65% center;opacity:.6}.auth-art>div{position:absolute;inset:auto 40px 50px}.auth-art h1{font-family:Impact,'Arial Narrow',sans-serif;font-style:italic;font-size:72px;text-transform:uppercase;line-height:1;margin:0 0 20px;color:#fff}.auth-art p{color:#e2e9e1;max-width:40ch}.auth-content{display:flex;align-items:center;justify-content:center;padding:40px}.auth-content>div{width:100%;max-width:390px}.auth-content .brand{margin-bottom:50px}.auth-content h2{font-size:30px}.auth-content form{margin-top:26px}.auth-content .primary{width:100%}.loading{padding:60px;color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--accent);color:var(--accent-ink);padding:13px 20px;border-radius:4px;z-index:100;display:none;max-width:90vw;box-shadow:0 6px 30px #0004}#toast.show{display:block}.note-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.7}.notification{padding:16px 0;border-bottom:1px solid var(--line)}.notification p{margin:7px 0}.notification.unread{font-weight:600}.break{overflow-wrap:anywhere}.review-link{margin-top:18px;word-break:break-all}.route-options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.route-options label{border:1px solid var(--line);padding:18px;line-height:1.6;cursor:pointer}.route-options input{width:18px;accent-color:var(--accent)}@media(max-width:900px){.wrap{padding-inline:18px}.brand span{display:none}.topline{gap:10px;flex-wrap:wrap;padding-block:16px}.account small{display:none}.tabs{gap:24px}.brief-grid,.two-col{grid-template-columns:1fr}.hero{min-height:320px;padding:28px}.hero h1{font-size:54px}.gantt-inner{width:calc(340px + var(--chart-width))}.gantt-header,.gantt-row{grid-template-columns:340px minmax(0,1fr)}.gantt-category{width:calc(100vw - 40px)}.auth-art h1{font-size:52px}.route-options{grid-template-columns:1fr}.auth{grid-template-columns:1fr}.auth-art{display:none}.auth-content{padding:28px;min-height:100dvh}.auth-content .brand{margin-bottom:44px}}@media(max-width:560px){.topline>.account{width:100%;margin:0;justify-content:space-between}.topline .live{margin-left:auto}.tabs button{font-size:10px}.pagehead{align-items:flex-start;flex-direction:column;gap:14px}.pagehead h2{font-size:24px}.hero h1{font-size:47px}.hero{padding:24px}.hero p{font-size:13px;max-width:30ch}.gantt-inner{width:calc(260px + var(--chart-width))}.gantt-header,.gantt-row{grid-template-columns:260px minmax(0,1fr)}.gantt-label{padding:16px}.gantt-row,.track{min-height:112px}.toolbar>*{max-width:none!important}.toolbar input{flex:1 1 100%}.toolbar select{flex:1 1 45%;width:45%}.formgrid{grid-template-columns:1fr}.formgrid .full{grid-column:auto}.row{flex-wrap:wrap}.sectionhead{align-items:flex-start}.briefline{gap:12px}dialog .body,dialog header{padding:18px}.gantt-category strong{max-width:175px;line-height:1.5}.gantt-category small{display:none}}@media(prefers-reduced-motion:no-preference){dialog[open]{animation:arrive .22s cubic-bezier(.16,1,.3,1)}@keyframes arrive{from{transform:translateX(35px);opacity:.6}to{transform:translateX(0);opacity:1}} 
.task-advanced{border-block:1px solid var(--line);padding:18px 0}.task-advanced summary{cursor:pointer;font-weight:600;line-height:1.7}.task-advanced summary small{font-weight:400}.body .stack>h3{margin:10px 0 0}.body .stack>h3:first-child{margin-top:0}
.task-list{border:1px solid var(--line);background:var(--paper)}.task-columns,.task-list-row{display:grid;grid-template-columns:minmax(280px,1fr) minmax(150px,230px) 120px 115px;gap:20px;align-items:center;padding:15px 20px}.task-columns{color:var(--muted);font-size:11px;background:var(--raised);text-transform:uppercase;letter-spacing:.06em}.group-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--raised);padding:13px 20px;border-block:1px solid var(--line)}.group-heading>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.group-heading h3{font-size:14px;margin:0}.group-heading button{font-size:11px;padding:5px 8px;flex-shrink:0}.task-list-row{min-height:72px;border-bottom:1px solid var(--line)}.task-list-row:last-child{border-bottom:0}.task-list-row small{display:block;margin-top:5px;font-size:11px}.task-list-row .textlink{font-size:14px;font-weight:500;overflow-wrap:anywhere}.task-owner{font-size:12px;line-height:1.6;color:var(--muted)}.task-due{font-size:12px;white-space:nowrap}.mobile-label{display:none}.task-context{margin:0}.task-readable-title{font-size:21px!important;line-height:1.45;font-weight:600}.workstream-group>.empty{margin:0;padding:20px}@media(max-width:900px){.task-columns,.task-list-row{grid-template-columns:minmax(240px,1fr) 140px 95px 100px;gap:12px;padding-inline:16px}.toolbar .spacer{display:none}}@media(max-width:650px){.task-columns{display:none}.task-list-row{grid-template-columns:1fr auto;padding:17px 16px;gap:8px 14px}.task-list-row>div:first-child{grid-column:1/-1}.task-list-row .task-owner{grid-column:1/-1}.task-due{font-size:12px}.task-list-row>div:last-child{text-align:right}.mobile-label{display:inline;color:var(--muted)}.group-heading{padding:13px 16px;align-items:flex-start}.group-heading>div{gap:8px}.group-heading h3{font-size:13px;max-width:180px}.group-heading small{display:none}.group-heading button{font-size:10px;max-width:90px;text-align:right}.toolbar .seg{flex:1}.toolbar .seg button{flex:1}.formgrid{grid-template-columns:1fr 1fr}.formgrid input,.formgrid select{min-width:0}.formgrid label{min-width:0;font-size:11px}.formgrid .full{grid-column:1/-1}}

.view-switch{flex-shrink:0}.view-switch button{white-space:nowrap}@media(max-width:650px){.toolbar .view-switch{flex:1 1 100%}}
/* Checkpoint identity is independent of completion status. */
.item-heading{display:flex;align-items:baseline;gap:10px;min-width:0}.item-heading .textlink{min-width:0;flex:1}.item-type{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:600;white-space:nowrap;border:1px solid var(--muted);padding:2px 6px;border-radius:2px;color:var(--ink);line-height:1.5;flex-shrink:0}.checkpoint-shape{display:inline-block;width:12px;height:15px;flex-shrink:0;vertical-align:middle}.milestone-row{background:color-mix(in srgb,var(--paper) 94%,var(--accent) 6%)}.milestone-row .gantt-label{background:color-mix(in srgb,var(--paper) 94%,var(--accent) 6%)}.milestone-row .textlink{font-weight:600}.checkpoint-date-label{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}.gantt-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.gantt-meta .status{flex-shrink:0;font-size:10px}.fixed-checkpoint-date{color:var(--ink)}.checkpoint-caption{position:absolute;font-size:11px;color:var(--ink);background:var(--paper);padding:5px 7px;border:1px solid var(--line);white-space:nowrap;pointer-events:none}.date-explainer{margin:0;align-self:center}.gantt-label .item-type{font-size:10px}.gantt-label .item-heading{align-items:flex-start}@media(max-width:650px){.item-heading{flex-wrap:wrap;gap:6px}.item-heading .textlink{flex-basis:100%}.checkpoint-date-label{display:inline;margin-right:5px}.gantt-meta{flex-wrap:wrap;gap:5px}.gantt-label .item-heading{gap:6px}}
.admin-context{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:18px}.admin-context>p{max-width:none;margin-bottom:10px;font-size:13px}.admin-context summary{cursor:pointer;color:var(--muted);font-size:12px}.admin-context details p{margin:12px 0 0}.admin-directory{border:1px solid var(--line);background:var(--paper)}.admin-columns,.admin-person{display:grid;grid-template-columns:minmax(170px,1.25fr) minmax(165px,1.2fr) minmax(110px,.8fr) minmax(90px,.7fr) 90px minmax(165px,1fr);gap:16px;align-items:center;padding:17px 20px}.admin-columns{background:var(--raised);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.admin-person{border-top:1px solid var(--line);font-size:12px}.admin-person>div{min-width:0;overflow-wrap:anywhere}.admin-person small{display:block;font-size:11px;margin-top:5px;line-height:1.5}.admin-person .textlink{font-size:14px}.admin-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.admin-actions button{font-size:11px;padding:7px 10px}.admin-actions small{margin:0}.owner-identity{color:var(--accent)}.mobile-admin-label{display:none}.admin-person .status{text-transform:none}.admin-email{color:var(--muted)}@media(max-width:1100px){.admin-columns{display:none}.admin-person{grid-template-columns:1.2fr 1.2fr 1fr;gap:12px 20px}.admin-actions{grid-column:3}.admin-count{font-size:11px}}@media(max-width:650px){.admin-person{grid-template-columns:1fr auto;padding:18px 16px;gap:10px 16px}.admin-person>div:first-child,.admin-email,.admin-access,.admin-actions{grid-column:1/-1}.admin-person>div:nth-child(4){grid-column:1}.admin-count{grid-column:2;text-align:right}.admin-actions{padding-top:7px}.admin-actions button{padding:9px 14px;font-size:12px}.mobile-admin-label{display:inline;color:var(--muted)}.admin-context>p{font-size:12px}.admin-context details p{font-size:12px}}

.task-background summary{font-size:13px;font-weight:600;cursor:pointer}.task-background .help{margin-top:12px}.task-update{padding:18px 0;border-bottom:1px solid var(--line)}.task-update .note-text{margin:10px 0 0}.update-meta{display:flex;gap:8px 16px;justify-content:space-between;flex-wrap:wrap;font-size:12px}.update-meta time{color:var(--muted);font-variant-numeric:tabular-nums}.update-actions{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.field-changes{padding-left:18px;line-height:1.7;overflow-wrap:anywhere}.task-background .note-text{margin-top:12px}#taskSaveResult{max-width:32ch}#reloadTaskFields{margin-bottom:18px}.activity b,.update-meta strong{overflow-wrap:anywhere}

/* Phone workflows retain the same views and permissions. */
.mobile-workspace{display:none}.timeline-help{margin:0 0 12px}
dialog header,dialog footer{flex-shrink:0}dialog .body{min-height:0;overscroll-behavior:contain;scroll-padding-block:20px}body:has(dialog[open]){overflow:hidden}.stack,.stack>*,.attachment>div{min-width:0}input,select,textarea{max-width:100%}button:active{filter:brightness(.9)}
@media(max-width:767px){
 :root{font-size:15px}body{padding-inline:env(safe-area-inset-left) env(safe-area-inset-right)}
 button,input,select,textarea{min-height:44px}button{font-size:14px}input,select,textarea{font-size:16px}input[type=checkbox],input[type=radio]{min-height:0}input[type=file]{font-size:14px;padding:8px}input[type=file]::file-selector-button{min-height:44px;font:inherit;margin-right:8px}
 p,.notice,.proposal ul{font-size:14px}.help,.empty{font-size:13px}label{font-size:13px;line-height:1.5}.status{font-size:12px}small{font-size:12px}
 .wrap{padding-inline:16px}.topline{min-height:0;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:12px;gap:10px;flex-wrap:wrap}.brand img{width:32px;height:32px}.topline .live{margin-left:auto}.topline>.account{width:100%;margin:0;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-start}.account small{display:block;flex:1 1 100%;font-size:12px}.account button{padding:8px 12px}.account #logout{margin-left:auto}
 .tabs{display:none}.mobile-workspace{display:flex;align-items:center;gap:14px;padding-bottom:14px}.mobile-workspace label{font-size:13px;color:var(--muted);flex-shrink:0}.mobile-workspace select{flex:1;min-width:0}
 .pagehead{padding:22px 0 18px;align-items:flex-start;flex-direction:column;gap:14px}.pagehead p{font-size:14px}.pagehead>.row{width:100%;flex-wrap:wrap;gap:8px}.pagehead>.row button{flex:1;min-width:130px}.pagehead h2{font-size:25px}
 .toolbar{gap:10px}.toolbar input{flex:1 1 100%;max-width:none}.toolbar select{flex:1 1 calc(50% - 10px);width:calc(50% - 10px);max-width:none;min-width:0}.toolbar .seg{flex:1 1 100%}.toolbar .seg button{flex:1}.toolbar .spacer{display:none}.view-switch button{font-size:14px}
 .task-columns{display:none}.task-list-row{grid-template-columns:1fr auto;gap:9px 12px;padding:14px 14px}.task-list-row>div:first-child,.task-list-row .task-owner{grid-column:1/-1}.task-list-row>div:last-child{text-align:right}.task-list-row .textlink{font-size:15px;line-height:1.5;text-align:left;min-height:44px;width:100%}.task-owner{font-size:13px}.task-due{font-size:13px;white-space:normal}.mobile-label{display:inline}.group-heading{padding:10px 14px;align-items:center}.group-heading h3{font-size:14px;max-width:none;line-height:1.45}.group-heading small{display:none}.group-heading button{font-size:12px;padding:8px;max-width:100px}.item-heading{flex-wrap:wrap;gap:5px}.item-heading .textlink{flex-basis:100%}.item-type{font-size:11px}
 .gantt{--gantt-context:clamp(150px,46vw,220px);max-height:70dvh;overscroll-behavior:contain}.gantt-inner{width:calc(var(--gantt-context) + var(--chart-width))}.gantt-header,.gantt-row{grid-template-columns:var(--gantt-context) minmax(0,1fr)}.gantt-title{padding:12px;font-size:12px}.gantt-label{padding:12px;gap:8px}.gantt-label .textlink{font-size:14px;min-height:44px}.gantt-label small{font-size:12px}.gantt-row,.track{min-height:140px}.gantt-meta{flex-direction:column;align-items:flex-start;gap:6px}.gantt-meta .status{font-size:11px}.gantt-category{width:calc(100vw - 34px - env(safe-area-inset-left) - env(safe-area-inset-right));padding:10px 12px}.gantt-category strong{max-width:none;flex:1;font-size:13px;line-height:1.5}.gantt-category small{display:none}.gantt-category button{min-width:44px;font-size:12px}.bar{min-height:44px;min-width:44px}.bar.milestone{min-width:44px;height:44px}.checkpoint-caption{margin-left:10px}.legend{font-size:12px}
 .table-scroll:has(.responsive-table){overflow:visible;border:0}.responsive-table,.responsive-table tbody{display:block;width:100%}.responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.responsive-table tr{display:block;border:1px solid var(--line);padding:14px;background:var(--paper);margin-bottom:12px}.responsive-table td{display:block;padding:8px 0;min-width:0;max-width:none;border:0;font-size:14px;overflow-wrap:anywhere}.responsive-table td::before{content:attr(data-label);display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.responsive-table td:first-child{min-width:0;max-width:none;padding-top:0;font-weight:600}.responsive-table td .textlink{font-size:14px;min-height:44px;line-height:1.5}.responsive-table td:last-child{padding-bottom:0}
 .brief-grid,.two-col{grid-template-columns:1fr;gap:24px}.briefline{align-items:flex-start;gap:12px}.briefline .textlink{min-height:44px;font-size:14px}.briefline p{font-size:13px}.sectionhead{flex-wrap:wrap;align-items:center;gap:10px}.sectionhead button{font-size:13px}.proposal .row{flex-wrap:wrap}.proposal .row button{flex:1;min-width:130px}.hero{padding:24px;min-height:280px}.hero h1{font-size:44px}.hero p{font-size:14px}.route-options{grid-template-columns:1fr}.route-options label{padding:16px;gap:10px}.checklist label{min-height:44px;align-items:center;font-size:14px}.checklist{gap:6px}
 dialog{position:fixed;inset:var(--visible-top,0px) 0 auto;max-height:var(--visible-height,100dvh);height:var(--visible-height,100dvh);width:100%;margin:0;border:0}dialog header{padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top))}dialog .body{padding:18px 16px;scroll-padding-block:18px}dialog footer{padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom));gap:10px;flex-wrap:wrap}dialog footer>.primary{flex:1;min-width:120px}dialog footer .help{flex:1;font-size:12px}dialog .formgrid{grid-template-columns:1fr 1fr;gap:12px}dialog .formgrid label{font-size:13px;min-width:0}dialog .formgrid .full{grid-column:1/-1}dialog .formgrid input[type=date]{min-width:0;width:100%;padding-inline:8px}dialog .task-readable-title{font-size:20px!important}.task-advanced summary,.task-background summary{min-height:44px;align-content:center;font-size:14px}.task-update .note-text{font-size:15px}.update-meta{font-size:13px}.activity{font-size:13px}.attachment{font-size:14px;align-items:flex-start}.attachment a{display:inline-block;min-height:44px;align-content:center}.attachment button{flex-shrink:0}.attachment small{display:block}.update-actions button{min-width:130px}.admin-actions button{min-height:44px;font-size:14px;padding:10px 14px}.admin-person{font-size:14px}.admin-person .textlink{min-height:44px;font-size:15px}.admin-person small{font-size:12px}.admin-context>p,.admin-context summary,.admin-context details p{font-size:13px}.admin-person .status{font-size:12px}.admin-columns{display:none}
 .auth-content{min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) 22px max(24px,env(safe-area-inset-bottom));align-items:flex-start}.auth-content>div{margin:auto}.auth-content .brand{margin-bottom:28px}.auth-content h2{font-size:27px}.auth-content form{margin-top:22px}.auth-content .stack{gap:16px}#toast{bottom:max(16px,env(safe-area-inset-bottom));font-size:14px}
}
@media(max-width:359px){dialog .formgrid{grid-template-columns:1fr}dialog .formgrid .full{grid-column:1}.toolbar select{flex-basis:100%;width:100%}.task-due{max-width:155px}.brand strong{font-size:18px}.live{font-size:10px}.update-meta{flex-direction:column;gap:5px}}
@media(max-height:500px) and (max-width:950px){dialog{height:var(--visible-height,100dvh);max-height:var(--visible-height,100dvh);top:var(--visible-top,0px)}dialog header{padding-block:8px}dialog footer{padding-block:8px}.auth-content{padding-block:18px}.auth-content .brand{margin-bottom:16px}.auth-content>div{max-width:520px}.gantt{max-height:76dvh}}
@media(pointer:coarse){button{min-height:44px}summary{min-height:44px;align-content:center}.checklist label{min-height:44px}.textlink{min-height:44px}}

@media(max-height:500px) and (max-width:950px){body{padding-inline:env(safe-area-inset-left) env(safe-area-inset-right)}input,select,textarea{font-size:16px;min-height:44px}button{min-height:44px}.tabs{display:none}.mobile-workspace{display:flex;align-items:center;gap:14px;padding-bottom:12px}.mobile-workspace select{flex:1;min-width:0}.mobile-workspace label{font-size:13px;color:var(--muted)}.topline{padding-block:10px;min-height:0}.pagehead{padding-top:18px}.topline .account{margin-left:auto}.topline .account small{font-size:12px}dialog footer{padding-bottom:max(8px,env(safe-area-inset-bottom))}dialog header{padding-top:max(8px,env(safe-area-inset-top))}}
