:root{--bg: #f3f2f9;--card: #ffffff;--ink: #141a33;--ink-2: #3d4466;--muted: #5c6280;--line: #e5e3ef;--track: #ebe7f5;--navy: #0b1638;--navy-2: #17234d;--navy-soft: #f5effd;--purple: #9124ff;--purple-strong: #6420b8;--purple-50: #f5effd;--red: #b42318;--red-bg: #fef3f2;--warn: #a43f06;--warn-soft: #fff8eb;--good: #067647;--good-bg: #ecfdf3;--radius: 16px;--shadow: 0 1px 2px rgba(11, 22, 56, .04);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;--serif: var(--font);--sans: var(--font)}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:15px/1.5 var(--sans);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}.muted{color:var(--muted)}.small{font-size:12.5px}.eyebrow{font-size:13px;letter-spacing:.01em;font-weight:600;color:var(--purple-strong)}.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-inner{max-width:1180px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.logo-tile{background:var(--navy);border-radius:10px;padding:8px 12px;display:flex;align-items:center}.logo-tile img{height:22px;width:auto;display:block}.brand-text{display:flex;flex-direction:column;min-width:0}.brand-text strong{font-size:14px}.brand-text span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{display:flex;align-items:center;gap:10px}.demo-pill{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--warn);background:var(--warn-soft);border:1px solid #fbd68a;padding:5px 10px;border-radius:999px;white-space:nowrap}.role-switch{display:flex;background:var(--bg);border-radius:999px;padding:3px}.role-switch button{border:0;background:transparent;padding:5px 12px;border-radius:999px;font-size:13px;font-weight:600;color:var(--muted)}.role-switch button.active{background:var(--navy);color:#fff}.avatar{width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;flex:none}.tabs{max-width:1180px;margin:0 auto;padding:0 24px;display:flex;gap:24px}.tabs button{border:0;background:none;padding:10px 0 12px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent}.tabs button.active{color:var(--navy);border-bottom-color:var(--purple)}main{max-width:1180px;margin:0 auto;padding:28px 24px 96px}.screen[hidden]{display:none}.site-footer{text-align:center;color:var(--muted);font-size:12px;padding:0 16px 28px}.hero h1,.page-title{font-family:var(--font);font-size:32px;line-height:1.15;font-weight:750;letter-spacing:-.02em;color:var(--navy);margin:6px 0}.hero p,.page-sub{color:var(--muted);margin:0 0 22px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.sys-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.sys-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sys-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px}.sys-head h3{margin:0;font-size:15px}.sys-head .src{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:right}.lock{font-size:10px;font-weight:700;color:var(--purple-strong);background:var(--purple-50);padding:2px 7px;border-radius:999px;margin-left:6px;vertical-align:middle}.kpi{padding:8px 0;border-top:1px solid var(--line)}.kpi:first-of-type{border-top:0;padding-top:0}.kpi .label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.kpi .value{font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--navy)}.kpi .sub{font-size:12.5px;color:var(--good)}.kpi.warn .sub{color:var(--warn)}.row{display:grid;gap:14px;margin-top:14px}.row.charts{grid-template-columns:1.6fr 1fr}.row.split{grid-template-columns:1.1fr 1fr}.card-title{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.card-title h3{margin:0;font-size:16px}.card-sub{color:var(--muted);font-size:13px;margin:2px 0 12px}.highlight{font-weight:700;color:var(--purple-strong);white-space:nowrap}.chart svg{width:100%;height:auto;display:block}.legend{display:flex;gap:14px;font-size:12px;color:var(--muted);margin-top:6px}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}.bars{display:flex;flex-direction:column;gap:10px}.bar-row{display:grid;grid-template-columns:140px 1fr 40px;gap:10px;align-items:center;font-size:13px}.bar-track{background:var(--track);border-radius:999px;height:10px;overflow:hidden}.bar-fill{background:var(--purple);height:100%;border-radius:999px}.bar-row strong{text-align:right}.deadlines{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:4px}.deadline{border-left:3px solid var(--line);padding:4px 0 4px 10px}.deadline.hard{border-left-color:var(--red)}.deadline.soon{border-left-color:var(--warn)}.deadline.admin{border-left-color:var(--purple)}.deadline .date{font-size:12px;font-weight:700;color:var(--muted)}.deadline .t{font-weight:600;font-size:13.5px;line-height:1.3}.deadline .d{font-size:12px;color:var(--muted)}.list{display:flex;flex-direction:column}.approval{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.approval:first-child{border-top:0}.approval .meta{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.approval .t{font-weight:600}.approval .s{font-size:13px;color:var(--muted)}.approval .actions{display:flex;gap:6px;flex:none}.insight{padding:12px 0;border-top:1px solid var(--line)}.insight:first-child{border-top:0}.tag{font-size:10.5px;font-weight:700;letter-spacing:.08em;padding:2px 8px;border-radius:999px;margin-right:6px}.tag.BOTTLENECK{color:var(--red);background:var(--red-bg)}.tag.OPPORTUNITY{color:var(--good);background:var(--good-bg)}.tag.WORTH{color:var(--warn);background:var(--warn-soft)}.by{font-size:12px;color:var(--muted)}.insight p{margin:6px 0 0}.footnote{text-align:center;color:var(--muted);font-size:13px;margin-top:18px;font-style:italic}.btn{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.ghost{background:transparent}.btn:focus-visible,.tabs button:focus-visible,.role-switch button:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.icon-btn{border:0;background:none;font-size:24px;line-height:1;color:var(--muted)}.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.report-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.report-card:hover{border-color:#c9cfdb}.report-card h3{margin:0;font-family:var(--font);font-weight:750;letter-spacing:-.02em;color:var(--navy);font-size:19px}.report-card p{margin:0;color:var(--ink)}.report-card .read{color:var(--muted);font-size:13px;margin-top:auto}.who{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.report-view{max-width:780px;margin:0 auto;padding:28px 34px}.report-view .back{border:0;background:none;color:var(--muted);font-weight:600;padding:0;margin-bottom:14px}.report-view header{display:flex;gap:12px;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}.report-view h2{font-family:var(--font);font-weight:750;letter-spacing:-.02em;color:var(--navy);margin:2px 0 0;font-size:24px}.report-view p{font-size:15.5px;line-height:1.7}.sign{font-style:italic;color:var(--muted)}.disclaimer{font-size:12.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:18px}.chat-wrap{display:grid;grid-template-columns:240px 1fr;gap:14px}.chat-list{display:flex;flex-direction:column;gap:8px}.chat-person{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;text-align:left}.chat-person.active{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple);background:var(--purple-50)}.chat-person .dot{width:30px;height:30px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:700}.chat-person strong{display:block;font-size:14px}.chat-person span{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--good)}.chat-pane{display:flex;flex-direction:column;min-height:460px;padding:0;overflow:hidden}.chat-pane-head{display:flex;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);font-weight:600}.chat-pane-head span{font-size:11px;letter-spacing:.08em;color:var(--muted);font-weight:600}.chat-log{flex:1;padding:18px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.bubble{max-width:78%;padding:10px 14px;border-radius:14px;background:var(--bg)}.bubble.me{align-self:flex-end;background:var(--navy);color:#fff}.typing{display:inline-flex;gap:4px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes blink{0%,to{opacity:.25}50%{opacity:1}}.chips{display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px;border-top:1px solid var(--line)}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:13px}.chip:hover{border-color:var(--navy)}.chat-input{margin:0 18px 16px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;color:var(--muted);font-size:13px;font-style:italic;background:#fafbfd}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#141a2e73;display:grid;place-items:center;z-index:60;padding:16px}.modal[hidden]{display:none}.modal-card{background:#fff;border-radius:16px;width:min(640px,100%);max-height:90vh;display:flex;flex-direction:column}.modal-head{display:flex;justify-content:space-between;gap:12px;padding:18px 20px 10px}.modal-head h3{margin:4px 0 0;font-family:var(--font);font-weight:750;letter-spacing:-.02em;color:var(--navy)}.modal-body{padding:4px 20px 16px;white-space:pre-wrap;overflow-y:auto;line-height:1.6}.modal-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 20px;border-top:1px solid var(--line);flex-wrap:wrap}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;font-size:13.5px;opacity:0;transition:.25s;z-index:80;pointer-events:none;max-width:calc(100% - 32px)}.toast.show{opacity:1;transform:translate(-50%)}@media (max-width: 1080px){.sys-grid,.sys-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.deadlines{grid-template-columns:repeat(3,minmax(0,1fr))}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.topbar-inner,.tabs{padding-left:16px;padding-right:16px}main{padding:20px 16px 96px}.brand-text,.avatar{display:none}.demo-pill{font-size:9.5px;padding:4px 8px}.hero h1,.page-title{font-size:26px}.sys-grid,.sys-grid.cols-4,.row.charts,.row.split,.report-grid{grid-template-columns:1fr}.deadlines{grid-template-columns:1fr 1fr}.bar-row{grid-template-columns:110px 1fr 36px;font-size:12px}.approval{flex-direction:column;align-items:flex-start}.chat-wrap{grid-template-columns:1fr}.chat-list{flex-direction:row;overflow-x:auto;padding-bottom:4px}.chat-person{flex:none}.report-view{padding:20px 18px}}@media (max-width: 420px){.demo-pill .long{display:none}.logo-tile img{height:16px}.brand-text strong{font-size:13px}.role-switch button{padding:4px 9px;font-size:12px}}.role-badge{font-size:12px;font-weight:700;color:#fff;background:var(--purple);border-radius:999px;padding:5px 12px;text-transform:capitalize}.role-badge.staff{background:var(--good)}.signout{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;color:var(--muted)}.state{text-align:center;color:var(--muted);padding:60px 16px}.state h2{font-family:var(--font);font-weight:750;letter-spacing:-.02em;color:var(--navy);color:var(--ink)}@media (max-width: 420px){.signout{padding:4px 9px;font-size:12px}}.signin-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px}.signin-card{width:min(420px,100%);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 30px #0b163814;overflow:hidden}.signin-banner{background:var(--navy);padding:22px;display:flex;justify-content:center}.signin-banner img{height:36px;width:auto}.signin-body{padding:24px;display:flex;flex-direction:column;gap:14px}.signin-body h1{margin:0;font-size:24px;font-weight:750;letter-spacing:-.02em;color:var(--navy)}.signin-body>p{margin:-8px 0 0;font-size:14px}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ink-2)}.field input{font:inherit;font-size:16px;font-weight:400;color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:#fff}.field input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-50)}.btn.primary.signin-submit{padding:12px;font-size:15px;background:var(--purple);border-color:var(--purple)}.btn.primary.signin-submit:hover{background:var(--purple-strong);border-color:var(--purple-strong)}.signin-submit:disabled{opacity:.6;cursor:default}.signin-error{background:var(--red-bg);border:1px solid #fecdca;color:var(--red);border-radius:10px;padding:10px 12px;font-size:14px}.signin-notice{background:var(--good-bg);border:1px solid #abefc6;color:var(--good);border-radius:10px;padding:10px 12px;font-size:14px}.signin-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}.linklike{border:0;background:none;padding:0;color:var(--purple-strong);font-weight:600;font-size:14px}.pw-rules{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12.5px;color:var(--muted)}.pw-rules li:before{content:"○ "}.pw-rules li.met{color:var(--good)}.pw-rules li.met:before{content:"✓ "}.signin-foot{color:var(--muted);font-size:12px;margin-top:16px}@media (max-width: 420px){.pw-rules{grid-template-columns:1fr}}
