@charset "UTF-8";
:root{--ink:#172a2b;--muted:#637373;--paper:#f5f6f2;--line:#dce3dd;--teal:#153e38;--accent:#cae77f;--white:#fff;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:38px;line-height:1.15;font-weight:600;letter-spacing:-1.5px}h2{font-size:24px;line-height:1.25;font-weight:600;letter-spacing:-.6px}h3{font-size:20px;letter-spacing:-.4px}p+h2,h2+p{margin-top:12px}.muted,.quiet{color:var(--muted)}.small{font-size:13px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;margin-bottom:15px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;background:var(--accent);color:var(--teal);font-size:31px;font-weight:800;letter-spacing:-4px;padding-right:4px;flex-shrink:0;border-radius:8px}.brand-sub{display:block;font-size:8px;font-weight:500;letter-spacing:1.45px;margin-top:1px}.brand,.guest-brand{display:flex;align-items:center;gap:13px;font-size:13px;letter-spacing:2px;font-weight:700}.skip{position:absolute;left:20px;top:-100px;background:var(--white);padding:12px;z-index:20}.skip:focus{top:12px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #668d32;outline-offset:4px}.guest-page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 10% 75%,#e9efdd 0,transparent 55%),var(--paper)}.guest-brand{padding:42px 6vw}.guest-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;align-items:center;width:min(1120px,88vw);margin:auto;padding:25px 0 65px}.guest-intro h1{font-size:clamp(40px,4.8vw,66px);line-height:1.07;letter-spacing:-2.9px}.guest-intro .eyebrow{color:#527d60}.intro-copy{max-width:370px;margin-top:27px;font-size:17px;color:var(--muted);line-height:1.75}.intro-line{height:1px;width:65px;background:#aebc9c;margin:38px 0 20px}.quiet{font-size:12px}.guest-card{background:var(--white);padding:38px;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px #1d332908}.guest-card h2{font-size:30px}.guest-card>.muted{font-size:14px}.guest-footer{padding:22px 6vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.stack{display:flex;flex-direction:column;gap:20px;margin:27px 0 20px}.stack label{font-size:12px;font-weight:600;display:block}.stack input{display:block;width:100%;margin-top:7px;padding:13px 14px;border:1px solid #d6dfd9;border-radius:8px;background:#fafbf9;color:var(--ink);min-width:0}.stack input:focus{background:white}.field-hint{display:block;color:var(--muted);font-weight:400;margin-top:7px;font-size:11px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;padding:13px 18px;border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:600;min-height:46px}.primary{background:var(--teal);color:white}.primary:hover{background:#245249}.light{background:var(--accent);color:var(--teal)}.light:hover{background:#d8efa6}.notice{padding:12px 14px;border-radius:8px;margin-top:20px;font-size:13px}.success{background:#edf5df;color:#375322}.error{background:#fff0ec;color:#8c3020}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px}.app-page{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:250px;background:#153831;color:#f0f4ec;padding:33px 23px 24px;display:flex;flex-direction:column}.sidebar .brand{margin-bottom:49px;font-size:11px;letter-spacing:1.6px}.sidebar .brand-sub{font-size:7px;letter-spacing:1px}.nav-label{font-size:9px;letter-spacing:1.7px;color:#9ab3a7;padding:0 12px;margin-bottom:12px}.nav-link{display:flex;align-items:center;gap:13px;padding:10px 13px;margin:3px 0;border-radius:7px;font-size:13px}.nav-link.active{background:#cbe67f;color:#1d3e2d;font-weight:600}.nav-link:not(.unavailable):hover{background:#ffffff12}.nav-link.active:hover{background:#d9eca7}.unavailable{color:#9fb2a9}.nav-dot{height:5px;width:5px;border:1px solid #91a79b;border-radius:2px;margin-left:4px;margin-right:5px}.nav-help{font-size:10px;line-height:1.7;color:#a2b7ac;padding:15px 12px;max-width:180px}.sidebar-bottom{margin-top:auto}.profile-link{display:flex;align-items:center;gap:11px;padding:20px 0 12px;border-top:1px solid #ffffff18;font-size:12px;margin-top:15px}.profile-link small{display:block;font-size:10px;color:#adbbb1;margin-top:2px}.avatar{height:34px;width:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#ffffff13;color:#d3e6bb;font-size:11px}.logout{width:100%;border:0;background:transparent;color:#bccac0;font-size:11px;text-align:left;padding:9px 0}.logout span{float:right}.workspace{margin-left:250px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 45px;font-size:12px;background:#fbfcf9}.breadcrumb{color:#8b9590;margin-left:10px}.secure-label{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:8px}.status-dot{height:6px;width:6px;background:#628b49;border-radius:50%}.main-content{padding:40px 45px 60px;max-width:1450px;width:100%;margin:auto;flex:1}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:31px}.page-heading .eyebrow{color:#6a7c67;margin-bottom:10px}.page-heading .muted{margin-top:12px;font-size:14px}.date-badge{font-size:11px;color:#6a796f;border:1px solid var(--line);border-radius:7px;padding:9px 13px;white-space:nowrap}.welcome-panel{background:var(--teal);color:white;border-radius:var(--radius);padding:36px 38px;display:grid;grid-template-columns:1.6fr 1fr;gap:30px;overflow:hidden;min-height:282px}.welcome-panel h2{font-size:32px;margin:17px 0 12px}.welcome-panel p{max-width:500px;font-size:14px;line-height:1.8;color:#c1d0c7}.welcome-panel .button{margin-top:24px}.pill{display:inline-block;font-size:9px;letter-spacing:.5px;border:1px solid #6c8b74;color:#d0e4b8;border-radius:20px;padding:4px 10px}.frame-art{display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-6deg);padding:8px}.frame-inner{width:150px;height:150px;border:1px solid #a8c77a;color:#cfe895;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:47px;line-height:.9;letter-spacing:-3px;font-weight:650;box-shadow:12px 12px 0 #ffffff06}.frame-caption{font-size:7px;letter-spacing:3px;color:#b8cba2;margin-top:15px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:36px 0 18px}.section-heading h2{font-size:19px}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-card{padding:25px;background:white;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column}.step{font-size:8px;letter-spacing:1.4px;color:#7b876e;margin-bottom:19px}.feature-card p{font-size:12px;line-height:1.75;margin:12px 0 25px;color:var(--muted)}.future-label{font-size:10px;color:#71816c;padding-top:17px;border-top:1px solid #edf0e9;margin-top:auto}.app-footer{display:flex;justify-content:space-between;padding:18px 45px;border-top:1px solid var(--line);color:#839087;font-size:10px}.content-card{border:1px solid var(--line);border-radius:var(--radius);background:white;padding:30px}.narrow{max-width:600px}.settings-list{margin:25px 0}.settings-list>div{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.settings-list dt{color:var(--muted)}.settings-list dd{margin:0;text-align:right}.menu-toggle{display:none}.error-page{min-height:100vh;display:grid;place-items:center;padding:25px}.error-page .guest-card{max-width:570px}.error-page .eyebrow{margin-top:25px}.error-page h1{font-size:28px}.error-page p{margin:20px 0}.error-page .small{margin-bottom:0}
@media(min-width:1500px){.main-content{padding-top:55px}.welcome-panel{min-height:310px}}@media(max-width:1050px){.sidebar{width:215px;padding:28px 17px}.workspace{margin-left:215px}.topbar{padding:0 28px}.main-content{padding:32px 28px}.three-columns{gap:12px}.feature-card{padding:20px}.page-heading{align-items:flex-start}.date-badge{display:none}.welcome-panel{padding:29px}.frame-inner{width:115px;height:115px}.guest-grid{gap:6vw}.guest-card{padding:28px}}@media(max-width:760px){.guest-grid{grid-template-columns:1fr;max-width:480px;gap:30px;padding:10px 0 40px}.guest-intro h1{font-size:40px}.guest-intro .intro-copy,.intro-line,.quiet{display:none}.guest-brand{padding:25px 6vw}.guest-footer{gap:20px}.sidebar{transform:translateX(-100%);transition:transform .15s;width:250px;z-index:10}.menu-open .sidebar{transform:translateX(0)}.menu-toggle{display:block;position:fixed;right:15px;top:16px;z-index:15;background:var(--white);border:1px solid var(--line);border-radius:7px;padding:8px 12px;font-size:12px}.workspace{margin-left:0}.topbar{height:68px;padding:0 22px}.secure-label{display:none}.main-content{padding:28px 22px}.page-heading h1{font-size:32px}.welcome-panel{grid-template-columns:1fr;padding:27px}.frame-art{display:none}.three-columns{grid-template-columns:1fr}.section-heading{gap:20px}.section-heading .small{display:none}.app-footer{padding:18px 22px}.settings-list>div{flex-direction:column;gap:5px}.settings-list dd{text-align:left}.content-card{padding:22px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Core data: readable forms and tables across desktop and mobile. */
select,textarea{font:inherit;color:var(--ink)}select:focus-visible,textarea:focus-visible{outline:3px solid #668d32;outline-offset:3px}.filter-bar{display:flex;gap:15px;align-items:flex-end;margin-bottom:22px;flex-wrap:wrap}.filter-bar label{font-size:12px;display:block}.filter-bar input,.filter-bar select,.core-form select,.core-form textarea{display:block;width:100%;border:1px solid #d6dfd9;background:#fafbf9;border-radius:8px;padding:12px;margin-top:7px}.filter-bar input{min-width:260px}.table-card{padding:0;overflow:hidden}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}.data-table th{font-size:11px;color:var(--muted);background:#f9fbf7;font-weight:600}.data-table td,.data-table th{padding:18px 22px;border-bottom:1px solid var(--line)}.data-table tbody tr:last-child td{border-bottom:0}.record-link{font-weight:600;text-decoration:underline;text-underline-offset:4px}.record-sub{display:block;margin-top:4px}.state-tag{display:inline-block;padding:4px 10px;background:#edf2e8;border-radius:20px;font-size:11px;white-space:nowrap}.empty-state{padding:40px 0;text-align:center}.empty-state h2{font-size:22px;margin-bottom:12px}.back-link{display:inline-block;font-size:12px;color:var(--muted);margin-bottom:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.core-form{margin:0}.core-form fieldset{border:0;margin:0;padding:0;min-width:0}.core-form legend{font-size:12px;font-weight:600;margin-bottom:10px}.full-width{grid-column:1/-1}.core-form .check-label{display:flex;align-items:center;gap:10px;font-weight:400;min-height:38px}.core-form input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--teal)}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px}.form-actions{display:flex;gap:12px;border-top:1px solid var(--line);padding-top:23px}.field-error{display:block;color:#8c3020;font-size:12px;margin-top:5px}.core-form input:disabled,.core-form select:disabled,.core-form textarea:disabled{opacity:1;color:var(--muted)}.notice+.content-card{margin-top:20px}.form-note{margin-top:18px}.related{margin-top:25px}.related-link{display:block;padding:15px 0;border-bottom:1px solid var(--line)}.pagination{display:flex;gap:20px;align-items:center;justify-content:center;margin-top:20px;font-size:12px}.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}@media(max-width:760px){.form-grid{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.page-heading{flex-wrap:wrap}.filter-bar{align-items:stretch}.filter-bar label{flex:1}.filter-bar input{min-width:150px}.data-table td,.data-table th{padding:15px 12px}.form-actions{flex-wrap:wrap}.data-table{min-width:530px}.sidebar{overflow-y:auto}}
.table-scroll{position:relative}
.task-filters label{min-width:150px;max-width:100%}.task-filters select{max-width:290px}.overdue{color:#a33a24;font-weight:600}.effort-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:24px}.effort-strip>div{padding:20px;background:#eaf0e2;border-radius:12px}.effort-strip span{display:block;font-size:12px;color:var(--muted)}.effort-strip strong{display:block;font-size:23px;margin-top:8px}.task-editor{margin-top:25px}details summary{cursor:pointer;font-weight:600}.stack>select{padding:12px;border:1px solid var(--line);border-radius:8px;max-width:100%}@media(max-width:760px){.effort-strip{grid-template-columns:1fr}.task-filters select{max-width:100%}}
.timer-clock{font-size:42px;font-variant-numeric:tabular-nums;margin:15px 0}.timer-warning[hidden]{display:none}.task-editor form>button{margin-top:18px}.filter-bar select{max-width:280px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.summary-grid section{min-width:0}.summary-grid h2{font-size:18px}.summary-grid dl>div{display:flex;justify-content:space-between;gap:12px;margin:12px 0;font-size:12px}.summary-grid dd{margin:0;white-space:nowrap}@media(max-width:760px){.summary-grid{grid-template-columns:1fr}.filter-bar select{max-width:100%}.timer-clock{font-size:34px}}
.mfa-secret{font-family:monospace;font-size:17px;overflow-wrap:anywhere;background:#edf3e5;padding:16px;margin-top:20px;letter-spacing:1px}.recovery-codes{font-family:monospace;line-height:2}.quote-line{border:1px solid var(--line);border-radius:10px;padding:20px;margin:22px 0}.line-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px}.line-actions button{border:1px solid var(--line);background:white;padding:8px;border-radius:5px}.line-total{margin-right:auto;font-weight:700}.quote-total{font-size:22px;margin:20px 0}.version-links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.quote-editor fieldset{min-width:0}.sidebar{overflow-y:auto}.sidebar .brand{margin-bottom:30px}.sidebar .nav-link{padding-top:8px;padding-bottom:8px}.sidebar .nav-help{display:none}

.project-time-matrix .hours{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.project-time-matrix .project-total>th,.project-time-matrix .project-total>td{background:#eaf0e2;font-weight:700;border-top:2px solid var(--line)}.project-time-matrix tbody th[scope=row]{font-size:13px}.project-time-matrix tbody tr:not(.project-total)>th{background:var(--white);font-weight:400}.project-time-matrix .project-total small{font-weight:400}.project-time-matrix td,.project-time-matrix th{vertical-align:top}
