:root{color:#1e293b;font-synthesis:none;text-rendering:optimizelegibility;--ink:#172033;--muted:#738096;--line:#e2e8f0;--card:#fff;--navy:#18233a;--gold:#f1b86a;--blue:#4f6bff;--green:#1f9d68;--red:#d95d5d;--amber:#d5902b;--soft:#f7f9fc;background:#f3f6fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:#f3f6fb;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.hidden{display:none!important}.app-shell{grid-template-columns:250px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#fff;flex-direction:column;gap:22px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-mark{width:42px;height:42px;color:var(--navy);background:linear-gradient(145deg,#fff,#d8dfec);border-radius:14px;place-items:center;font-weight:900;display:grid}.brand h1{margin:0;font-size:15px;line-height:1.2}.brand small{color:#aeb8ca}.nav{flex-direction:column;gap:6px;display:flex}.nav button{color:#c8d0de;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:11px 12px;display:flex}.nav button:hover,.nav button.active{color:#fff;background:#263451}.nav-ico{text-align:center;width:22px}.side-bottom{border-top:1px solid #32405a;margin-top:auto;padding-top:18px}.user-chip{align-items:center;gap:10px;display:flex}.avatar{background:var(--gold);color:#3b2a11;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.user-chip strong{font-size:13px}.user-chip span{color:#9da9bc;font-size:11px;display:block}.logout{color:#d9dfeb;background:0 0;border:1px solid #44536e;border-radius:9px;width:100%;margin-top:12px;padding:8px}.main{width:100%;max-width:1440px;margin:0 auto;padding:28px 34px 60px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px;display:flex}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700}.topbar h2{color:var(--ink);margin:4px 0 0;font-size:27px}.top-actions{align-items:center;gap:10px;display:flex}.btn{border:0;border-radius:10px;padding:10px 14px;font-weight:700;transition:all .15s}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover{transform:translateY(-1px)}.btn-secondary{border:1px solid var(--line);color:var(--ink);background:#fff}.btn-danger{color:#9f3030;background:#fff1f1;border:1px solid #ffd2d2}.btn-success{color:#19724f;background:#e7f7ef;border:1px solid #bcebd5}.btn-sm{padding:7px 10px;font-size:12px}.grid-kpi{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.card{background:#fff;border:1px solid #e7ebf2;border-radius:16px;box-shadow:0 7px 22px #1720330a}.kpi{padding:18px}.kpi .label{color:var(--muted);font-size:12px;font-weight:700}.kpi .value{color:var(--ink);margin-top:8px;font-size:30px;font-weight:800}.kpi .hint{color:#97a2b5;margin-top:4px;font-size:11px}.kpi.attention{border-color:#f0d19a}.kpi.done{border-color:#cce9dc}.section{margin-top:22px}.section-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.section-head h3{margin:0;font-size:16px}.section-head p{color:var(--muted);margin:4px 0 0;font-size:12px}.layout-2{grid-template-columns:1.5fr 1fr;gap:16px;display:grid}.task-list{flex-direction:column;display:flex}.task-row{border-top:1px solid #edf0f5;grid-template-columns:38px minmax(180px,1fr) 120px 115px 125px 34px;align-items:center;gap:12px;padding:14px 16px;display:grid}.task-row:first-child{border-top:0}.task-row:hover{background:#fbfcfe}.project-dot{background:#eef2f7;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.task-title{font-size:13px;font-weight:700}.task-desc{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;overflow:hidden}.pill{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:5px 9px;font-size:11px;font-weight:700;display:inline-flex}.p-high{color:#ad3f39;background:#fff0ef}.p-medium{color:#97611d;background:#fff7e8}.p-low{color:#49618d;background:#eef4ff}.s-start{color:#627087;background:#eef2f6}.s-progress{color:#425fd3;background:#eaf0ff}.s-help{color:#b44942;background:#fff0ef}.s-review{color:#9a671b;background:#fff6df}.s-done{color:#287555;background:#e9f7ef}.person{align-items:center;gap:7px;font-size:12px;display:flex}.mini-avatar{background:#e8edf5;border-radius:50%;place-items:center;width:27px;height:27px;font-size:10px;font-weight:800;display:grid}.row-open{color:#9aa5b5;background:0 0;border:0;font-size:20px}.empty{text-align:center;color:var(--muted);padding:38px}.empty strong{color:var(--ink);margin-bottom:5px;display:block}.project-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.project-card{padding:17px}.project-card .proj-top{justify-content:space-between;align-items:center;display:flex}.project-card .proj-icon{font-size:25px}.project-card h4{margin:13px 0 4px}.project-card p{color:var(--muted);min-height:34px;font-size:12px}.progress{background:#edf1f7;border-radius:99px;height:7px;margin-top:14px;overflow:hidden}.progress>span{background:var(--navy);border-radius:99px;height:100%;display:block}.meta-row{color:var(--muted);justify-content:space-between;margin-top:8px;font-size:11px;display:flex}.team-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.team-card{text-align:center;padding:18px}.team-card .big-avatar{color:#42506a;background:#eef2f8;border-radius:50%;place-items:center;width:54px;height:54px;margin:auto;font-weight:900;display:grid}.team-card h4{margin:10px 0 3px}.team-card p{color:var(--muted);min-height:34px;margin:0;font-size:12px}.team-card .email{text-overflow:ellipsis;background:#f5f7fa;border-radius:8px;margin-top:12px;padding:7px;font-size:11px;overflow:hidden}.team-card .stats{justify-content:center;gap:18px;margin-top:13px;display:flex}.team-card .stats b{font-size:16px;display:block}.team-card .stats span{color:var(--muted);font-size:10px}.modal-backdrop{z-index:50;background:#0c121e7a;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(680px,100%);max-height:90vh;overflow:auto;box-shadow:0 25px 80px #0003}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.modal-head h3{margin:0}.close{background:#f0f3f8;border:0;border-radius:9px;width:32px;height:32px}.modal-body{padding:20px 22px}.form-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.full{grid-column:1/-1}.field label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:800}.field input,.field select,.field textarea{background:#fff;border:1px solid #dce2eb;border-radius:10px;outline:none;padding:10px 11px}.field textarea{resize:vertical;min-height:95px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7389e8;box-shadow:0 0 0 3px #4f6bff14}.modal-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.detail-box{background:#f7f9fc;border:1px solid #e6eaf1;border-radius:12px;margin-top:12px;padding:13px}.comments{flex-direction:column;gap:9px;margin-top:10px;display:flex}.comment{background:#f7f9fc;border-radius:10px;padding:10px;font-size:12px}.comment small{color:var(--muted);margin-bottom:3px;display:block}.login-wrap{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-hero{background:var(--navy);color:#fff;flex-direction:column;justify-content:center;padding:8vw;display:flex;position:relative;overflow:hidden}.login-hero:after{content:"";background:#f1b86a1f;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-160px;right:-120px}.login-hero .tag{color:#f4c982;letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:800}.login-hero h1{max-width:700px;margin:16px 0 22px;font-size:clamp(36px,5vw,68px);line-height:.98}.login-hero p{color:#b9c4d6;max-width:590px;line-height:1.65}.login-panel{place-items:center;padding:40px;display:grid}.login-card{width:min(420px,100%)}.login-card h2{margin:0 0 8px;font-size:27px}.login-card>p{color:var(--muted);font-size:13px;line-height:1.55}.login-form{flex-direction:column;gap:12px;margin-top:24px;display:flex}.login-form input{border:1px solid var(--line);border-radius:10px;padding:13px}.login-form .btn{padding:13px}.demo-note{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.demo-note p{color:var(--muted);font-size:11px}.error{color:#a13f3f;background:#fff1f1;border:1px solid #ffd1d1;border-radius:9px;padding:10px;font-size:12px}.notice{color:#80571a;background:#fff7e7;border:1px solid #f3d69d;border-radius:10px;padding:12px;font-size:12px}.mobile-top{display:none}@media (width<=980px){.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:20px 12px}.brand-copy,.nav-label,.user-copy,.logout{display:none}.brand,.nav button{justify-content:center}.side-bottom{justify-content:center;display:flex}.grid-kpi,.project-grid,.team-grid{grid-template-columns:repeat(2,1fr)}.task-row{grid-template-columns:38px 1fr 110px 34px}.task-row .hide-md{display:none}.layout-2{grid-template-columns:1fr}}@media (width<=650px){.app-shell{display:block}.sidebar{z-index:40;width:100%;height:auto;padding:8px 10px;position:fixed;top:auto;bottom:0}.brand,.side-bottom{display:none}.nav{flex-direction:row;justify-content:space-around}.nav button{flex-direction:column;gap:2px;padding:9px;font-size:9px}.nav-label{display:block}.main{padding:20px 14px 86px}.topbar{align-items:flex-start}.top-actions .btn-secondary{display:none}.grid-kpi{gap:9px}.kpi{padding:14px}.kpi .value{font-size:24px}.project-grid,.team-grid{grid-template-columns:1fr}.task-row{grid-template-columns:34px 1fr 34px;padding:12px}.task-row .status-cell,.task-row .hide-md{display:none}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.login-wrap{grid-template-columns:1fr}.login-hero{display:none}.login-panel{padding:28px 20px}.topbar h2{font-size:23px}}.google-login{color:#172033;background:#fff;border:1px solid #d7deea;font-weight:700}.google-login:hover{background:#f7f9fc}.login-separator{color:#8a96aa;align-items:center;gap:10px;margin:2px 0 14px;font-size:11px;display:flex}.login-separator:before,.login-separator:after{content:"";background:#e3e8f0;flex:1;height:1px}.login-separator span{white-space:nowrap}
