:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#eef3f7;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}:root{--navy:#123f5a;--blue:#2f7198;--cyan:#79a6cf;--green:#56a537;--gold:#f0c400;--ink:#173347;--muted:#718096;--line:#dce5eb;--surface:#fff;--soft:#f5f8fa}.app-shell{background:#eef3f7;min-height:100vh}.topbar{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;gap:20px;height:78px;padding:0 24px;display:flex;box-shadow:0 5px 22px #0b22392e}.identity,.top-actions,.identity>div,.stats,.stats>div,.card-head,.card-details,.progress-copy,.project-card footer,.task-ref,.task-card footer,.task-actions,.drawer>header,.drawer-progress>div,.modal>header,.modal>footer,.stage-column>header,.task-column>header{align-items:center;display:flex}.identity{gap:13px}.brand-mark{background:linear-gradient(145deg,var(--cyan),var(--blue));letter-spacing:-.04em;border-radius:13px;place-items:center;width:48px;height:48px;font-weight:900;display:grid;box-shadow:0 8px 22px #00bfe938}.identity>div{flex-direction:column;align-items:flex-start}.identity p,.identity h1{margin:0}.identity p{color:#8ddff0;letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:800}.identity h1{letter-spacing:-.02em;font-size:20px}.top-actions{gap:10px}.search{background:#ffffff14;border:1px solid #ffffff29;border-radius:9px;align-items:center;gap:8px;width:270px;height:40px;padding:0 12px;display:flex}.search span{font-size:20px}.search input{color:#fff;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.search input::placeholder{color:#9fb1c3}.view-switch{background:#ffffff14;border-radius:9px;padding:3px;display:flex}.view-switch button{color:#b7c6d4;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 11px;font-size:10px;font-weight:800}.view-switch button.active{color:var(--navy);background:#fff}.primary{background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;cursor:pointer;border:0;border-radius:8px;padding:11px 14px;font-size:10px;font-weight:850;box-shadow:0 7px 18px #007bff38}.user-chip{border-left:1px solid #ffffff26;grid-template-rows:1fr 1fr;grid-template-columns:34px auto;align-items:center;column-gap:8px;height:42px;padding:0 10px 0 4px;font-size:10px;font-weight:800;display:grid}.user-chip b{width:32px;height:32px;color:var(--navy);background:#fff;border-radius:9px;grid-row:1/3;place-items:center;display:grid}.user-chip small{color:#8ddff0;text-transform:uppercase;align-self:start;font-size:8px}.stats{border-bottom:1px solid var(--line);background:#fff;gap:10px;min-height:72px;padding:10px 24px}.stats>div{border-right:1px solid var(--line);justify-content:space-between;gap:20px;min-width:148px;height:48px;padding:8px 14px}.stats span{color:var(--muted);text-transform:uppercase;font-size:9px;font-weight:800}.stats strong{font-size:21px}.stats .wide{border-right:0;grid-template-rows:auto auto;grid-template-columns:1fr auto;min-width:290px;display:grid}.stats .wide i{background:#e6edf2;border-radius:8px;grid-column:1/3;height:5px;overflow:hidden}.stats .wide em{background:linear-gradient(90deg,var(--cyan),var(--blue));border-radius:8px;height:100%;display:block}.master-board{grid-template-columns:repeat(9,240px);gap:10px;height:calc(100vh - 150px);padding:16px 18px;display:grid;overflow:auto}.stage-column,.task-column{border:1px solid var(--line);background:#f7fafc;border-radius:12px;flex-direction:column;min-height:0;display:flex}.stage-column>header,.task-column>header{border-bottom:1px solid var(--line);border-top:4px solid var(--stage);background:#fff;border-radius:11px 11px 0 0;gap:8px;height:47px;padding:0 11px}.stage-column>header span{color:var(--stage);font-size:10px;font-weight:900}.stage-column>header h2,.task-column>header h2{flex:1;min-width:0;margin:0;font-size:11px}.stage-column>header b,.task-column>header b{background:#eef3f6;border-radius:7px;place-items:center;width:24px;height:24px;font-size:9px;display:grid}.column-body{min-height:0;padding:8px;overflow-y:auto}.project-card{text-align:left;cursor:grab;background:#fff;border:1px solid #dce4e9;border-radius:10px;width:100%;margin-bottom:8px;padding:11px;box-shadow:0 2px 7px #1b2c400d}.project-card:hover{border-color:#9fcfe1;box-shadow:0 8px 20px #1b2c4017}.card-head,.task-ref{justify-content:space-between;gap:8px}.card-head span,.task-ref span{color:#007d9d;letter-spacing:.06em;background:#e8f8fc;border-radius:5px;padding:4px 6px;font-size:7px;font-weight:900}.card-head b,.task-ref b{color:#7a8794;font-size:8px}.project-card h3{margin:9px 0 3px;font-size:13px}.project-card>p{color:#657384;height:28px;margin:0 0 9px;font-size:9px;line-height:1.45;overflow:hidden}.card-details{color:#647182;border-block:1px solid #eef2f5;justify-content:space-between;gap:6px;padding:7px 0;font-size:8px}.progress-copy{color:#7b8794;justify-content:space-between;margin-top:9px;font-size:8px}.progress-copy strong{color:#344152}.progress-track{background:#e9eef2;border-radius:7px;height:5px;margin:5px 0 9px;overflow:hidden}.progress-track i{border-radius:7px;height:100%;display:block}.project-card footer{color:#8994a0;justify-content:space-between;font-size:7px}.task-board{grid-template-columns:repeat(4,minmax(240px,1fr));gap:13px;height:calc(100vh - 150px);padding:16px 24px;display:grid}.task-column{overflow:hidden}.task-column>header{border-top-color:var(--column)}.task-column>header>span{background:var(--column);border-radius:50%;width:9px;height:9px}.task-column>div{min-height:0;padding:10px;overflow-y:auto}.task-card{border:1px solid var(--line);cursor:grab;background:#fff;border-radius:10px;margin-bottom:10px;padding:12px;box-shadow:0 2px 7px #1b2c400d}.task-card h3{margin:11px 0 5px;font-size:13px}.task-card>p{color:#697789;margin:0;font-size:9px;line-height:1.45}.phase-tag{color:#536273;background:#f0f4f7;border-radius:5px;width:max-content;margin:9px 0;padding:4px 7px;font-size:8px;font-weight:800}.task-card footer{color:#5f6d7b;border-top:1px solid #edf1f4;gap:7px;padding-top:9px;font-size:9px}.task-card footer>b{margin-left:auto}.avatar{background:var(--navy);color:#fff;border-radius:7px;place-items:center;width:25px;height:25px;font-size:8px;font-weight:900;display:grid}.task-actions{gap:5px;margin-top:9px}.task-actions button,.task-actions select{color:#455464;background:#f8fafb;border:1px solid #d9e2e8;border-radius:6px;height:28px;padding:0 7px;font-size:8px;font-weight:750}.task-actions select{flex:1;min-width:0}.overlay{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0817267a;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:#fff;flex-direction:column;width:min(650px,95vw);height:100%;display:flex;overflow:hidden;box-shadow:-15px 0 45px #08172638}.drawer>header,.modal>header{border-bottom:1px solid var(--line);background:var(--navy);color:#fff;justify-content:space-between;align-items:flex-start;min-height:108px;padding:22px}.drawer>header span,.modal>header span{color:#79d9ed;text-transform:uppercase;font-size:9px;font-weight:850}.drawer>header h2,.modal>header h2{margin:5px 0;font-size:21px}.drawer>header p{color:#b6c4d1;margin:0;font-size:10px}.drawer>header button,.modal>header button{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:8px;width:34px;height:34px;font-size:20px}.drawer-progress{border-bottom:1px solid var(--line);padding:18px 22px}.drawer-progress>div{justify-content:space-between}.drawer-progress span{color:#718096;text-transform:uppercase;font-size:9px;font-weight:800}.drawer-progress strong{font-size:21px}.drawer-progress>i{background:#e8eef2;border-radius:8px;height:8px;margin-top:8px;display:block;overflow:hidden}.drawer-progress em{background:linear-gradient(90deg,var(--cyan),var(--blue));height:100%;display:block}.task-list{min-height:0;padding:16px 22px 30px;overflow-y:auto}.task-list section+section{margin-top:18px}.task-list h3{border-left:4px solid var(--stage);justify-content:space-between;margin:0 0 8px;padding-left:9px;font-size:12px;display:flex}.task-list h3 span{color:#7d8995;font-size:9px}.drawer-task{border-bottom:1px solid #edf1f4;grid-template-columns:10px 1fr 140px;align-items:center;gap:10px;min-height:52px;padding:8px 10px;display:grid}.status-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px}.status-dot.in_progress{background:#0284c7}.status-dot.review{background:#d97706}.status-dot.done{background:#16a34a}.drawer-task div{flex-direction:column;gap:3px;display:flex}.drawer-task strong{font-size:10px}.drawer-task small{color:#8a96a2;font-size:8px}.drawer-task select{background:#f8fafb;border:1px solid #d9e2e8;border-radius:6px;height:32px;font-size:9px}.modal{background:#fff;border-radius:14px;width:min(670px,94vw);margin:auto;overflow:hidden;box-shadow:0 25px 70px #08172647}.form-grid{grid-template-columns:1fr 1fr;gap:12px;max-height:65vh;padding:20px;display:grid;overflow-y:auto}.form-grid label{flex-direction:column;gap:5px;display:flex}.form-grid label.wide{grid-column:1/3}.form-grid label>span{color:#657384;text-transform:uppercase;font-size:8px;font-weight:850}.form-grid input,.form-grid textarea{background:#f8fafb;border:1px solid #d8e1e7;border-radius:7px;outline:0;height:38px;padding:0 10px;font-size:10px}.form-grid textarea{resize:vertical;height:70px;padding-top:9px}.form-grid input:focus,.form-grid textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #00bfe91a}.modal>footer{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:14px 20px}.modal>footer button{cursor:pointer;background:#fff;border:1px solid #d7e0e6;border-radius:7px;padding:10px 14px;font-size:9px;font-weight:800}.modal>footer .primary{background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;border:0}.notice{z-index:80;color:#fff;text-align:left;cursor:pointer;background:#122a41;border:0;border-radius:9px;align-items:center;gap:18px;max-width:410px;padding:12px 14px;font-size:10px;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 14px 38px #0817263d}.notice span{color:#9eb0c1;margin-left:auto;font-size:16px}@media (width<=900px){.topbar{height:auto;min-height:74px;padding:10px 12px}.identity p,.search,.user-chip{display:none}.top-actions{margin-left:auto}.view-switch button{padding-inline:8px}.stats{padding-inline:12px}.stats>div{flex:1;min-width:auto;padding-inline:7px}.stats .wide{display:none}.task-board{grid-template-columns:1fr;height:auto;padding:12px}.task-column{max-height:none}.master-board{height:calc(100vh - 145px);padding:12px}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:1}.drawer-task{grid-template-columns:10px 1fr}.drawer-task select{grid-column:2}.primary{padding-inline:10px}}.brand-mark{background:#fff;border-radius:9px;width:68px;overflow:hidden;box-shadow:0 8px 22px #0000002e}.brand-mark img{width:62px;height:auto;display:block}.primary,.stats .wide em,.drawer-progress em,.modal>footer .primary{background:linear-gradient(135deg,var(--green),var(--blue) 64%,var(--gold))}.identity p,.user-chip small,.drawer>header span,.modal>header span{color:#b8d6ee}.card-head span,.task-ref span{color:#286987;background:#eaf4f9}.finance-panel{border-bottom:1px solid var(--line);background:#f8fbfc;padding:16px 22px}.finance-title{justify-content:space-between;align-items:center;display:flex}.finance-title>div{flex-direction:column;gap:3px;display:flex}.finance-title span,.finance-grid span{color:#718291;text-transform:uppercase;font-size:8px;font-weight:850}.finance-title strong{text-transform:capitalize;font-size:12px}.finance-title button{background:var(--navy);color:#fff;border:0;border-radius:7px;padding:8px 11px;font-size:8px;font-weight:850}.finance-title button:disabled{opacity:.45}.finance-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;display:grid}.finance-grid label{flex-direction:column;gap:4px;display:flex}.finance-grid input{background:#fff;border:1px solid #d7e1e7;border-radius:6px;min-width:0;height:32px;padding:0 7px;font-size:9px}.finance-kpis{color:#70808d;justify-content:flex-end;gap:18px;margin-top:10px;font-size:8px;display:flex}.finance-kpis b{color:var(--ink);margin-left:5px;font-size:11px}@media (width<=650px){.finance-grid{grid-template-columns:1fr 1fr}.finance-kpis{justify-content:space-between;gap:8px}}.excel-button{color:#fff;cursor:pointer;background:#ffffff17;border:1px solid #fff3;border-radius:8px;padding:10px 12px;font-size:9px;font-weight:850}.excel-button:hover{background:#ffffff29}.users-modal{width:min(980px,96vw)}.users-table{max-height:65vh;padding:12px 18px;overflow:auto}.users-row{text-align:center;border-bottom:1px solid #e8eef2;grid-template-columns:180px repeat(7,1fr);align-items:center;min-width:820px;min-height:48px;display:grid}.users-row>strong{text-align:left;flex-direction:column;align-items:flex-start;font-size:10px;display:flex}.users-row>strong small{color:#82919c;text-transform:uppercase;font-size:7px}.users-head{z-index:2;color:#748491;text-transform:uppercase;background:#fff;min-height:38px;font-size:7px;font-weight:900;position:sticky;top:-12px}.users-row label{place-items:center;display:grid}.users-row label input{opacity:0;position:absolute}.users-row label span{color:#0000;cursor:pointer;background:#f7fafb;border:1px solid #ccd9e1;border-radius:7px;place-items:center;width:25px;height:25px;display:grid}.users-row label input:checked+span{border-color:var(--green);background:var(--green);color:#fff}
