:root{--bg:#f5f6f2;--paper:#fff;--ink:#27352d;--muted:#627067;--green:#28674e;--green2:#eaf2ec;--line:#e4eae5;--amber:#86520f;--blue:#3f608b;--red:#a94239;--shadow:0 7px 24px #213b2a08}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{color:var(--ink);background:var(--bg);margin:0;font-family:system-ui,Segoe UI,Tahoma,Arial,sans-serif;font-size:15px;line-height:1.6}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{min-height:100vh}.sidebar{border-left:1px solid var(--line);z-index:5;background:#fff;flex-direction:column;width:258px;padding:23px 16px 15px;display:flex;position:fixed;top:0;bottom:0;right:0}.brand{color:#183c2e;align-items:center;gap:11px;padding:0 7px 22px;font-size:18px;font-weight:800;display:flex}.brand small{color:var(--muted);margin-top:2px;font-size:10px;font-weight:400;display:block}.brand-mark{background:var(--green);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;font-size:20px;font-weight:800;display:grid}.project-switch{border:1px solid var(--line);background:#f6f8f6;border-radius:11px;align-items:center;gap:10px;margin-bottom:24px;padding:10px;display:flex}.project-symbol{color:#5476a2;background:#e2edf7;border-radius:9px;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.project-switch small,.project-switch b{display:block}.project-switch small{color:var(--muted);font-size:10px}.project-switch b{margin-top:3px;font-size:12px}.chevron{color:var(--muted);margin-right:auto}.nav-caption{color:#9aa59e;padding:0 10px 8px;font-size:10px}.nav{gap:4px;display:grid}.nav button{text-align:right;color:#57655d;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:10px 11px;font-size:13px;display:flex;position:relative}.nav button>span{text-align:center;color:#829087;width:20px;font-size:16px}.nav button.selected{background:var(--green2);color:var(--green);font-weight:700}.nav button.selected>span{color:var(--green)}.nav button i{color:#829087;margin-right:auto;font-size:10px;font-style:normal}.external{color:#819187;margin-right:auto;font-size:13px}.side-spacer{flex:1}.sidebar-note{background:#f4f8f5;border-radius:12px;margin:14px 0 13px;padding:14px 13px}.note-icon{width:25px;height:25px;color:var(--green);background:#fff;border-radius:8px;place-items:center;margin-bottom:9px;display:grid}.sidebar-note b{font-size:12px}.sidebar-note p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.65}.account{border-top:1px solid var(--line);align-items:center;gap:9px;padding:14px 2px 0;display:flex}.avatar,.top-avatar{color:#825a35;background:#f1e3d5;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.account-meta{flex:1}.account-meta b,.account-meta small{display:block}.account-meta b{font-size:12px}.account-meta small{color:var(--muted);margin-top:3px;font-size:10px}.dots{color:#819087;background:0 0;border:0;font-size:18px}.main{max-width:1500px;margin-right:258px;padding:0 35px 35px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:68px;margin-bottom:26px;display:flex}.crumb{color:#829087;font-size:11px}.crumb span{color:#c1cac4;padding:0 7px}.demo-pill{color:#68756e;background:#edf3ee;border:1px solid #e4ece6;border-radius:30px;padding:7px 10px;font-size:10px}.demo-pill i{background:#4e9c70;border-radius:50%;width:6px;height:6px;margin-left:5px;display:inline-block}.top-avatar{cursor:pointer;border:0}.welcome{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:23px;display:flex}.overline{color:var(--green);margin-bottom:6px;font-size:11px;font-weight:700}.welcome h1{letter-spacing:-.3px;margin:0 0 7px;font-size:25px}.welcome h1 span{color:#d3a454;font-size:18px}.welcome p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.primary,.secondary,.outline-button{white-space:nowrap;border-radius:9px;padding:10px 14px;font-size:12px;font-weight:700}.primary{color:#fff;background:var(--green);border:1px solid var(--green);box-shadow:0 3px 9px #176b5217}.primary:hover{background:#105941}.primary b{vertical-align:-1px;margin-left:7px;font-size:17px}.primary.small{padding:8px 11px;font-size:11px}.secondary{color:var(--green);background:#edf5ef;border:1px solid #e1eee4}.secondary:hover{background:#e3f0e7}.outline-button{border:1px solid var(--line);color:#637168;background:#fff;padding:7px 9px;font-size:10px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px;display:grid}.stat{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:15px 16px}.stat-label{color:var(--muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.stat-label i{width:29px;height:29px;color:var(--green);background:#f1f6f2;border-radius:8px;place-items:center;font-size:15px;font-style:normal;display:grid}.stat strong{margin:9px 0 1px;font-size:24px;display:block}.stat small{color:#95a098;font-size:10px}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:15px;display:grid}.main-column,.right-column{align-content:start;gap:15px;display:grid}.card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:13px;padding:17px 18px}.card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.card-heading h2{margin:0 0 4px;font-size:14px}.card-heading p{color:var(--muted);margin:0;font-size:10px}.text-button{color:var(--green);background:0 0;border:0;padding:6px;font-size:10px}.phase-list{gap:13px;display:grid}.phase{padding:0 0 1px}.phase-top{align-items:center;gap:10px;display:flex}.phase-num{color:#a9b8af;background:#f3f6f4;border-radius:7px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:700;display:grid}.phase-name{flex:1}.phase-name b,.phase-name small{display:block}.phase-name b{font-size:11px}.phase-name small{color:var(--muted);margin-top:3px;font-size:9px}.phase-top>strong{color:#61746a;font-size:10px}.progress{background:#eef2ef;border-radius:10px;height:5px;margin:8px 0 0;overflow:hidden}.progress i{background:#4e9876;border-radius:10px;height:100%;display:block}.phase-list.large{gap:18px}.phase-tasks{gap:7px;padding:8px 0 0 38px;display:grid}.phase-tasks>span{color:#68766e;justify-content:space-between;align-items:center;gap:10px;font-size:10px;display:flex}.task-list{display:grid}.task-row{border-top:1px solid #f0f3f1;align-items:center;gap:9px;padding:11px 0;display:flex}.task-row:first-child{border-top:0;padding-top:1px}.task-main{text-align:right;min-width:0;color:inherit;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.task-check{color:#fff;border:1.5px solid #d5ded8;border-radius:5px;flex:none;place-items:center;width:16px;height:16px;font-size:10px;display:grid}.task-check.checked{background:var(--green);border-color:var(--green)}.task-copy{min-width:0}.task-copy b,.task-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-copy b{font-size:11px;font-weight:600}.task-copy small{color:var(--muted);margin-top:4px;font-size:9px}.task-copy small i{color:#bcc6bf;padding:0 3px;font-style:normal}.badge{white-space:nowrap;border-radius:20px;align-items:center;padding:4px 8px;font-size:9px;font-weight:600;display:inline-flex}.badge.neutral{color:#68756e;background:#f0f3f1}.badge.blue{color:var(--blue);background:#eaf1fb}.badge.amber{color:var(--amber);background:#fcf2e3}.badge.red{color:var(--red);background:#fcebea}.badge.green{color:#327c54;background:#e6f3eb}.row-arrow{color:#9ca9a1;background:0 0;border:0;padding:4px;font-size:13px}.team-summary{gap:14px;display:grid}.member-line{align-items:center;gap:9px;display:flex}.member-line .avatar{color:#326e50;background:#deeee6;width:30px;height:30px;font-size:11px}.member-line .color-1{color:#9a6032;background:#f4e9dc}.member-line .color-2{color:#6d568d;background:#e9e4f1}.member-info{flex:1}.member-info b,.member-info small{display:block}.member-info b{font-size:10px}.member-info small{color:var(--muted);margin-top:3px;font-size:9px}.mini-progress{background:#eff2f0;border-radius:8px;width:43px;height:4px;overflow:hidden}.mini-progress i{background:#81b093;border-radius:8px;height:100%;display:block}.daily-card{text-align:center;padding:6px 5px 2px}.daily-icon{color:#9d782f;background:#fff6de;border-radius:13px;place-items:center;width:42px;height:42px;margin:0 auto 10px;font-size:20px;display:grid}.daily-card h3{margin:0 0 5px;font-size:12px}.daily-card p{color:var(--muted);max-width:220px;margin:0 auto 12px;font-size:10px;line-height:1.7}.flow-list{gap:10px;display:grid}.flow-item{color:#68766e;align-items:center;gap:9px;font-size:10px;display:flex}.flow-item i{width:22px;height:22px;color:var(--green);background:#f2f6f3;border-radius:7px;place-items:center;font-size:9px;font-style:normal;display:grid}.activity-card{margin-bottom:1px}.empty{text-align:center;color:var(--muted);padding:25px 10px;font-size:11px}.task-page{margin-top:3px}.filters{gap:9px;margin-bottom:8px;display:flex}.filters input,.filters select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:9px 11px;font-size:11px}.filters input{flex:1}.filters select{min-width:130px}.filters input:focus,.filters select:focus,.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#83b49a;outline:2px solid #d2e7d9}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.team-card{border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.team-card .avatar{color:#35734f;background:#dfede5;width:31px;height:31px}.team-card>div:nth-child(2){flex:1}.team-card b,.team-card small{display:block}.team-card small{color:var(--muted);margin-top:3px;font-size:9px}.helper{color:#839087;margin:14px 0 0;font-size:10px;line-height:1.7}.project-brief{background:#f7faf7;border:1px solid #e8efe9;border-radius:10px;margin-top:20px;padding:14px}.project-brief h3{margin:0 0 6px;font-size:12px}.project-brief p{color:#68766e;margin:0;font-size:10px;line-height:1.8}.brief-links{color:var(--muted);justify-content:space-between;gap:10px;margin-top:11px;font-size:9px;display:flex}.brief-links a,.resource-links a,.pr-link{color:var(--green);text-decoration:none}.brief-links a:hover,.resource-links a:hover{text-decoration:underline}footer{color:#627168;padding:22px 4px 0;font-size:10px}footer span{color:#99a39d;margin-right:7px}.overlay{z-index:10;background:#10231b77;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow:auto}.modal{background:#fff;border-radius:16px;width:min(590px,100%);max-height:95vh;padding:22px;overflow:auto;box-shadow:0 20px 70px #0f2a1e33}.detail-modal{width:min(620px,100%)}.modal-title{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:15px;display:flex}.modal-title h2{margin:2px 0 0;font-size:18px}.close{color:#77837c;background:#f2f5f3;border:0;border-radius:8px;width:29px;height:29px;font-size:21px;line-height:1}.modal label{color:#69766e;margin:11px 0;font-size:10px;display:block}.modal input,.modal select,.modal textarea{border:1px solid var(--line);width:100%;color:var(--ink);resize:vertical;background:#fff;border-radius:8px;margin-top:5px;padding:9px 10px;font-size:11px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:0 10px;display:grid}.modal-actions{flex-wrap:wrap;gap:8px;margin-top:17px;display:flex}.detail-desc{color:#58675e;font-size:12px;line-height:1.8}.detail-meta{grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0;display:grid}.detail-meta span{background:#f7f9f7;border-radius:9px;padding:10px}.detail-meta small,.detail-meta b{display:block}.detail-meta small{color:var(--muted);font-size:9px}.detail-meta b{margin-top:5px;font-size:10px}.criteria,.feedback{background:#f7faf7;border-right:3px solid #7eae8e;border-radius:0 8px 8px 0;margin:12px 0;padding:11px 12px}.criteria b,.feedback b{font-size:10px}.criteria p,.feedback p{color:#66746b;margin:4px 0 0;font-size:10px;line-height:1.7}.feedback{background:#fffaf1;border-color:#d99a4c}.resource-links{flex-wrap:wrap;gap:14px;margin:12px 0;font-size:10px;display:flex}.pr-link{margin:4px 0 10px;font-size:10px;display:inline-block}.toast{color:#fff;z-index:30;background:#19392c;border-radius:10px;padding:11px 15px;font-size:11px;position:fixed;bottom:22px;left:22px;box-shadow:0 8px 20px #16342433}@media (max-width:1100px){.sidebar{width:225px}.main{margin-right:225px;padding:0 23px 28px}.content-grid{grid-template-columns:minmax(0,1.35fr) minmax(245px,.9fr)}.welcome h1{font-size:22px}}@media (max-width:820px){.sidebar{width:260px;transition:transform .2s;transform:translate(105%);box-shadow:-12px 0 32px #162a1d14}.sidebar.open{transform:translate(0)}.main{margin-right:0;padding:0 18px 28px}.mobile-toggle{border:1px solid var(--line);color:#58675e;background:#fff;border-radius:8px;width:34px;height:34px;display:block}.topbar{gap:10px;height:58px;margin-bottom:20px}.crumb{flex:1}.content-grid{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr;align-items:start}.stat-grid{gap:9px}.stat{padding:12px}.stat strong{font-size:21px}.welcome{align-items:flex-start}.welcome h1{font-size:20px}.welcome p{max-width:500px}}@media (max-width:570px){.main{padding:0 13px 25px}.demo-pill{padding:8px;font-size:0}.demo-pill i{margin:0}.welcome{display:block}.welcome .primary{margin-top:13px}.welcome h1{font-size:19px;line-height:1.5}.stat-grid{grid-template-columns:1fr 1fr}.stat{padding:11px}.right-column{grid-template-columns:1fr;display:grid}.card{padding:14px}.card-heading h2{font-size:13px}.task-row{gap:6px}.task-row>.badge{padding:4px 6px;font-size:8px}.task-copy b{font-size:10px}.task-copy small{font-size:8px}.team-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:0}.detail-meta{gap:5px}.detail-meta span{padding:8px}.filters{flex-direction:column}.filters select{width:100%}.brief-links{flex-direction:column}.topbar{margin-bottom:17px}.crumb{font-size:10px}}.auth-wrap{background:radial-gradient(ellipse at top,#e8f2eb 0,transparent 55%),var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:32px}.auth-card .brand-mark{margin-bottom:22px}.auth-card h1{margin:0 0 8px;font-size:23px}.auth-card>p{color:var(--muted);margin:0 0 20px;font-size:12px;line-height:1.7}.auth-card label{color:#69766e;margin:14px 0;font-size:11px;display:block}.auth-card input{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;margin-top:6px;padding:11px;display:block}.auth-card input:focus{border-color:#83b49a;outline:2px solid #d2e7d9}.auth-card .primary{width:100%;margin-top:6px}.form-error{background:#fff6f5;border:1px solid #f5dedb;border-radius:8px;padding:10px;font-size:11px;line-height:1.6;color:var(--red)!important}.project-switch select{min-width:0;color:var(--ink);cursor:pointer;background:0 0;border:0;outline:0;flex:1;font-size:11px;font-weight:700}.mobile-toggle{display:none}.planner-view{border:1px solid var(--line);min-height:calc(100vh - 105px);box-shadow:var(--shadow);background:#fff;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.planner-toolbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:14px;padding:12px 15px;display:flex}.planner-toolbar>div{align-items:center;gap:10px;display:flex}.planner-toolbar b{font-size:13px}.planner-toolbar span{color:var(--muted);font-size:10px}.planner-frame{background:#f7f8f6;border:0;width:100%;height:calc(100vh - 175px);min-height:540px}.invite-form{align-items:flex-end;gap:12px;display:flex}.invite-form label,.invite-result label{color:#69766e;flex:1;font-size:11px;display:block}.invite-form input,.invite-result input{border:1px solid var(--line);border-radius:8px;width:100%;margin-top:6px;padding:11px;display:block}.invite-result{background:#f6faf7;border:1px solid #e5eee7;border-radius:10px;margin-top:16px;padding:13px}.invite-result .secondary{margin-top:9px}.invite-result small{color:var(--muted);margin-top:8px;font-size:10px;display:block}.role-chip{color:var(--green);background:var(--green2);border-radius:20px;padding:5px 8px;font-size:9px}.phase-manager{display:grid}.phase-manage-row{border-bottom:1px solid #eff2f0;align-items:center;gap:10px;padding:12px 0;display:flex}.phase-manage-row:last-child{border-bottom:0}.phase-manage-row>b{flex:1;font-size:12px}.phase-actions{align-items:center;gap:5px;display:flex}.phase-actions button{color:#5c6a61;border:1px solid var(--line);background:#f6f8f6;border-radius:7px;padding:6px 9px;font-size:10px}.phase-actions button:disabled{opacity:.4;cursor:default}.phase-actions .danger-text{color:#b74c43}.project-cards{gap:10px;display:grid}.project-card{border:1px solid var(--line);border-radius:11px;align-items:center;gap:12px;padding:14px;display:flex}.project-card.current{background:#f8fbf9;border-color:#b7d6c2}.project-card>div:nth-child(2){flex:1;min-width:0}.project-card p{color:var(--muted);margin:4px 0;font-size:10px}.project-card small{color:var(--green);font-size:9px}.success-note{background:#f0f8f1;border:1px solid #dcecdf;border-radius:8px;padding:10px;font-size:11px;color:var(--green)!important}.auth-card .success-note{margin:10px 0}@media (max-width:820px){.mobile-toggle{border:1px solid var(--line);color:#58675e;background:#fff;border-radius:8px;width:34px;height:34px;display:block}.planner-view{min-height:calc(100vh - 82px)}.planner-frame{height:calc(100vh - 145px);min-height:480px}.invite-form{flex-direction:column;align-items:stretch}.project-card{flex-wrap:wrap;align-items:flex-start}.project-card>div:nth-child(2){min-width:55%}}@media (max-width:570px){.planner-toolbar{flex-direction:column;align-items:flex-start}.planner-toolbar .secondary{width:100%}.planner-frame{height:calc(100vh - 185px);min-height:420px}.phase-manage-row{flex-wrap:wrap}.phase-actions{justify-content:flex-end;width:100%}.phase-actions button{padding:7px 10px}.project-card .secondary{width:100%}.project-switch{padding:8px}.project-switch select{font-size:10px}}.team-card .danger-text{color:#b74c43;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 4px;font-size:10px}.team-card .danger-text:disabled{opacity:.5;cursor:wait}.team-card.inactive{opacity:.82;background:#fafbfa}.removed-members{border-top:1px solid var(--line);margin-top:22px;padding-top:17px}.removed-members h3{margin:0 0 4px;font-size:12px}.removed-members>p{color:var(--muted);margin:0 0 12px;font-size:10px}.repo-shortcut{color:var(--green);white-space:nowrap;background:#f1f7f2;border:1px solid #e0ece2;border-radius:8px;padding:7px 10px;font-size:10px;text-decoration:none}.repo-shortcut:hover{background:#e7f2e9}.field-hint{color:var(--muted);margin-top:3px;font-size:9px;font-weight:400;display:block}.github-workflow{background:#f8fbf8;border:1px solid #e5eee7;border-radius:10px;margin:14px 0;padding:13px}.github-workflow>p{color:#647269;margin:5px 0;font-size:10px;line-height:1.7}.github-workflow label{margin:10px 0 0}.github-workflow code{direction:ltr;background:#edf2ee;border-radius:4px;padding:2px 6px;display:inline-block}.top-actions{align-items:center;gap:8px;display:flex}.brand small,.nav-caption,.crumb,.demo-pill,.overline,.account-meta small,.sidebar-note p,.stat-label,.card-heading p,.phase-name small,.task-copy small,.member-info small,.daily-card p,.empty,.filters input,.filters select,.team-card small,.helper,.brief-links,.project-card p,.project-card small,.modal label,.detail-meta small,.criteria p,.feedback p,.resource-links,.pr-link,.invite-form label,.invite-result small,.role-chip,.phase-actions button,.field-hint{font-size:12px}.brand{font-size:19px}.nav button{font-size:14px}.welcome h1{font-size:26px;line-height:1.5}.welcome p{font-size:14px}.card-heading h2{font-size:16px}.stat-label{font-size:13px}.stat strong{font-size:27px}.phase-name b,.member-info b,.task-copy b{font-size:14px}.badge{padding:5px 9px;font-size:12px}.team-card b{font-size:14px}.primary,.secondary{font-size:13px}.project-card b{font-size:14px}.modal-title h2{font-size:20px}.modal input,.modal select,.modal textarea,.auth-card input{padding:11px 12px;font-size:14px}.modal label,.auth-card label{font-size:13px}.auth-card h1{font-size:25px}.auth-card>p,.auth-card .overline,.detail-desc{font-size:14px}.detail-meta b{font-size:13px}.github-workflow>b{font-size:14px}.github-workflow>p{font-size:13px}.phase-actions button{font-size:12px}.toast{font-size:13px}button,a,input,select,textarea{transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s}:focus-visible{outline-offset:2px;outline:3px solid #9bbda6!important}@media (max-width:570px){.welcome h1{font-size:21px}.card-heading h2{font-size:15px}.task-copy b,.team-card b{font-size:13px}.task-copy small,.badge{font-size:11px}.demo-pill{font-size:0}.card{padding:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
