:root{--sd-primary:#007471;--sd-accent:#f9a020;--sd-bg:#ebe9e8;--sd-surface:#ffffff;--sd-text:#000000;--sd-muted:#737478;--sd-moving:#567d39;--sd-stuck:#ad6327;--sd-at-risk:#983228;--sd-font:Arial,"Helvetica Neue",Helvetica,system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--sd-bg);color:var(--sd-text);font-family:var(--sd-font)}.site-header{justify-content:space-between;padding:12px 24px;background:var(--sd-primary);color:#fff}.brand,.site-header{display:flex;align-items:center}.brand{gap:12px;font-weight:600}.user-box{display:flex;align-items:center;gap:10px}.user-box button{background:var(--sd-accent);color:#000;border:none;border-radius:4px;padding:6px 14px;font-weight:600;cursor:pointer}.user-box button:hover{filter:brightness(.92)}.site-footer{padding:16px 24px;color:var(--sd-muted);font-size:13px;text-align:center}main{max-width:1100px;margin:0 auto;padding:24px}.momentum{padding:2px 8px;border-radius:999px;font-size:12px;color:#fff}.momentum-moving{background:var(--sd-moving)}.momentum-stuck{background:var(--sd-stuck)}.momentum-at_risk{background:var(--sd-at-risk)}.summary-strip{display:flex;gap:24px;flex-wrap:wrap;background:var(--sd-surface);padding:16px;border-radius:8px;margin-bottom:20px}.metric{display:flex;flex-direction:column}.metric strong{font-size:20px;color:var(--sd-primary)}.metric span{color:var(--sd-muted);font-size:12px}.metric.stages{flex-direction:row;gap:12px;flex-wrap:wrap;font-size:12px}.project-card{display:block;background:var(--sd-surface);padding:16px;border-radius:8px;margin-bottom:12px;text-decoration:none;color:inherit;border:1px solid #eee}.project-card:hover{border-color:var(--sd-accent)}.project-card .row{display:flex;justify-content:space-between;align-items:center}.project-card h3{margin:0;color:var(--sd-primary)}.project-card .meta{display:flex;gap:14px;color:var(--sd-muted);font-size:13px;margin-top:6px;flex-wrap:wrap}.project-card .stage{text-transform:capitalize;font-weight:600;color:var(--sd-text)}.project-card .next{margin:8px 0 0;font-size:13px}.filters{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.filters label{display:flex;flex-direction:column;font-size:12px;color:var(--sd-muted);gap:4px}.page-head{display:flex;justify-content:space-between;align-items:center}.admin-actions{display:flex;gap:8px}.btn{background:var(--sd-accent);color:#fff;padding:8px 14px;border-radius:6px;text-decoration:none;border:none;cursor:pointer;font-size:14px}.timeline{list-style:none;padding:0}.timeline li{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #eee}.timeline .kind{font-size:11px;text-transform:uppercase;color:var(--sd-muted);min-width:70px}.timeline .meta{margin-left:auto;font-size:12px}.muted,.timeline .meta{color:var(--sd-muted)}.edit-form{display:grid;grid-gap:12px;gap:12px;max-width:640px}.edit-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--sd-muted)}.edit-form input,.edit-form select,.edit-form textarea{padding:8px;border:1px solid #ccc;border-radius:6px;font:inherit}.inline-form{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.inline-form input{flex:1 1;min-width:180px;padding:8px;border:1px solid #ccc;border-radius:6px}.landing{max-width:520px;margin:0 auto;padding:96px 24px;text-align:center}.landing-logo{margin-bottom:24px}.landing h1{color:var(--sd-primary);margin:0 0 8px}.landing-tagline{color:var(--sd-muted);margin:0 0 32px}.landing-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.landing-actions .btn-primary,.landing-actions .btn-secondary{padding:10px 18px;border-radius:6px;font-weight:600;text-decoration:none;display:inline-block}.landing-actions .btn-primary{background:var(--sd-accent);color:#fff}.landing-actions .btn-secondary{background:var(--sd-surface);color:var(--sd-primary);border:1px solid var(--sd-primary)}.landing-footer{margin-top:48px;color:var(--sd-muted);font-size:13px}.hub-head{margin-bottom:20px}.hub-head h1{color:var(--sd-primary);margin:0 0 4px}.hub-sub{color:var(--sd-muted);margin:0;font-size:14px}.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.app-tile{display:block;background:var(--sd-surface);padding:20px;border-radius:8px;border:1px solid #eee;text-decoration:none;color:inherit}.app-tile:hover{border-color:var(--sd-accent)}.app-tile h2{margin:0 0 6px;color:var(--sd-primary);font-size:18px}.app-tile p{margin:0;color:var(--sd-muted);font-size:14px}.brand{text-decoration:none;color:#fff}