
:root{--ink:#233334;--muted:#74817e;--green:#146b58;--line:#e1e8e3;--paper:#f4f7f4;--bs-primary:#146b58}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Tahoma,Arial,sans-serif;font-size:14px}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:32px;font-weight:650;letter-spacing:-1px;margin:8px 0 10px}h2{font-size:19px;font-weight:650;margin-bottom:14px}h3{font-size:15px;font-weight:650;margin-top:10px}p{line-height:1.7}small{color:var(--muted)}.app-shell{display:flex;min-height:100vh}.sidebar{width:236px;flex-shrink:0;padding:34px 22px;background:#102f2c;color:#d8e4df;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:650;color:#fff;line-height:1.2;margin-bottom:48px}.brand:hover{color:#fff;text-decoration:none}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:#a0b6af;margin-top:6px}.brand-icon{display:grid;place-items:center;width:38px;height:42px;background:#d3e7ac;color:#183e30;border-radius:12px 12px 12px 2px;font-weight:750}.nav-label{font-size:10px;letter-spacing:1.8px;color:#90aaa1;margin:0 14px 15px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.sidebar nav a{padding:12px 14px;border-radius:7px;color:#becfc8;font-size:13px}.sidebar nav a.active,.sidebar nav a:hover{background:#244941;color:#fff;text-decoration:none}.sidebar-note{margin-top:auto;padding:36px 12px 0;color:#819f94;line-height:1.6;font-size:12px}.workspace{min-width:0;flex:1}.topbar{height:76px;display:flex;justify-content:space-between;align-items:center;padding:0 38px;background:#fff;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar form{margin:0}main{padding:38px;max-width:1700px;margin:auto}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:var(--green)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-heading p,.section-heading p{color:var(--muted);margin:0}.btn{font-size:13px;padding:10px 18px;border-radius:6px;font-weight:600}.btn-primary{background:var(--green);border-color:var(--green)}.btn-primary:hover,.btn-primary:disabled{background:#105746;border-color:#105746}.btn-outline-primary{color:var(--green);border-color:#aac2b5}.btn-outline-primary:hover{background:var(--green);border-color:var(--green)}.btn-sm{padding:6px 12px;font-size:12px}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:24px}.filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap;padding:18px 22px}.filters>div{flex:1;min-width:125px}.filters label{font-size:11px;margin-top:0}.form-control,.form-select{font-size:13px;border-color:#dbe3dd;min-height:40px}.form-control:focus,.form-select:focus{border-color:#6c9f83;box-shadow:0 0 0 3px #146b5818}label{display:block;font-size:12px;font-weight:600;margin:16px 0 7px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.stat{padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:9px}.stat span{font-size:12px;color:#697a70}.stat strong{display:block;font-size:34px;font-weight:600;line-height:1.4;margin:6px 0}.stat small{font-size:11px}.compact{grid-template-columns:repeat(3,1fr)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.section-heading h2{margin:0 0 5px}.section-heading p{font-size:12px}.count{font-size:11px;background:#eef3ef;border-radius:20px;padding:5px 10px;color:#64776a}.table{font-size:12px;margin:0}.table th{color:#7b8981;font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-weight:600;background:#f8faf8;padding:14px 12px;border-color:var(--line);white-space:nowrap}.table td{padding:19px 12px;border-color:#edf1ed;color:#4b6054}.table td strong{color:#273d31}.table small{display:block;font-size:10px;margin-top:5px}.status{display:inline-block;white-space:nowrap;border-radius:5px;padding:5px 9px;font-size:10px;font-weight:650}.status-draft{color:#68766f;background:#edf0ed}.status-submitted{color:#3c69ab;background:#edf3ff}.status-reviewed{color:#2a7655;background:#e7f4e8}.status-returned{color:#a77825;background:#fff3db}.completion{min-width:74px;font-size:10px}.progress{height:4px;margin-top:5px;background:#e9efea}.progress-bar{background:#80a982}.table-link{font-weight:650;white-space:nowrap}.empty-state{text-align:center;padding:40px!important;color:var(--muted)!important}.people-chips{display:flex;flex-wrap:wrap;gap:12px}.people-chips>span{background:#f3f7f3;border:1px solid var(--line);padding:12px 18px;border-radius:7px}.people-chips small{display:block}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}.full-width{grid-column:1/-1}.form-actions{display:flex;align-items:center;gap:12px;margin:24px 0;flex-wrap:wrap}.check-label{display:flex;gap:10px;align-items:center;margin-top:22px}.narrow{max-width:860px}.detail-grid{display:grid;grid-template-columns:160px 1fr;gap:18px}.detail-grid dt{color:var(--muted);font-weight:500}.detail-grid dd{margin:0}.work-item{padding:22px;background:#f8faf7;border:1px solid var(--line);border-radius:8px;margin:18px 0}.review-card{border-inline-start:3px solid #83a977;padding:15px 20px;background:#f6f9f3;margin-top:18px}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project-card{margin:0;display:flex;flex-direction:column}.project-card h2{margin:10px 0}.project-card p{min-height:50px}.project-symbol{font-size:27px;color:#6c9570}.project-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;margin-top:auto;font-size:12px}.back-link{font-size:12px}footer{padding:10px 38px 30px;color:#8a998d;font-size:10px}footer span{padding:0 6px}.login-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.login-story{padding:55px 65px;background:#123c34;color:white;display:flex;flex-direction:column;justify-content:space-between;background-image:radial-gradient(ellipse at 10% 90%,#416a4433,transparent 70%)}.login-story h1{font-size:48px;line-height:1.25;letter-spacing:-1.5px;margin:24px 0}.login-story p{color:#aec6b9;font-size:16px}.login-story .eyebrow{color:#d0e59c}.login-story>small{color:#93ad9d}.login-form{display:grid;place-items:center;padding:40px;background:#fcfdfb}.login-form>div{width:100%;max-width:370px}.login-form h2{font-size:28px;margin:16px 0}.account-email{max-width:220px;overflow:hidden;text-overflow:ellipsis}#blazor-error-ui{background:#fff2d7;bottom:0;box-shadow:0 -1px 3px #0002;display:none;left:0;padding:1rem;position:fixed;width:100%;z-index:1000}#blazor-error-ui .dismiss{position:absolute;right:1rem;cursor:pointer}.validation-message,.validation-errors{color:#b63434}.valid.modified:not([type=checkbox]){outline:1px solid #318e64}.invalid{outline:1px solid #c84646}[dir=rtl] .sidebar{border-left:1px solid #234940}[dir=rtl] .eyebrow,[dir=rtl] .table th{letter-spacing:0}button:focus-visible,a:focus-visible{outline:3px solid #a7c777;outline-offset:3px}@media(min-width:1500px){.stats-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1100px){.sidebar{width:200px;padding:28px 14px}main{padding:25px}.topbar{padding:0 25px}.project-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.account-email{display:none}}@media(max-width:700px){.app-shell{display:block}.sidebar{width:100%;padding:18px}.brand{margin-bottom:15px}.sidebar nav{flex-direction:row;flex-wrap:wrap;gap:3px}.sidebar nav a{padding:8px;font-size:11px}.sidebar-note,.nav-label{display:none}.topbar{padding:0 18px;height:60px}main{padding:22px 16px}.page-heading{align-items:start;flex-direction:column}h1{font-size:28px}.stats-grid{gap:10px}.stat{padding:16px}.stat strong{font-size:28px}.panel{padding:18px}.form-grid{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.section-heading{align-items:start}.login-page{grid-template-columns:1fr}.login-story{min-height:330px;padding:30px}.login-story h1{font-size:34px}.login-story>small{display:none}.login-form{padding:40px 25px}.detail-grid{grid-template-columns:110px 1fr}.filters>div{min-width:42%}}
