:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#162d3f;background:#f2f6f9;font-size:16px;line-height:1.55;--blue:#1268bc;--navy:#112d44;--muted:#536b7c;--line:#dbe4eb}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;background:var(--blue);color:white;border:1px solid transparent;border-radius:8px;padding:11px 19px;cursor:pointer;font-weight:650;line-height:1.4;text-decoration:none}button:hover,.button:hover{background:#0c559c;text-decoration:none}button:disabled{opacity:.55;cursor:not-allowed}.secondary{background:white;color:var(--navy);border-color:#c9d7e1}.secondary:hover{background:#eaf2f8}.text-button{background:transparent;color:var(--blue);padding:6px 8px;font-size:.875rem}.text-button:hover{background:#eaf2f8}:focus-visible{outline:3px solid #dc920c;outline-offset:3px}input,textarea,select{display:block;width:100%;padding:11px 12px;border:1px solid #aebfcb;border-radius:7px;background:white;color:var(--navy);margin-top:6px}textarea{resize:vertical;min-height:100px}label{font-weight:600;display:block}small{font-size:.875rem;font-weight:400;display:block;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:2.25rem;line-height:1.16;letter-spacing:-.04em;margin-bottom:12px}h2{font-size:1.25rem;line-height:1.35;letter-spacing:-.02em}h3{font-size:1.1rem}.muted,.page-heading p{color:var(--muted)}.sidebar{width:236px;background:var(--navy);color:white;position:fixed;inset:0 auto 0 0;padding:32px 24px;display:flex;flex-direction:column}.brand{font-size:1.45rem;letter-spacing:-.035em;font-weight:750;color:inherit;display:block;line-height:1.4}.mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:#33c5dc;border-radius:10px;color:#102c42;margin-right:8px;font-size:1.35rem}.brand-sub{display:block;font-size:.75rem;letter-spacing:.15em;color:#9cb9cd;margin:12px 0 0 44px}.sidebar nav{display:grid;gap:8px;margin-top:46px}.sidebar nav a{color:#d5e6f1;padding:11px 14px;border-radius:8px}.sidebar nav .selected{background:#204963;color:white}.sidebar-bottom{margin-top:auto;font-size:.875rem}.sidebar-bottom small{color:#9fb8c9}.sidebar-bottom>a{display:block;color:#bdd3e1;margin-top:25px}.sidebar-bottom .secondary{background:transparent;color:white;border-color:#5d7789}.workspace{margin-left:236px;max-width:1570px;padding:44px 48px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.page-heading p{margin-bottom:0}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:750;color:#336986;display:block;margin-bottom:12px}.panel{background:white;border:1px solid var(--line);border-radius:12px;padding:28px;margin-bottom:24px}.narrow{max-width:760px}.stack{display:grid;gap:19px}.stack>button{justify-self:start;min-width:145px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:32px}.stats>div{border-top:3px solid #33aac5;background:#fff;border-radius:6px;padding:22px 25px}.stats span{display:block;color:var(--muted);font-size:.875rem}.stats strong{font-size:2.4rem;letter-spacing:-.04em;font-weight:650}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px}.project-card{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:12px;padding:26px;color:var(--navy);transition:border-color .15s}.project-card:hover{border-color:var(--blue);text-decoration:none}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.project-card h2{font-size:1.4rem;margin:8px 0 12px;overflow-wrap:anywhere}.project-card p{color:var(--muted);font-size:.9375rem;flex:1;overflow-wrap:anywhere}.badge{font-size:.875rem;display:inline-block;padding:4px 10px;background:#eaf3f9;color:#225774;border-radius:5px;font-weight:600}.progress-label{display:flex;justify-content:space-between;font-size:.875rem;margin:15px 0 8px}progress{display:block;width:100%;height:8px;border:0;border-radius:8px;overflow:hidden;background:#e4ecf2;accent-color:#137bba}progress::-webkit-progress-bar{background:#e4ecf2}progress::-webkit-progress-value{background:#137bba}progress::-moz-progress-bar{background:#137bba}.project-card footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;margin-top:26px;font-size:.875rem;color:var(--muted)}.project-card footer strong{color:var(--navy);font-weight:600}.empty{text-align:center;padding:58px 28px}.empty p{color:var(--muted);max-width:500px;margin:0 auto 24px}.empty-symbol{display:block;font-size:3rem;color:#127ba6;margin-bottom:12px}.notice{padding:18px 22px;background:#e7f5ef;border:1px solid #9fcfbb;border-radius:8px;margin-bottom:24px;color:#215941}.notice.error{background:#fff0ef;border-color:#df9d98;color:#8a2821}.page-footer{font-size:.875rem;color:var(--muted);margin-top:45px;padding-top:20px}.auth-wrap{max-width:510px;padding:52px 22px;margin:0 auto}.auth-brand{margin-bottom:32px;color:var(--navy)}.auth-card{background:white;border:1px solid var(--line);border-top:5px solid #28b0d0;border-radius:12px;padding:34px}.auth-card h1{font-size:1.95rem}.auth-card .stack{margin-top:27px}.auth-card button{width:100%}.help{font-size:.875rem;color:var(--muted);margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line)}.back{display:inline-block;margin-bottom:20px;font-size:.875rem}.count{font-size:.875rem;background:#edf3f7;border-radius:5px;padding:3px 8px;margin-left:8px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:650px}th{font-size:.875rem;color:var(--muted);font-weight:600}th,td{padding:16px 10px;border-bottom:1px solid var(--line)}td{vertical-align:middle}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions button{font-size:.875rem}.project-overview{display:grid;grid-template-columns:1fr 210px;gap:50px}.project-overview h2{margin-top:20px}.project-overview p{margin-bottom:0}.progress-block{border-left:1px solid var(--line);padding-left:28px;display:flex;flex-direction:column}.progress-block>strong{font-size:2.5rem;letter-spacing:-.04em}.progress-block>span{font-size:.875rem;color:var(--muted);margin-bottom:15px}.progress-block small{margin-top:25px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;align-items:start}.milestones{list-style:none;padding:0;margin:0}.milestones li{display:flex;align-items:start;gap:12px;padding:18px 0;border-top:1px solid var(--line)}.milestones li>div{flex:1;overflow-wrap:anywhere}.milestones li small{margin-top:4px}.check{font-size:1.35rem;color:#627e91}.check.done{color:#1d865e}.milestones button{font-size:.875rem}.update-form{padding-bottom:26px}.update{border-top:1px solid var(--line);padding-top:22px;margin-top:16px}.update-meta{display:flex;flex-direction:column;gap:3px;font-size:.9375rem}.update-meta span{font-size:.8125rem;color:var(--muted)}.update p{margin-top:12px}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}details{border-top:1px solid var(--line);padding-top:20px}summary{cursor:pointer;font-weight:650;color:var(--blue)}details .stack{margin-top:20px}.skip{position:absolute;top:-70px;left:10px;padding:12px;background:white;z-index:5}.skip:focus{top:10px}[hidden]{display:none!important}@media(max-width:1050px){.workspace{padding:32px 25px}.sidebar{width:205px;padding:25px 18px}.workspace{margin-left:205px}.detail-grid{grid-template-columns:1fr}.project-overview{gap:25px}}@media(max-width:720px){.sidebar{position:static;width:auto;padding:18px 20px;display:block}.brand-sub{display:none}.sidebar nav{display:flex;margin-top:15px;gap:5px}.sidebar-bottom{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:15px}.sidebar-bottom p{margin:0}.sidebar-bottom>a{display:none}.workspace{margin:0;padding:26px 18px}.page-heading{align-items:start;flex-direction:column;gap:16px}h1{font-size:1.95rem}.stats{gap:9px}.stats>div{padding:16px 11px}.stats span{font-size:.8125rem}.stats strong{font-size:1.9rem}.panel{padding:22px 18px}.project-overview{grid-template-columns:1fr}.progress-block{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.form-row{grid-template-columns:1fr}.auth-wrap{padding-top:30px}.auth-card{padding:27px 22px}.milestones li{flex-wrap:wrap}.page-footer{margin-top:30px}}
