@font-face{font-family:Forma;src:url(/fonts/forma-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Chivo;src:url(/fonts/chivo-mono.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{color-scheme:light;--color-charcoal:#101010;--ink:var(--color-charcoal);--ground:var(--color-charcoal);--surface:#fff;--paper:#f3f3f3;--text:#101010;--muted:#62625c;--line:#d6d6d0;--soft:#e7e7e1;--accent:#ffe000;--cyan:#00c8ff;--focus:#101010;--font-display:Forma,Arial,Helvetica,sans-serif;--font-body:Satoshi,Arial,Helvetica,sans-serif;--font-label:Chivo,monospace;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--ease:cubic-bezier(.2,.7,.2,1);--motion-fast:.16s;font:500 16px/1.6 var(--font-body);font-synthesis:none;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box;border-radius:0}html{scroll-padding-bottom:96px}body{margin:0;min-width:320px;font-size:14px}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast)}button:disabled{cursor:default;opacity:.55}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}a{color:inherit;text-underline-offset:3px}h1,h2,h3,h4,h5,h6,p{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;text-wrap:balance}p{text-wrap:pretty}svg{flex-shrink:0}button svg{stroke-width:1.7}input,select,textarea{min-width:0}input[type=checkbox]{accent-color:var(--ink);width:18px;height:18px;flex-shrink:0}fieldset{margin:0;padding:0;border:0;min-width:0}fieldset:disabled{opacity:.8}::selection{background:var(--accent);color:var(--ink)}.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}.skip-link{position:fixed;top:-80px;left:16px;background:var(--accent);color:var(--ink);z-index:100;padding:12px 20px;font-family:var(--font-label)}.skip-link:focus{top:12px}.muted{color:var(--muted)}.app-shell,.main-shell{min-height:100vh;width:100%}.topbar{--text:#f6f6f3;--muted:#b0b0ac;--line:#373735;--soft:#242423;--focus:#ffe000;display:flex;align-items:center;gap:20px;min-height:80px;padding:16px max(24px,calc((100vw - 1120px)/2));background:var(--ground);color:var(--text);border-bottom:1px solid var(--line)}.brand-button{display:inline-flex;align-items:center;min-height:44px;padding:0;border:0;background:transparent;color:inherit;flex-shrink:0;text-decoration:none}.wordmark{display:flex;align-items:baseline;gap:8px;font-family:var(--font-display);font-size:30px;line-height:1.1;letter-spacing:-.05em}.wordmark span{font:500 10px/1.5 var(--font-label);letter-spacing:.035em;color:var(--muted);text-transform:uppercase}.workspace-name{font-size:12px;color:var(--muted);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-nav{display:flex;align-items:center;gap:4px;margin-left:12px}.nav-item{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid transparent;background:transparent;color:var(--muted);font-size:14px;white-space:nowrap;text-decoration:none}.nav-item:hover{background:var(--soft);color:var(--text)}.nav-item.active,.nav-item[aria-current=page]{background:var(--accent);color:var(--ink)}.top-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.icon-button,.tiny-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:8px;border:0;background:transparent;color:var(--muted);flex-shrink:0;text-decoration:none}.icon-button:hover,.tiny-button:hover{background:var(--soft);color:var(--text)}.top-actions .icon-button{position:relative}.top-actions .icon-button.active{color:var(--accent)}.nav-count{font:500 10px/1.4 var(--font-label);display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:2px 4px;background:var(--accent);color:var(--ink)}.top-actions .nav-count{position:absolute;top:0;right:0}.avatar{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:500 11px/1 var(--font-label);flex-shrink:0;background:var(--soft);color:var(--text)}.avatar.small{width:28px;height:28px;font-size:9px}.avatar.large{width:44px;height:44px;font-size:12px}.attendance-strip{display:flex;align-items:center;gap:12px;min-height:64px;padding:8px max(24px,calc((100vw - 1120px)/2));border-bottom:1px solid var(--line);background:var(--paper);color:var(--muted);font-size:12px}.attendance-strip>span:first-child{display:flex;align-items:center;gap:8px;min-width:0;flex:1;flex-wrap:wrap}.attendance-strip strong{font-weight:500;color:var(--text);overflow-wrap:anywhere}.attendance-strip .button,.attendance-strip .text-button{margin-left:auto;padding-inline:12px;font-size:10px;flex-shrink:0}.attendance-strip .text-button{color:var(--text);text-decoration:underline;text-underline-offset:3px}.attendance-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.attendance-status i{width:5px;height:5px;background:#8a8a83}.attendance-status.on{color:var(--ink)}.attendance-status.on i{background:var(--ink)}.main-content{width:100%;max-width:1168px;margin:0 auto;padding:32px 24px 64px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.heading-copy{min-width:0}.page-heading h1{font-size:28px;line-height:1.2;overflow-wrap:anywhere}.page-heading p{font-size:13px;color:var(--muted);line-height:1.6;margin-top:6px;max-width:640px}.page-heading>.button,.page-heading>.button-group{flex-shrink:0}.eyebrow{display:block;font:500 10px/1.5 var(--font-label);text-transform:uppercase;letter-spacing:.035em;color:var(--muted);margin-bottom:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 16px;border:1px solid transparent;font:500 11px/1.4 var(--font-label);text-transform:uppercase;letter-spacing:.015em;white-space:nowrap;text-decoration:none}.button.primary{background:var(--accent);border-color:var(--accent);color:var(--ink)}.button.primary:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.button.secondary{background:transparent;border-color:#8b8b84;color:var(--text)}.button.secondary:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.button.danger{background:transparent;border-color:#a23e29;color:#913321}.button.danger:hover{background:#913321;border-color:#913321;color:#fff}.button.full{width:100%}.button-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.text-button,.back-link{border:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 0;min-height:44px;font:500 11px/1.5 var(--font-label);color:var(--muted)}.text-button:hover,.back-link:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.back-link{margin:-8px 0 16px}.work-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.tabs{display:flex;align-items:center;gap:20px;min-width:0;overflow-x:auto}.tabs :is(button,a){display:inline-flex;align-items:center;gap:6px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);min-height:44px;padding:10px 0;font-size:13px;white-space:nowrap;text-decoration:none}.tabs :is(button,a).active,.tabs button[aria-pressed=true],.tabs a[aria-current=page]{border-color:var(--ink);color:var(--text)}.tabs :is(button,a):hover{color:var(--text)}.tabs a>span{padding:1px 5px;background:var(--soft);font:500 10px/1.4 var(--font-label)}.search-field{display:flex;align-items:center;gap:8px;width:248px;min-height:44px;padding:8px 12px;border:1px solid #aaa9a2;color:var(--muted);background:var(--surface);flex-shrink:0}.search-field input{width:100%;border:0;outline:0;background:transparent;font-size:13px;color:var(--text)}.search-field:focus-within{outline:3px solid var(--focus);outline-offset:3px}.search-field input::placeholder{color:var(--muted)}.search-field kbd{font:500 10px/1.5 var(--font-label);color:var(--muted)}.task-list,.project-list,.updates-list{border:1px solid var(--line);background:var(--surface)}.task-row{display:flex;align-items:center;gap:24px;min-height:92px;padding:16px 20px;border-bottom:1px solid var(--line)}.task-row:last-child,.project-row:last-child,.update-row:last-child{border-bottom:0}.task-main{display:block;min-width:0;flex:1;text-align:left;border:0;padding:0;background:transparent;color:var(--text)}button.task-main{min-height:44px}button.task-main:hover .task-title{text-decoration:underline;text-underline-offset:3px}.task-title{display:block;font-size:15px;font-weight:500;line-height:1.45;overflow-wrap:anywhere;text-align:left}button.task-title{border:0;background:transparent;padding:0;min-height:44px;color:inherit}.task-title.completed{color:var(--muted)}.task-meta{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin-top:7px;font-size:12px;color:var(--muted);line-height:1.45}.task-meta>span,.task-meta>div{display:inline-flex;align-items:center;gap:6px}.task-meta .avatar{width:20px;height:20px;font-size:8px}.task-row-end{display:flex;align-items:center;gap:16px;flex-shrink:0}.status-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 8px;font:500 10px/1.4 var(--font-label);background:#efefea;color:#52524d;border:1px solid #d6d6d0;white-space:nowrap}.status-badge>span{width:4px;height:4px;background:currentColor}.status-badge.in_progress{background:#e2f6fa;border-color:#a7dae5;color:#006781}.status-badge.review{background:#fff3bd;border-color:#e0ca68;color:#725800}.status-badge.done{background:#edede7;border-color:#cecec6;color:var(--ink)}button.status-badge{min-height:44px}.row-action{min-width:132px;min-height:44px;padding:10px 12px;font:500 10px/1.4 var(--font-label)}.due{font-size:12px;color:var(--muted)}.due.overdue{color:#9d3b26}.badge{display:inline-flex;align-items:center;padding:4px 8px;font:500 10px/1.5 var(--font-label);background:var(--soft);color:var(--muted)}.badge.blocked{background:#f6e4dc;color:#9d3b26}.empty{padding:40px 24px;text-align:center;color:var(--muted)}.empty>svg{color:var(--muted);margin-bottom:12px}.empty h2,.empty h3{font-size:21px;color:var(--text);line-height:1.3}.empty p{font-size:13px;line-height:1.7;margin:8px auto 0;max-width:420px}.empty .button{margin-top:20px}.project-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;text-decoration:none}.project-row:hover{background:#f7f7f2}.project-row-main{min-width:0;flex:1}.project-row-main h2,.project-row-main strong{display:block;font-family:var(--font-display);font-size:22px;line-height:1.3;font-weight:500;overflow-wrap:anywhere}.project-row-main p,.project-row-main small{display:block;margin-top:4px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.project-row-end{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted);flex-shrink:0}.project-context{padding:20px;background:var(--surface);border:1px solid var(--line);margin-bottom:24px}.project-context p{font-size:14px;line-height:1.7;white-space:pre-line;overflow-wrap:anywhere}.project-context>div{display:flex;align-items:center;gap:8px 20px;flex-wrap:wrap}.project-context>div+p,.project-context p+div{margin-top:16px}.project-context span{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.project-links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:16px}.project-links a{max-width:100%;white-space:normal;overflow-wrap:anywhere}.project-context .detail-meta{display:flex;margin:0;gap:8px 24px}.project-context details{margin-top:12px}.project-context summary,.completed-work summary,.settings-section summary{min-height:44px;cursor:pointer;align-content:center;padding-block:10px;color:var(--muted);font-size:13px}.project-context details p{padding:8px 0}.completed-work{margin-top:20px}.completed-work>summary{margin-bottom:8px}.completed-work>.form-note{margin:8px 0}.completed-work .task-list{background:var(--paper)}.attendance-panel{border:1px solid var(--line);background:var(--surface)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px}.panel-heading h2{font-size:20px;line-height:1.3}.panel-heading p{color:var(--muted);font-size:12px;margin-top:4px;line-height:1.6}.attendance-panel input[type=month]{min-height:44px;padding:8px 12px;border:1px solid #aaa9a2;background:transparent;font-size:13px}.table-scroll{overflow-x:auto}.summary-table{width:100%;border-collapse:collapse;text-align:left}.summary-table th{padding:12px 20px;border-block:1px solid var(--line);background:#f6f6f1;font:500 10px/1.5 var(--font-label);text-transform:uppercase;color:var(--muted)}.summary-table td{padding:16px 20px;border-bottom:1px solid var(--line);font-size:13px;font-variant-numeric:tabular-nums}.member-cell{display:flex;align-items:center;gap:8px}.attendance-records{padding:16px 20px;color:var(--muted);font-size:13px}.attendance-records summary,.activity-details summary,.optional-fields summary{min-height:44px;cursor:pointer;display:list-item;align-content:center;padding-block:10px}.attendance-panel>.form-note{margin:0;padding:16px 20px 0}.attendance-record{display:flex;align-items:center;gap:12px 24px;margin-top:12px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;flex-wrap:wrap}.attendance-record>span:first-child{flex:1;min-width:160px}.attendance-record strong{font-weight:500;color:var(--text)}.attendance-record small{display:block;color:var(--muted);font-size:11px;margin-top:4px;overflow-wrap:anywhere}.attendance-record .text-button{margin-left:auto}.updates-list{max-width:880px}.update-row{display:flex;align-items:flex-start;gap:16px;padding:20px;border:0;border-bottom:1px solid var(--line);width:100%;text-align:left;color:var(--text);background:transparent}.update-row:hover{background:#f7f7f2}.update-row.unread{background:#fffde9}.update-row>svg{margin-top:3px;color:var(--muted)}.update-copy{min-width:0;flex:1}.update-copy strong{display:block;font-weight:500;font-size:14px}.update-copy p,.update-copy>span{display:block;font-size:13px;line-height:1.65;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.update-copy small{display:block;margin-top:8px;color:var(--muted);font:500 10px/1.5 var(--font-label)}.unread-dot{width:6px;height:6px;margin-top:8px;flex-shrink:0;background:var(--ink)}.dialog{position:fixed;width:720px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #a3a39d;background:var(--paper);color:var(--text);overflow-y:auto;overscroll-behavior:contain;scroll-padding-top:88px}.dialog::backdrop{background:#10101099}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;z-index:1;padding:16px 24px;border-bottom:1px solid var(--line);background:var(--paper)}.dialog-heading h2{font-size:24px;line-height:1.3;min-width:0;overflow-wrap:anywhere}.dialog-content{min-width:0}.editor,.task-detail{padding:24px}.editor .editor{padding:0}.editor label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;color:var(--muted);font-size:13px}.editor input:not([type=checkbox]),.editor select,.editor textarea,.task-detail input:not([type=checkbox]),.task-detail textarea,.task-detail select{display:block;width:100%;min-height:48px;padding:12px;border:1px solid #96968f;background:var(--surface);color:var(--text);font-size:14px;line-height:1.5}.editor textarea,.task-detail textarea{min-height:88px;resize:vertical}.editor input::placeholder,.editor textarea::placeholder,.task-detail input::placeholder,.task-detail textarea::placeholder{color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.editor .form-grid>div{padding-bottom:20px}.editor .form-grid>div p{color:var(--text);font-size:14px}.editor .check-label,.check-label{display:flex;flex-direction:row;align-items:center;gap:8px;min-height:44px;color:var(--muted);font-size:13px;line-height:1.6}.field-label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.field-label-row .field-label{margin:0}.form-note{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:20px}.dialog-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.dialog-actions p{margin-right:auto;color:var(--muted);font-size:12px}.modal-error,.validation-error{padding:12px 16px;border-left:3px solid #a13a27;background:#fae9e2;color:#8f301e;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.modal-error{margin:20px 24px 0}.validation-error{margin-bottom:16px}.discard-prompt,.access-confirmation{padding:16px;background:#fff7ce;border:1px solid #c5ae39;font-size:13px;line-height:1.6}.discard-prompt{margin:20px 24px 0}.discard-prompt p,.access-confirmation p{margin-bottom:12px}.discard-prompt .button-group,.access-confirmation .button-group{justify-content:flex-end}.optional-fields{margin:20px 0;padding:8px 0;border-block:1px solid var(--line);color:var(--muted);font-size:13px}.optional-fields[open] summary{margin-bottom:12px}.optional-fields .form-grid{margin-top:12px}.links-editor{margin-bottom:20px}.link-edit-row{display:grid;grid-template-columns:1fr 1.6fr 44px;gap:8px;align-items:center;margin-bottom:8px}.inline-form{display:flex;align-items:center;gap:8px}.inline-form input{flex:1}.inline-form .button{flex-shrink:0}.checklist-item{display:flex;align-items:center;gap:8px;min-height:44px;margin-bottom:4px;font-size:14px}.checklist-item>span,.checklist-item>label{flex:1;min-width:0;overflow-wrap:anywhere}.checklist-item .checked{text-decoration:line-through;color:var(--muted)}.task-detail h3{font-size:22px;line-height:1.3;overflow-wrap:anywhere}.detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:16px 0 24px}.detail-meta>div,.detail-meta>span{min-width:0;font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.detail-meta dt{font:500 10px/1.5 var(--font-label);text-transform:uppercase;color:var(--muted);width:100%}.detail-meta dd{margin:0;color:var(--text);overflow-wrap:anywhere}.detail-meta strong{font-weight:500;color:var(--text)}.task-detail>.detail-meta{margin-top:0}.task-detail .detail-meta>div{flex-direction:column;align-items:flex-start;gap:4px;overflow-wrap:anywhere}.task-detail .detail-meta .field-label{font:500 10px/1.5 var(--font-label);text-transform:uppercase;margin:0}.task-detail .detail-meta small{font-size:12px;color:var(--muted)}.detail-section{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.detail-section h3{font-size:18px;margin-bottom:12px}.detail-section p{font-size:14px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}.task-detail>.editor{padding:20px 0 0}.detail-section h3>small{font:500 10px/1.5 var(--font-label);color:var(--muted);margin-left:6px}.task-detail .button-group>a{max-width:100%;white-space:normal;overflow-wrap:anywhere}.task-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0}.task-actions>p{width:100%;color:var(--muted);font-size:12px}.task-discussion{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.task-discussion h3{font-size:20px;margin-bottom:20px}.comment{display:flex;gap:12px;margin-bottom:20px}.comment>div{min-width:0;flex:1}.comment strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:500}.comment small{font:500 10px/1.5 var(--font-label);color:var(--muted)}.comment p{font-size:14px;color:var(--muted);line-height:1.7;margin-top:4px;white-space:pre-wrap;overflow-wrap:anywhere}.comment-form{margin-top:16px}.comment-form textarea{margin-bottom:12px}.comment-form .button{display:flex;margin-left:auto}.activity-details{margin-top:20px;color:var(--muted);font-size:12px}.activity-details p{padding:12px 0;border-top:1px solid var(--line);line-height:1.7}.activity-details p strong{color:var(--text);font-weight:500}.activity-details small{display:block;font:500 10px/1.5 var(--font-label);color:var(--muted);margin-top:4px}.settings-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.settings-section:first-child{margin:0 0 24px;padding:0;border:0}.settings-section h3,.email-health h3{font-size:20px;line-height:1.3;margin-bottom:12px}.settings-section>p{color:var(--muted);font-size:12px;line-height:1.7}.settings-section>.button{margin-bottom:16px}.people-list{margin-top:12px}.person-row{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.person-copy{min-width:0;flex:1}.person-copy strong{display:block;font-size:14px;font-weight:500}.person-copy small,.person-copy p{display:block;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.person-access{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;font-size:12px;color:var(--muted)}.person-access .text-button{font-size:10px}.access-confirmation{margin-top:16px}.email-health{padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.email-health p{color:var(--muted);font-size:12px;line-height:1.7}.sign-out{margin-top:24px}.toast{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--ink);color:var(--paper);--focus:#ffe000;--text:#f6f6f3;--muted:#b0b0ac;--soft:#242423;font-size:13px;line-height:1.6;max-width:calc(100vw - 32px);width:max-content}.toast.error{background:#8f301e;--soft:#752616}.toast>span{min-width:0;overflow-wrap:anywhere}.toast .icon-button{color:var(--paper)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;background:var(--ground);color:var(--accent);--muted:#b0b0ac}.loading-screen p{color:var(--muted);font-size:14px}.preview-banner{display:flex;align-items:center;gap:12px;padding:8px max(24px,calc((100vw - 1120px)/2));background:#fff4ad;font-size:11px;color:var(--ink)}.preview-badge{font:500 10px/1.5 var(--font-label);white-space:nowrap}.login-screen{min-height:100vh;display:grid;grid-template-columns:1.12fr 1fr;background:var(--ground)}.login-art{--text:#f6f6f3;--muted:#b0b0ac;--focus:#ffe000;color:var(--text);padding:48px 56px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.login-art .wordmark{font-size:36px}.login-art h1{font-size:clamp(40px,4.4vw,64px);line-height:1.06;margin:24px 0}.login-art p{font-size:16px;line-height:1.8;color:var(--muted)}.login-dots{display:flex;gap:8px;margin-top:40px}.login-dots span{width:12px;height:12px;background:var(--paper)}.login-dots span:nth-child(2){background:#b0b0ac}.login-dots span:nth-child(3){background:var(--cyan)}.login-dots span:nth-child(4){background:var(--accent)}.login-footer{font:500 11px/1.5 var(--font-label);color:var(--muted)}.login-panel{display:flex;align-items:center;justify-content:center;background:var(--paper);padding:48px}.login-box{width:100%;max-width:400px}.login-box h1,.login-box h2{font-size:32px;line-height:1.15;margin-bottom:20px}.login-box>p{font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:24px}.login-box>p.validation-error,.login-box>p.modal-error{color:#8f301e;margin:0 0 20px}.login-box .button{min-height:52px;gap:12px;font-size:12px}.login-note{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;line-height:1.6;color:var(--muted);margin-top:24px}.brand-heading-line{position:relative;display:inline-grid;max-width:100%;vertical-align:top;isolation:isolate}.brand-heading-line+.brand-heading-line{display:grid;width:fit-content}.brand-heading-text{grid-area:1/1;min-width:0}.brand-heading-cover{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-user-select:none;user-select:none;transform:scaleX(0);transform-origin:left center;z-index:1}.brand-heading-cover.yellow{background:#ffe000}.brand-heading-cover.paper{background:#f4f4ec;z-index:2}.brand-heading[data-heading-motion=running] .brand-heading-text{opacity:0}.heading-dot{color:var(--accent)}@media(max-width:1080px){.workspace-name{display:none}.topbar{gap:16px}.main-nav{margin-left:8px}.login-art{padding:40px 32px}.login-panel{padding:32px}}@media(max-width:900px){.brand-heading-cover{display:none}.brand-heading[data-heading-motion=running] .brand-heading-text{opacity:1!important}}@media(max-width:760px){.topbar{padding:12px 20px 0;gap:8px 16px;flex-wrap:wrap}.brand-button{order:1}.top-actions{order:2}.main-nav{order:3;width:100%;margin:4px 0 0;gap:0;justify-content:space-between}.nav-item{flex:1;min-height:48px;font-size:13px;padding:10px 8px;border-bottom:3px solid transparent}.nav-item.active,.nav-item[aria-current=page]{border-bottom-color:var(--accent);background:transparent;color:var(--accent)}.nav-item svg{width:16px;height:16px}.top-actions .avatar{display:none}.attendance-strip{padding:8px 20px;gap:4px 8px;font-size:11px}.attendance-strip>span:first-child{display:grid;grid-template-columns:15px minmax(0,1fr);gap:2px 8px}.attendance-strip .attendance-status{grid-column:2;overflow-wrap:anywhere}.attendance-strip .button,.attendance-strip .text-button{font-size:10px;min-height:44px;padding-inline:8px}.attendance-status{font-size:11px}.main-content{padding:24px 20px max(40px,env(safe-area-inset-bottom))}.page-heading{gap:16px;align-items:flex-start;margin-bottom:20px}.page-heading h1{font-size:28px}.page-heading p{font-size:12px}.page-heading>.button{font-size:10px;padding-inline:12px}.page-heading>.button-group{justify-content:flex-end}.work-toolbar{flex-wrap:wrap;gap:12px}.tabs{gap:20px;width:100%}.tabs :is(button,a){font-size:12px}.search-field{width:100%}.search-field input{font-size:16px}.search-field kbd{display:none}.task-row{gap:12px;padding:16px;align-items:stretch;flex-direction:column}.task-title{font-size:15px}.task-meta{font-size:12px;gap:6px 12px}.task-row-end{justify-content:space-between;gap:12px;width:100%}.row-action{min-width:130px;font-size:10px}.project-row{align-items:flex-start;flex-direction:column;gap:12px;padding:16px}.project-row-main h2,.project-row-main strong{font-size:21px}.project-row-end{width:100%;justify-content:space-between;gap:12px;font-size:11px;flex-wrap:wrap}.project-context{padding:16px}.project-context p{font-size:13px}.panel-heading{padding:16px;flex-wrap:wrap;align-items:flex-start}.panel-heading>.button-group{width:100%}.attendance-panel input[type=month]{flex:1;min-width:140px;font-size:16px}.summary-table{table-layout:fixed}.summary-table th{padding:10px 8px;font-size:9px;overflow-wrap:anywhere}.summary-table td{padding:14px 8px;font-size:12px;overflow-wrap:anywhere}.summary-table th:first-child,.summary-table td:first-child{width:34%;padding-left:16px}.summary-table th:last-child,.summary-table td:last-child{padding-right:16px}.summary-table .member-cell{gap:6px;flex-wrap:wrap}.summary-table .avatar{display:none}.summary-table .badge{font-size:9px;padding-inline:5px}.attendance-records{padding:12px 16px}.attendance-panel>.form-note{padding:16px 16px 0}.attendance-record{gap:8px 12px}.update-row{padding:16px;gap:12px}.empty{padding:32px 20px}.dialog{max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);scroll-padding-top:80px}.dialog-heading{padding:12px 20px}.dialog-heading h2{font-size:22px}.editor,.task-detail{padding:20px}.modal-error,.discard-prompt{margin:16px 20px 0}.editor input:not([type=checkbox]),.editor select,.editor textarea,.task-detail input:not([type=checkbox]),.task-detail textarea,.task-detail select{font-size:16px}.detail-meta{gap:12px 16px}.task-actions .button{flex:1}.person-row{gap:10px;align-items:flex-start;flex-wrap:wrap}.person-copy{flex:1;min-width:calc(100% - 56px)}.person-access{padding-left:38px;width:100%;justify-content:flex-start}.person-access.text-button{font-size:10px}.toast{bottom:max(16px,env(safe-area-inset-bottom));font-size:12px;gap:8px;padding:8px 12px}.preview-banner{padding:8px 20px;font-size:10px;gap:8px}.login-screen{grid-template-columns:1fr}.login-art{min-height:330px;padding:32px 24px}.login-art .wordmark{font-size:32px}.login-art h1{font-size:40px;margin:24px 0 16px;line-height:1.1}.login-art p{font-size:14px;line-height:1.7}.login-art .eyebrow{font-size:10px;margin-top:24px}.login-dots,.login-footer{display:none}.login-panel{padding:32px 24px 40px}.login-box h2{font-size:32px;margin-bottom:20px}.login-box>p{font-size:14px}.login-note{font-size:10px}}@media(max-width:480px){.page-heading{flex-wrap:wrap}.page-heading>.button-group{width:100%;justify-content:flex-start}.form-grid{grid-template-columns:1fr}.detail-meta{grid-template-columns:1fr;margin-bottom:20px}.link-edit-row{grid-template-columns:1fr 44px}.link-edit-row input[type=url]{grid-column:1;grid-row:2}.link-edit-row .icon-button{grid-column:2;grid-row:1}.dialog-actions .button{flex:1}.attendance-strip>span:not(.attendance-status):not(:first-child){font-size:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.brand-heading-cover{display:none}.brand-heading[data-heading-motion=running] .brand-heading-text{opacity:1!important}}@media(forced-colors:active){.brand-heading-cover{display:none}.brand-heading[data-heading-motion=running] .brand-heading-text{opacity:1!important}.attendance-status i,.status-badge>span,.unread-dot{background:currentColor}.nav-item.active{border-color:currentColor}}@media print{.topbar,.attendance-strip,.preview-banner,.toast,.work-toolbar,.row-action{display:none}.main-content{padding:0;max-width:none}.brand-heading-cover{display:none}.brand-heading[data-heading-motion=running] .brand-heading-text{opacity:1!important}.task-row,.project-row{break-inside:avoid}}
