:root{--ink:#18201c;--muted:#68706a;--paper:#eef0ec;--card:#fff;--orange:#ff7139;--green:#a9d18e;--line:#18201c17}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.brand{letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:12px;font-size:13px;font-weight:800;display:flex}.brand-mark{background:var(--orange);color:#fff;letter-spacing:0;border-radius:13px;place-items:center;width:40px;height:40px;font-size:12px;display:grid}.eyebrow{color:var(--orange);letter-spacing:.2em;text-transform:uppercase;font-size:10px;font-weight:800}.muted{color:var(--muted)}.button{border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:43px;padding:0 16px;font-size:13px;font-weight:750;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.45;transform:none}.button-dark{background:var(--ink);color:#fff}.button-orange{background:var(--orange);color:#fff;box-shadow:0 8px 22px #ff713938}.button-light{color:var(--ink);border:1px solid var(--line);background:#fff}.icon-button{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);background:#fff;border-radius:10px;place-items:center;display:grid}.field{color:var(--ink);gap:8px;font-size:13px;font-weight:650;display:grid}.field input,.field textarea,.field select,.select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:12px;outline:none;padding:12px 13px}.field input:focus,.field textarea:focus,.field select:focus,.select:focus{border-color:var(--orange);box-shadow:0 0 0 4px #ff71391a}.error-box{color:#b5302b;background:#fff0ef;border-radius:12px;padding:11px 13px;font-size:13px}.auth{grid-template-columns:1.08fr .92fr;min-height:100vh;display:grid}.auth-art{color:#fff;background:var(--ink);flex-direction:column;justify-content:space-between;padding:54px;display:flex;position:relative;overflow:hidden}.auth-art:after{content:"";background:radial-gradient(circle at 18% 10%,#ff713973,#0000 32%),radial-gradient(circle at 88% 82%,#a9d18e4d,#0000 36%);position:absolute;inset:0}.auth-art>*{z-index:1;position:relative}.auth-copy{max-width:620px}.auth-copy h1{letter-spacing:-.045em;max-width:650px;margin:18px 0;font-size:clamp(42px,5vw,68px);line-height:1.04}.auth-copy p{color:#ffffff85;max-width:560px;font-size:18px;line-height:1.7}.auth-foot{color:#ffffff57;font-size:12px}.auth-panel{place-items:center;padding:40px;display:grid}.auth-form{width:min(440px,100%)}.auth-form h2{letter-spacing:-.035em;margin:20px 0 8px;font-size:34px}.auth-form>p{margin:0 0 28px;font-size:14px;line-height:1.6}.auth-form form{gap:16px;display:grid}.auth-icon{border:1px solid var(--line);background:#fff;border-radius:16px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 6px 18px #18201c0d}.shell{min-height:100vh}.sidebar{background:var(--ink);color:#fff;z-index:20;flex-direction:column;width:278px;padding:24px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-sub{color:#ffffff59;margin:2px 0 0;font-size:11px}.project-nav{gap:8px;margin-top:42px;display:grid}.nav-label{color:#ffffff40;letter-spacing:.2em;text-transform:uppercase;padding:0 12px 5px;font-size:9px;font-weight:800}.project-button{color:#ffffff94;text-align:left;background:#ffffff0d;border:0;border-radius:13px;width:100%;min-width:0;padding:12px}.project-button.active{color:var(--ink);background:#fff;box-shadow:0 12px 30px #0003}.project-button-row{justify-content:space-between;gap:12px;font-size:13px;font-weight:700;display:flex}.project-button-row span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.progress-mini{background:#80808033;border-radius:99px;height:4px;margin-top:10px;overflow:hidden}.progress-mini span{border-radius:inherit;background:var(--orange);height:100%;display:block}.side-actions{gap:8px;margin-top:16px;display:grid}.side-action{color:#ffffff94;background:0 0;border:1px dashed #ffffff29;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:10px;font-size:12px;font-weight:700;display:flex}.side-action:hover{border-color:var(--orange);color:#fff}.profile{background:#ffffff0f;border-radius:17px;margin-top:auto;padding:15px}.profile-main{align-items:center;gap:10px;display:flex}.avatar{background:var(--green);width:34px;height:34px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.profile strong,.profile small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile strong{font-size:13px}.profile small{color:#ffffff59;text-transform:capitalize;font-size:10px}.signout{color:#ffffff61;background:0 0;border:0;border-top:1px solid #ffffff1a;align-items:center;gap:7px;width:100%;margin-top:14px;padding-top:12px;font-size:11px;display:flex}.content{margin-left:278px;padding:38px}.content-inner{max-width:1440px;margin:0 auto}.top-action{justify-content:flex-end;margin-bottom:24px;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.page-head h1{letter-spacing:-.045em;margin:8px 0;font-size:clamp(32px,4vw,50px)}.page-head p{max-width:720px;color:var(--muted);margin:0;font-size:14px;line-height:1.65}.status{letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:9px;font-weight:800;display:inline-block}.status-planning{color:#58605b;background:#e9ecea}.status-on_track{color:#277346;background:#e5f5e9}.status-at_risk{color:#b5302b;background:#fff0ef}.status-completed{color:#2860aa;background:#e7f0ff}.progress-badge{border:1px solid var(--line);background:#fff;border-radius:18px;min-width:145px;padding:14px 16px}.progress-badge small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.progress-badge strong{margin-top:4px;font-size:30px;display:block}.stats{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:22px;box-shadow:0 10px 35px #18201c09}.stat{padding:20px}.stat-top{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;font-size:9px;font-weight:800;display:flex}.stat-icon{color:var(--orange)}.stat strong{margin-top:13px;font-size:25px;display:block}.stat p{color:var(--muted);text-transform:capitalize;margin:3px 0 0;font-size:11px}.progress-editor{margin-top:14px;padding:18px}.progress-editor-head{justify-content:space-between;align-items:center;display:flex}.progress-editor p{margin:0;font-size:13px;font-weight:700}.progress-editor small{color:var(--muted);font-size:11px}.progress-editor input{width:100%;accent-color:var(--orange);margin-top:15px}.detail-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.detail-card{padding:19px}.detail-title{align-items:center;gap:7px;margin:0;font-size:13px;display:flex}.chips{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.chip{background:#f0f1ed;border-radius:999px;align-items:center;gap:7px;padding:5px 10px 5px 5px;font-size:11px;display:flex}.chip .avatar{width:24px;height:24px;font-size:10px}.chip em{color:var(--muted);font-style:normal}.assignment{border-top:1px solid var(--line);margin-top:15px;padding-top:15px}.assignment-grid{grid-template-columns:1fr 120px auto;gap:7px;display:grid}.assignment .select{min-width:0;padding:8px;font-size:11px}.main-grid{grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);align-items:start;gap:20px;margin-top:24px;display:grid}.calendar{padding:22px}.section-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-head h2{margin:4px 0 0;font-size:20px}.calendar-week,.calendar-days{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-week{color:var(--muted);text-align:center;text-transform:uppercase;margin-top:20px;font-size:9px;font-weight:800}.calendar-days{margin-top:8px}.calendar-day{aspect-ratio:1;min-height:38px;color:var(--ink);background:0 0;border:0;border-radius:12px;font-size:11px;position:relative}.calendar-day:hover{background:var(--paper)}.calendar-day.outside{color:#18201c33}.calendar-day.selected{background:var(--ink);color:#fff}.calendar-dot{background:var(--orange);border-radius:50%;width:4px;height:4px;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.day-detail{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.day-title{justify-content:space-between;font-size:12px;display:flex}.empty-note{color:var(--muted);text-align:center;background:#f6f7f3;border-radius:12px;margin-top:12px;padding:18px;font-size:12px}.update-summary{border:1px solid var(--line);border-radius:16px;margin-top:12px;padding:14px}.update-author{align-items:center;gap:8px;display:flex}.update-author .avatar{width:27px;height:27px;font-size:10px}.update-author strong{font-size:12px}.update-author small{color:var(--muted);text-transform:uppercase;margin-left:auto;font-size:9px}.update-group h4{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:11px 0 4px;font-size:9px}.update-group ul,.report-section ul{color:#4f5751;margin:0;padding-left:17px;font-size:12px;line-height:1.65}.weekly{background:var(--ink);color:#fff;overflow:hidden;box-shadow:0 18px 50px #18201c26}.weekly-head{color:#fff;text-align:left;background:0 0;border:0;align-items:center;gap:13px;width:100%;padding:21px;display:flex}.weekly-icon{color:#ff9a70;background:#ff713924;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.weekly-copy{flex:1;min-width:0}.weekly-copy small{color:#ffffff59;letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.weekly-copy strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:16px;display:block;overflow:hidden}.weekly-body{border-top:1px solid #ffffff1a;padding:21px}.report-section{margin-bottom:20px}.report-section h3{color:#ff9a70;letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-size:10px}.report-section ul{color:#ffffffb8}.report-section small{color:#ffffff4d;margin-left:7px}.report-empty{color:#ffffff45;font-size:12px}.share-actions{border-top:1px solid #ffffff1a;margin-top:18px;padding-top:18px}.share-actions p{color:#fff6;font-size:11px}.share-row{flex-wrap:wrap;gap:8px;display:flex}.share-row .button{min-height:37px;font-size:11px}.shared{color:#72dfa0;align-items:center;gap:7px;font-size:12px;display:flex}.overlay{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000094;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#f8f9f6;border-radius:24px;width:min(610px,100%);max-height:92vh;padding:25px;overflow:auto;box-shadow:0 30px 90px #00000040}.modal.wide{width:min(720px,100%)}.modal h2{letter-spacing:-.03em;margin:8px 0;font-size:25px}.modal>p{color:var(--muted);margin:0 0 18px;font-size:12px;line-height:1.6}.form-grid{gap:14px;display:grid}.form-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.update-field{border:1px solid var(--line);background:#fff;border-radius:17px;padding:14px}.update-field h3{margin:0;font-size:13px}.update-field p{color:var(--muted);margin:3px 0 10px;font-size:10px}.update-field textarea{border:1px solid var(--line);resize:vertical;background:#f8f9f6;border-radius:11px;outline:none;width:100%;padding:11px}.role-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.role-button{border:1px solid var(--line);color:var(--muted);text-transform:capitalize;background:#fff;border-radius:11px;padding:10px 5px;font-size:10px;font-weight:700}.role-button.active{background:var(--ink);color:#fff}.project-checks{border:1px solid var(--line);background:#fff;border-radius:14px;max-height:160px;padding:7px;overflow:auto}.project-check{border-radius:9px;align-items:center;gap:8px;padding:8px;font-size:11px;display:flex}.project-check:hover{background:var(--paper)}.security-note{color:#28613c;background:#e9f7ed;border-radius:12px;padding:11px;font-size:10px;line-height:1.6}.screen-center{place-items:center;min-height:100vh;padding:20px;display:grid}.center-card{border:1px solid var(--line);text-align:center;background:#fff;border-radius:26px;width:min(500px,100%);padding:34px;box-shadow:0 20px 70px #18201c1a}.center-card h1{margin:15px 0 8px;font-size:29px}.center-card p{color:var(--muted);font-size:13px;line-height:1.65}.password-card{text-align:left}.empty-projects{text-align:center;place-items:center;min-height:65vh;display:grid}.empty-projects>div{max-width:440px}.empty-projects h1{margin:18px 0 8px;font-size:30px}.empty-projects p{color:var(--muted);font-size:13px;line-height:1.65}.spinner{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1000px){.main-grid{grid-template-columns:1fr}.sidebar{width:100%;padding:16px;position:relative}.project-nav{margin-top:18px;display:flex;overflow-x:auto}.project-button{min-width:190px}.nav-label,.profile{display:none}.side-actions{grid-template-columns:1fr 1fr}.content{margin-left:0;padding:24px}}@media (max-width:720px){.auth{grid-template-columns:1fr}.auth-art{display:none}.auth-panel{padding:26px 18px}.page-head{flex-direction:column;align-items:flex-start}.progress-badge{width:100%}.stats,.detail-grid{grid-template-columns:1fr}.content{padding:20px 14px 40px}.calendar{padding:15px}.assignment-grid,.form-two,.role-grid{grid-template-columns:1fr}}
