:root{font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;color:#233b38;background:#f4f6f5;font-synthesis:none;font-size:14px;--green:#20665a;--line:#e3e9e6;--muted:#7c8d87;--ink:#203c36}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--green);text-decoration:none}button{border:0;background:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a1ccb3;outline-offset:3px}button svg{pointer-events:none}svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1{font-size:28px;letter-spacing:-.7px;font-weight:650;margin-bottom:10px}h2{font-size:18px;font-weight:600;margin-bottom:6px}h3{font-size:16px;font-weight:600}small{font-size:12px;color:var(--muted)}.muted{color:var(--muted)}.mono{font-family:Consolas,monospace;font-size:12px}.sidebar{position:fixed;inset:0 auto 0 0;width:230px;padding:30px 18px 18px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:11px;align-items:center;padding:0 10px 29px}.brand-mark{width:39px;height:39px;border-radius:11px;background:#173e39;color:#d5efaa;display:grid;place-items:center;font-size:23px;font-weight:750;letter-spacing:-2px}.brand strong{font-size:19px;display:block;letter-spacing:1px}.brand small{font-size:9px;letter-spacing:2px;display:block;margin-top:5px}.workspace-tag{background:#f5f7f5;border:1px solid var(--line);border-radius:8px;padding:12px;display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:25px}.workspace-tag span:last-child{margin-left:auto;color:#779187}.nav-label{font-size:10px;letter-spacing:1.6px;color:#94a19b;margin:3px 15px 10px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:13px 15px;margin-bottom:5px;border-radius:7px;text-align:left;color:#7a8983;font-size:13px}.nav-item:hover{background:#f5f8f6;color:var(--green)}.nav-item.active{background:#eaf2ed;color:#25604e;font-weight:600}.nav-item.active:after{content:"";margin-left:auto;background:#52846a;border-radius:2px;width:4px;height:15px}.sidebar-bottom{margin-top:auto;padding-top:28px}.local-tag{font-size:11px;background:#f7f8f4;padding:12px;border-radius:8px;line-height:1.9;color:#8a967e}.local-tag b{display:block;color:#5e7759}.profile{display:flex;align-items:center;gap:10px;padding:19px 6px 0}.avatar{width:34px;height:34px;border-radius:50%;background:#e8ede0;color:#667451;display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.profile strong{font-size:12px}.profile small{display:block;font-size:10px;margin-top:3px}.icon-btn{width:34px;height:34px;border-radius:7px;display:inline-grid;place-items:center}.icon-btn:hover{background:#e9efeb}.profile .icon-btn{margin-left:auto}.main{margin-left:230px}.topbar{height:72px;background:#ffffffd9;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.crumb{font-size:12px;color:#95a29b;display:flex;gap:13px;align-items:center}.crumb b{font-weight:400;color:#476052}.top-actions{display:flex;gap:20px;align-items:center;color:#8c9a92;font-size:11px}.status-dot{display:inline-block;width:6px;height:6px;background:#75966a;border-radius:50%;margin-right:6px}.notice-button{position:relative}.unread{position:absolute;right:6px;top:4px;width:6px;height:6px;background:#c69650;border-radius:50%}.content{padding:32px 38px 40px;max-width:1700px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#83978a;margin-bottom:9px}.subtitle{font-size:12px;color:#85948c;margin:0;line-height:1.8}.button{display:inline-flex;gap:7px;align-items:center;justify-content:center;padding:10px 16px;border-radius:7px;border:1px solid #dfe7e1;background:#fff;font-size:12px;white-space:nowrap;min-height:38px}.button:hover{background:#f1f5f1}.button.primary{background:#245e4e;border-color:#245e4e;color:#fff}.button.primary:hover{background:#174b3d}.button svg{width:16px;height:16px}.button.danger{color:#af5d50;border-color:#ecd8d2}.button.small{padding:6px 10px;min-height:30px;font-size:11px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.metric{padding:20px 22px;background:white;border:1px solid var(--line);border-radius:10px;position:relative}.metric-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#778b7e}.metric-icon{width:31px;height:31px;display:grid;place-items:center;background:#f2f5ef;border-radius:8px;color:#77936a}.metric-icon svg{width:17px}.metric-value{font-size:32px;font-family:Arial,sans-serif;font-weight:500;color:#243f35;margin-top:8px;letter-spacing:-1px}.metric-value span{font-size:12px;letter-spacing:0;color:#97a394;margin-left:6px}.metric-note{font-size:10px;color:#8c9b91;margin-top:10px}.metric-note .positive{color:#6b8c52}.split{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px;align-items:start}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;margin-bottom:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:21px 23px;border-bottom:1px solid #eef1ed;gap:12px}.panel-head h2{font-size:15px;margin:0}.panel-head small{margin-left:9px;font-weight:400;font-size:10px}.panel-body{padding:21px 23px}.text-btn{font-size:11px;color:#809379;display:inline-flex;gap:4px;align-items:center}.text-btn svg{width:14px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tab{font-size:12px;padding:8px 14px;color:#86948c;border-radius:6px}.tab.active{background:#e9eee6;color:#547047;font-weight:600}.search{display:flex;align-items:center;background:white;border:1px solid var(--line);border-radius:6px;padding:8px 11px;gap:8px;color:#94a097;max-width:280px}.search svg{width:16px;height:16px}.search input{border:0;outline:none;width:170px;font-size:11px;background:transparent}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:22px 22px 0;transition:transform .15s,box-shadow .15s;text-align:left;cursor:pointer}.project-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #244b3e0b}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.project-symbol{width:36px;height:36px;border-radius:9px;background:#edf2e8;display:grid;place-items:center;color:#82996b}.project-symbol.blue{color:#81979f;background:#ecf1f2}.project-symbol.amber{color:#b49b6b;background:#f6f1e5}.badge{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:10px;line-height:1.6;padding:3px 8px;border-radius:4px;background:#f0f3ed;color:#7e9372}.badge.green{background:#edf4eb;color:#648458}.badge.amber{background:#faf3e7;color:#b29157}.badge.red{background:#f9eeea;color:#b97a66}.badge.blue{background:#eaf2f6;color:#648d9e}.badge.gray{background:#f0f2f1;color:#8b9791}.badge-dot{width:4px;height:4px;border-radius:50%;background:currentColor}.project-card h3{font-size:14px;margin-bottom:8px;line-height:1.6}.project-code{font-size:10px;color:#9da89e;letter-spacing:.5px}.card-customer{margin-top:17px;font-size:11px;color:#8a998f}.card-progress{margin-top:25px}.progress-label{display:flex;justify-content:space-between;font-size:10px;color:#8c9c90;margin-bottom:9px}.progress-label b{color:#789365;font-family:Arial;font-weight:500}.progress{height:5px;border-radius:8px;background:#eef2eb;overflow:hidden;min-width:65px}.progress>i{display:block;height:100%;border-radius:8px;background:#9ab681}.progress.warn>i{background:#d1b47f}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:19px;margin-bottom:18px;font-size:10px;color:#8b9b90}.card-meta .avatar{width:23px;height:23px;font-size:9px;margin-right:5px}.card-footer{border-top:1px solid #edf1e9;padding:13px 0;display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#8a9b86}.card-footer svg{width:13px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:28px 0 18px}.section-title h2{font-size:15px;margin:0}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{padding:13px 20px;background:#f9faf7;font-weight:400;font-size:10px;color:#93a08f;border-bottom:1px solid #ecf0e8}td{padding:17px 20px;border-bottom:1px solid #f0f3ed;font-size:11px;color:#7f9182}td:first-child{color:#405e46}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcf9}.task-title{display:flex;align-items:center;gap:8px;text-align:left}.task-title:hover{color:var(--green)}.task-check{width:14px;height:14px;display:inline-grid;place-items:center;border:1px solid #cbd6c9;border-radius:4px;color:#749265}.task-check.done{background:#e5eee1;border-color:#e5eee1}.task-check svg{width:10px;height:10px}.task-project{font-size:10px;color:#9ba895;margin-top:6px}.date-cell{font-family:Arial;color:#9da891;font-size:11px}.week-list{padding:3px 21px 5px}.milestone-item{position:relative;display:flex;gap:13px;padding:19px 0;border-bottom:1px solid #eff2eb}.milestone-item:last-child{border-bottom:0}.milestone-marker{color:#adbf95;font-size:15px;padding-top:2px}.milestone-item p{font-size:12px;margin-bottom:7px}.milestone-item small{font-size:10px;line-height:1.6}.milestone-item .date{font-family:Arial;font-size:10px;color:#a6b395;white-space:nowrap;margin-left:auto}.risk-item{margin:0 21px;padding:18px 0;border-bottom:1px solid #edf1e9}.risk-item:last-child{border-bottom:0}.risk-item p{font-size:11px;margin:10px 0 6px;line-height:1.7}.risk-item small{font-size:10px}.tip-panel{background:#edf1e7;padding:21px;border-radius:9px;border:1px solid #e4eadc}.tip-panel h3{font-size:12px;font-weight:500;color:#73895c;margin:0 0 10px;display:flex;align-items:center;gap:8px}.tip-panel p{font-size:10px;color:#8d9e7a;line-height:1.9;margin:0}.page-footer{margin-top:30px;text-align:center;font-size:9px;letter-spacing:1px;color:#a4b099}.empty{padding:38px 20px;text-align:center;color:#95a28f;font-size:12px;line-height:2}.empty svg{display:block;margin:0 auto 12px;color:#b3c0a9;width:29px;height:29px}.loading{padding:80px;text-align:center;color:#7b8e7d}.error{padding:35px;background:#fff4ef;border:1px solid #f0d8cc;border-radius:9px;line-height:1.8;color:#a56e54}.back{font-size:11px;color:#85997c;display:inline-flex;align-items:center;gap:5px;margin-bottom:18px}.back svg{width:14px}.detail-banner{background:#fff;border:1px solid var(--line);border-radius:10px;padding:25px;margin-bottom:20px}.detail-banner .heading{margin-bottom:20px}.detail-banner h1{font-size:24px}.detail-info{display:flex;gap:35px;flex-wrap:wrap;font-size:12px;color:#7e917d}.detail-info span small{display:block;margin-bottom:7px;font-size:10px}.detail-tabs{border-bottom:1px solid #dfe7db;margin-bottom:22px;display:flex;gap:25px;overflow-x:auto}.detail-tabs button{padding:11px 1px 14px;white-space:nowrap;color:#8b9d82;font-size:12px;border-bottom:2px solid transparent}.detail-tabs button.active{border-color:#6e925c;color:#527643}.description{line-height:1.9;font-size:12px;color:#86977f;white-space:pre-wrap}.wbs-title{display:flex;align-items:center;gap:6px}.wbs-code{font:10px Consolas,monospace;color:#a2ad97;min-width:24px}.wbs-toggle{width:20px;font-size:13px;padding:0}.mini-progress{display:flex;align-items:center;gap:8px;font:10px Arial;color:#8ea27c}.mini-progress .progress{width:70px}.timeline{padding:24px;overflow-x:auto}.gantt{min-width:760px;position:relative}.gantt-head,.gantt-row{display:grid;grid-template-columns:230px minmax(450px,1fr);min-height:48px;border-bottom:1px solid #edf1e8}.gantt-head{min-height:35px;font-size:10px;color:#95a38b}.gantt-name{display:flex;align-items:center;gap:8px;font-size:11px;padding-right:12px}.gantt-track{position:relative;background:repeating-linear-gradient(to right,transparent,transparent calc(100% / 8 - 1px),#edf1e8 calc(100% / 8 - 1px),#edf1e8 calc(100% / 8));}.gantt-dates{display:flex;justify-content:space-between;font:10px Arial}.gantt-bar{position:absolute;top:13px;height:20px;border-radius:4px;background:#e1ead7;border:1px solid #d6e1ca;min-width:8px;overflow:hidden;font:9px Arial;color:#5a7749;text-align:left;padding:0 5px}.gantt-bar i{position:absolute;inset:0 auto 0 0;background:#a7c38e99}.gantt-bar span{position:relative;z-index:1}.gantt-bar.late{background:#f1e7d7;border-color:#ebdbc3;color:#a08252}.gantt-bar.late i{background:#d5bb8e99}.gantt-actual{position:absolute;top:37px;height:3px;background:#789a72;border-radius:3px;min-width:3px}.today-line{position:absolute;top:0;bottom:0;width:1px;background:#be8c6680;pointer-events:none;z-index:2}.today-label{position:absolute;top:-21px;font-size:9px;color:#b08666;transform:translateX(-50%)}.gantt-legend{display:flex;gap:20px;margin-top:18px;font-size:10px;color:#8d9e7d}.history-item{padding:18px 0;border-bottom:1px solid #edf1e7}.history-item:last-child{border:0}.history-item p{margin:10px 0;font-size:12px;line-height:1.8;white-space:pre-wrap}.history-item small{font-size:10px}.history-item header{display:flex;justify-content:space-between;gap:10px;font-size:12px}.history-item .blocker{color:#b18460;font-size:11px}.audit-detail{max-width:720px;white-space:pre-wrap;word-break:break-word;font:11px Consolas,monospace;background:#f7f9f5;padding:12px;border-radius:5px}.note{padding:13px 16px;background:#f5f7ed;border:1px solid #e8eddf;border-radius:7px;font-size:11px;line-height:1.9;color:#81916d;margin-bottom:18px}.notice-row{display:flex;gap:15px;border-bottom:1px solid #edf1e8;padding:20px 23px}.notice-row h3{font-size:12px;margin:0 0 8px}.notice-row p{font-size:11px;color:#8b9c7f;line-height:1.8;margin:0 0 8px}.notice-row small{font-size:10px}.notice-row.unseen{background:#fafcf6}dialog{border:0;border-radius:14px;padding:0;width:min(710px,calc(100vw - 28px));max-height:90vh;color:var(--ink);box-shadow:0 25px 90px #142c3040;background:#fff}dialog::backdrop{background:#183c3950;backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:21px 27px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:17px}.modal-body{padding:24px 27px;max-height:68vh;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:17px 27px;border-top:1px solid var(--line);background:#fafbf8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#6d8263}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;border:1px solid #dce4d6;border-radius:6px;padding:10px 11px;background:#fff;color:#3a5637;font-size:12px;min-width:0}.field textarea{resize:vertical;min-height:80px;line-height:1.7}.field input[type=checkbox]{width:auto}.field select[multiple]{min-height:90px}.field .hint{color:#9aa68e;font-size:10px}.form-error{display:none;background:#fff1eb;color:#a56148;padding:12px;border-radius:6px;margin-bottom:18px;font-size:12px;line-height:1.8}.task-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:20px;font-size:12px}.task-summary small{display:block;font-size:10px;margin-bottom:6px}.attachment{display:flex;align-items:center;gap:9px;border:1px solid #e2e8d9;border-radius:6px;padding:11px 12px;margin:8px 0;font-size:11px}.attachment svg{color:#90a37d;width:16px}.attachment small{margin-left:auto}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-hero{background:#183e35;color:#f1f5e8;padding:65px 70px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:500px;height:500px;right:-160px;bottom:-170px;border:1px solid #54755a;border-radius:50%;box-shadow:0 0 0 60px #23493a,0 0 0 61px #54755a44,0 0 0 120px #23493a77,0 0 0 121px #54755a33}.login-hero .brand{padding:0}.login-hero .brand-mark{background:#ceea9e;color:#224437}.login-hero .brand small{color:#a4bc96}.login-copy{z-index:1;position:relative;padding:80px 0}.login-copy h1{font-size:42px;font-weight:400;line-height:1.5;letter-spacing:1px}.login-copy p{color:#a2bc92;line-height:2;font-size:13px}.login-copy .eyebrow{color:#c3dca5;letter-spacing:4px;margin-bottom:30px}.login-hero footer{font-size:10px;color:#9ab28a;z-index:1;letter-spacing:2px}.login-form{display:flex;align-items:center;justify-content:center;padding:45px}.login-card{width:360px}.login-card h2{font-size:24px;font-weight:500;margin-bottom:10px}.login-card .subtitle{margin-bottom:30px}.login-card .button{width:100%;margin-top:13px;min-height:44px}.login-card .field{margin-top:19px}.login-divider{display:flex;align-items:center;gap:12px;font-size:10px;color:#a1ad96;margin:25px 0}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#e2e8da}.login-hint{margin-top:25px;font-size:10px;color:#98a68a;line-height:2}.user-pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#214a39;color:white;font-size:12px;padding:13px 23px;border-radius:8px;box-shadow:0 5px 30px #214a3930;transition:all .2s;z-index:100}#toast.show{opacity:1;transform:translate(-50%,0)}.mobile-menu{display:none}.count{font-size:10px;background:#eaf0e4;border-radius:4px;padding:2px 5px;color:#799165;margin-left:5px}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px}.stat-list{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;font-size:12px}.stat-list small{display:block;margin-bottom:7px;font-size:10px}.status-buttons{margin-top:20px;display:flex;gap:8px;flex-wrap:wrap}.diff-table td{white-space:normal;min-width:100px}.mobile-only{display:none}
.subtitle{font-size:13px;color:#6d8176}.metric-top{font-size:13px}.nav-item{font-size:14px}.project-card h3{font-size:15px}.project-code,.card-customer,.progress-label,.card-meta,.card-footer{font-size:12px}.card-meta,.card-customer{color:#718679}.badge{font-size:11px}.metric-note,.text-btn,.risk-item small,.milestone-item small{font-size:11px}.risk-item p,td{font-size:12px}.empty{color:#74866e}.sidebar:not(.open){box-shadow:none}.gantt-bar{white-space:nowrap}.gantt-bar.milestone{padding:0;text-align:center;min-width:12px}
.history-card-info{display:flex;flex-direction:column;gap:10px;font-size:12px;line-height:1.7;color:#718679;margin:19px 0}.history-card h3{min-height:48px}.history-card .card-footer{gap:8px}.history-kv{display:grid;grid-template-columns:1fr 1fr;gap:22px 18px;font-size:12px;line-height:1.8}.history-kv small{display:block;font-size:11px;margin-bottom:5px}.history-kv span{white-space:pre-wrap;overflow-wrap:anywhere}.source-fields{margin-top:19px;border:1px solid #e4eadf;border-radius:7px;overflow:hidden}.source-fields summary{padding:12px 14px;font-size:11px;color:#6a805e;background:#f7f9f3;cursor:pointer}.source-fields table td{font-size:11px}.source-fields .source-error{color:#ac7058;background:#fff7ed}.wrap{white-space:normal;overflow-wrap:anywhere;min-width:180px;max-width:600px;line-height:1.9}.issue-list{margin:22px 0;border-top:1px solid var(--line);padding-top:12px}.issue-list p{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.8;color:#a68458;margin-bottom:12px}.issue-list svg{width:15px;flex-shrink:0;margin-top:3px}.history-photos{display:flex;flex-wrap:wrap;gap:12px;margin-top:15px}.history-photos img{width:110px;height:145px;object-fit:contain;border:1px solid #e3e9de;border-radius:5px;background:#f7f9f4}.template-card{padding:17px 0;border-bottom:1px solid var(--line);font-size:12px}.template-card:last-child{border-bottom:0}.template-card summary{cursor:pointer;line-height:2}.template-card .badge{margin-left:10px}.template-card ol{padding-left:23px;color:#6d8162;line-height:2.2}.reference-field{display:inline-block;margin:3px 19px 8px 0;vertical-align:top}.reference-field small{display:block;font-size:10px;color:#8a987f}.history-item header{flex-wrap:wrap}.history-kv+.source-fields{margin-top:25px}
@media(max-width:600px){.history-kv{grid-template-columns:1fr 1fr;gap:16px;font-size:11px}.history-card h3{min-height:0}.source-fields summary{line-height:1.8}.history-card-info{font-size:12px}.history-photos img{width:90px;height:120px}}
@media(min-width:1500px){.split{grid-template-columns:minmax(0,1fr) 335px}.project-card{padding:25px 25px 0}}
@media(max-width:1220px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.main{margin-left:200px}.content{padding:28px 25px}.topbar{padding:0 25px}.split{grid-template-columns:1fr}.side-panels{display:grid;grid-template-columns:1fr 1fr;gap:20px}.side-panels .tip-panel{display:none}.project-grid{gap:12px}.project-card{padding:18px 16px 0}.metric{padding:16px}.detail-info{gap:23px}}
@media(max-width:850px){.sidebar{width:180px}.main{margin-left:180px}.brand{padding-left:2px}.brand strong{font-size:16px}.brand small{font-size:8px}.project-grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.project-card{padding:18px 22px 0}.card-progress{margin-top:18px}.detail-grid{grid-template-columns:1fr}.heading{align-items:flex-start}.heading .actions{justify-content:flex-end}.top-actions>span{display:none}.login-hero{padding:45px 35px}.login-copy h1{font-size:32px}.login-form{padding:30px}.toolbar{flex-wrap:wrap}.project-card .card-customer{margin-top:12px}.login{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.sidebar{transform:translateX(-100%);width:230px;transition:transform .2s;box-shadow:15px 0 50px #19382230}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.topbar{height:57px;padding:0 18px}.content{padding:23px 16px}.mobile-menu{display:inline-grid}.mobile-only{display:block}.crumb{gap:7px}.top-actions{gap:9px}.heading{gap:12px;margin-bottom:20px}h1{font-size:24px}.heading .button{padding:9px 11px}.metrics{gap:11px;margin-bottom:20px}.metric{padding:15px}.metric-value{font-size:27px}.metric-note{font-size:9px}.metric-icon{width:25px;height:25px}.metric-top{font-size:11px}.side-panels{display:block}.panel-head{padding:18px}.panel-body{padding:18px}.table-wrap td,.table-wrap th{padding-left:15px;padding-right:15px}.project-grid{gap:14px}.section-title{margin-top:22px}.toolbar{gap:12px}.search{max-width:none;width:100%}.search input{width:100%}.tabs{gap:0}.tab{padding:7px 12px}.detail-banner{padding:19px 16px}.detail-banner h1{font-size:21px}.detail-banner .heading{display:block}.detail-banner .actions{margin-top:15px;justify-content:flex-start}.detail-info{gap:18px;font-size:11px}.detail-tabs{gap:20px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal-head{padding:18px}.modal-body{padding:19px;max-height:65vh}.modal-footer{padding:15px 18px}.task-summary{grid-template-columns:repeat(2,1fr);gap:17px}.login{grid-template-columns:1fr}.login-hero{padding:25px 27px}.login-copy{padding:30px 0 15px}.login-copy h1{font-size:27px;margin-bottom:13px}.login-copy .eyebrow{margin-bottom:14px;font-size:8px}.login-copy p{font-size:11px;margin:0}.login-hero footer{display:none}.login-form{padding:32px 26px}.login-card{width:100%;max-width:400px}.login-card h2{font-size:21px}.login-hero:after{width:250px;height:250px}.page-footer{line-height:1.8}.task-summary .badge{font-size:9px}.split{gap:0}}
