:root{--ink: #172033;--ink-soft: #314056;--muted: #5d6b7c;--paper: #eef3f1;--paper-2: #e3ebe7;--card: #ffffff;--line: #d5e2dc;--navy: #303178;--navy-deep: #161a3a;--green: #31b646;--green-deep: #0c741c;--teal: #68ccd1;--accent: var(--green);--accent-deep: var(--green-deep);--sidebar: var(--navy-deep);--sidebar-text: #eef4f2;--good: #0c741c;--good-bg: #e5f6ea;--warn: #8a5a10;--warn-bg: #f8edd9;--bad: #9f1239;--bad-bg: #fde8ee;--info: #303178;--info-bg: #e8eaf8;--shadow: 0 16px 40px rgba(22, 26, 58, .07);--display: "IBM Plex Sans", "Segoe UI", sans-serif;--sans: "IBM Plex Sans", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);background:radial-gradient(1100px 480px at 100% -8%,rgba(49,182,70,.12),transparent 55%),radial-gradient(800px 420px at -8% 0%,rgba(48,49,120,.1),transparent 50%),var(--paper);font-family:var(--sans);font-size:14px;letter-spacing:0;line-height:1.45}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3{font-family:var(--sans);font-weight:600;letter-spacing:-.01em;margin:0}p{margin:0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--green)!important;box-shadow:0 0 0 3px #31b64629}.boot{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.login{min-height:100vh;display:grid;place-items:center;padding:32px 16px;background:radial-gradient(circle at 50% 0%,rgba(49,182,70,.22),transparent 32%),radial-gradient(circle at 80% 100%,rgba(104,204,209,.16),transparent 28%),linear-gradient(165deg,#101433,#1d2460 55%,#0d3a28)}.login-panel{width:min(440px,100%)}.brand-lockup{display:flex;gap:14px;align-items:center}.mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,var(--green),#1493a3);color:#fff;font-weight:750}.brand-lockup small,.sidebar .brand small{display:block;color:#b7c7d4;letter-spacing:.16em;text-transform:uppercase;font-size:10px;margin-top:2px}.login-card .login-brand small{color:var(--muted)}.login-brand{margin-bottom:18px;text-align:center}.login-brand strong{display:block;font-size:18px}.login-brand small{color:var(--muted)}.login-card{width:min(440px,100%);background:#fff;border:1px solid rgba(255,255,255,.8);border-radius:24px;padding:28px 28px 22px;box-shadow:var(--shadow)}.login-card h2{font-size:22px;margin-bottom:6px;text-align:center}.login-card .sub{color:var(--muted);margin-bottom:22px;text-align:center}.login-card .btn.primary{width:100%;margin-top:4px}.demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.demo-grid button,.btn,.btn-ghost,.btn-danger{border-radius:12px;border:1px solid var(--line);background:#fff;padding:10px 14px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn:hover,.demo-grid button:hover{transform:translateY(-1px);box-shadow:0 8px 16px #161a3a0f}.demo-grid button{text-align:left;background:#f7faf8}.demo-grid button span{display:block;color:var(--muted);font-size:12px;margin-top:2px}.password-hint{margin-top:14px;color:var(--muted);font-size:13px;text-align:center}.screen-btn{white-space:nowrap;padding:8px 12px}.login-screen{display:flex;justify-content:center;margin-top:12px}.shell{display:flex;min-height:100vh}.nav-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;border:0;background:#0c10246b}.sidebar{width:268px;background:radial-gradient(circle at 20% 0%,rgba(49,182,70,.22),transparent 32%),linear-gradient(180deg,#1a1f4a,#12162f 70%);color:var(--sidebar-text);padding:20px 14px 16px;display:flex;flex-direction:column;position:fixed;z-index:50;top:0;left:0;height:100vh;transform:translate(-105%);transition:transform .22s ease;box-shadow:8px 0 30px #12162f2e}.shell.nav-open .sidebar{transform:none}.shell.nav-pinned .sidebar{position:sticky;flex:0 0 268px;transform:none}.sidebar .brand{display:flex;gap:10px;align-items:center;padding:4px 8px 18px}.sidebar .brand strong{font-size:14px;font-weight:600;letter-spacing:-.01em;line-height:1.25}.nav-tools{margin-left:auto;display:flex;align-items:center;gap:4px}.nav-pin{border:1px solid rgba(255,255,255,.22);background:transparent;color:#d5e4ea;border-radius:999px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px}.nav-pin.on{background:#31b64647;border-color:#8eecc073;color:#fff}.nav-close{border:0;background:transparent;color:#d5e4ea;font-size:22px;line-height:1;padding:0 4px}.nav-label{margin:16px 12px 6px;color:#8ea0b8;font-size:11px;letter-spacing:.16em;text-transform:uppercase}.sidebar a.nav-link,.sidebar button.nav-link{display:block;width:100%;text-align:left;text-decoration:none;padding:10px 12px;border-radius:10px;color:#e7eef2;background:transparent;border:0;font-weight:520}.sidebar a.nav-link.active{background:#31b6462e;color:#fff;box-shadow:inset 3px 0 0 var(--green)}.sidebar a.nav-link:hover{background:#ffffff0f}.sidebar .spacer{flex:1}.sidebar .public-link{margin:8px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#31b64647,#68ccd129);color:#e9fff1;text-decoration:none;font-size:13px;border:1px solid rgba(142,236,192,.25)}.workspace{flex:1;width:100%;min-width:0;min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:16px;padding:14px 28px;position:sticky;top:0;z-index:20;background:#eef3f1db;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(213,226,220,.9)}.search{position:relative;flex:1}.search input,.field input,.field select,.field textarea{width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 13px}.search input{padding-left:14px;box-shadow:0 1px #fffc}.field textarea{min-height:90px;resize:vertical}.search-pop{position:absolute;top:48px;left:0;right:0;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:8px;z-index:30}.search-pop a,.search-pop button{display:block;width:100%;text-align:left;background:transparent;border:0;padding:8px 10px;border-radius:8px;text-decoration:none}.search-pop a:hover{background:#f3faf5}.search-pop small{color:var(--muted)}.top-tools{margin-left:auto;display:flex;align-items:center;gap:12px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:12px;width:40px;height:40px;position:relative;color:var(--navy)}.icon-btn em{position:absolute;top:-4px;right:-4px;background:var(--green);color:#fff;border-radius:99px;font-style:normal;font-size:10px;min-width:16px;padding:1px 4px}.note-pop{position:absolute;right:28px;top:66px;width:360px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);z-index:30;overflow:hidden}.note-pop header,.modal header{display:flex;justify-content:space-between;align-items:center;gap:12px}.note-pop header{padding:12px 14px;border-bottom:1px solid var(--line)}.note-pop button.item{display:block;width:100%;text-align:left;background:transparent;border:0;padding:10px 14px;border-bottom:1px solid var(--line)}.note-pop button.item.unread{background:#f3faf6}.note-pop button.item small{color:var(--muted)}.who{text-align:right}.who strong{display:block}.who span{color:var(--muted);font-size:12px}.menu-btn{display:inline-grid;place-items:center}.page{padding:26px 32px 72px}.page-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:20px}.eyebrow{color:var(--green-deep);letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:600;margin-bottom:6px}.page-head h1{font-size:24px;line-height:1.2}.page-head p.intro{color:var(--muted);margin-top:8px;max-width:560px;line-height:1.45}.page-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.btn.primary{background:linear-gradient(180deg,#3dcc58,#1f9a38);color:#fff;border-color:#178a32;font-weight:650;box-shadow:0 10px 18px #1f9a3838}.btn.ghost{background:#fff}.btn.danger{background:var(--bad-bg);color:var(--bad);border-color:transparent}.btn:disabled{opacity:.55;cursor:default;transform:none}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;align-items:center}.seg{display:flex;background:#fff;border-radius:14px;padding:4px;border:1px solid var(--line);box-shadow:0 1px #ffffffb3}.seg button{border:0;background:transparent;border-radius:10px;padding:8px 12px;color:var(--ink-soft)}.seg button.on{background:var(--navy);color:#fff}.filters select{background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 12px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.kpi{position:relative;overflow:hidden;background:var(--card);border-radius:18px;padding:16px 16px 14px 18px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.8)}.kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--green)}.kpi:nth-child(4n+2):before{background:var(--navy)}.kpi:nth-child(4n+3):before{background:var(--teal)}.kpi:nth-child(4n):before{background:var(--green-deep)}.kpi span{color:var(--muted);font-size:13px;font-weight:520}.kpi strong{display:block;font-size:22px;margin:6px 0 2px;letter-spacing:-.02em;font-weight:600;color:var(--navy-deep)}.kpi em{font-style:normal;color:var(--ink-soft);font-size:12px}.layout{display:grid;grid-template-columns:1.4fr .8fr;gap:12px}.panel{background:var(--card);border-radius:20px;padding:18px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.75)}.panel h2{font-size:16px;margin-bottom:4px}.panel .hint{color:var(--muted);font-size:13px;margin-bottom:10px}.chart-box{height:260px}.recharts-cartesian-axis-tick text{fill:#5d6b7c;font-size:12px}.insights{display:flex;flex-direction:column;gap:8px}.insight{border-radius:14px;padding:12px 14px;background:#f4f8f6;border:1px solid transparent}.insight.warn{background:var(--warn-bg)}.insight.good{background:var(--good-bg)}.insight.info{background:var(--info-bg)}.insight a{text-decoration:none}.insight strong{display:block;margin-bottom:4px}.insight span{color:var(--ink-soft);font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:750;padding:8px}td{padding:11px 8px;border-top:1px solid var(--line);vertical-align:middle}tbody tr:hover td{background:#f6fbf8}td a{text-decoration:none;border-bottom:1px solid transparent}td a:hover{border-bottom-color:var(--green)}.sort-btn{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;padding:0;color:inherit;letter-spacing:inherit;text-transform:inherit;font-weight:inherit;font-size:inherit}.sort-btn.on{color:var(--navy)}.sort-btn span{font-size:11px;color:var(--green-deep)}.filter-row th{padding-top:0;font-weight:520;text-transform:none;letter-spacing:0}.col-filter{width:100%;min-width:88px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12px;font-weight:520;letter-spacing:0;text-transform:none;color:var(--ink)}.table-empty{color:var(--muted);text-align:center;padding:22px 8px}.table-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:13px}.pager{display:flex;align-items:center;gap:8px}.pager .btn{padding:6px 10px}.page-size{display:inline-flex;align-items:center;gap:8px}.page-size select{background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px 8px}.mini-bars{display:flex;flex-direction:column;gap:8px;margin-top:8px}.mini-bars div{display:grid;grid-template-columns:minmax(168px,1.2fr) 1fr auto;gap:8px;align-items:center;font-size:13px}.mini-bars span{line-height:1.3}.track{height:8px;background:#e6eeea;border-radius:99px;overflow:hidden}.track i{display:block;height:100%;background:linear-gradient(90deg,var(--navy),var(--green));border-radius:99px}.stats{display:flex;gap:8px;flex-wrap:wrap}.stats span{background:#f3f7f5;border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:13px}.target{margin-bottom:14px;background:linear-gradient(135deg,#fff,#f3fbf5 70%)}.target .row{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;align-items:flex-end}.target .row>strong{font-size:20px;color:var(--green-deep);letter-spacing:-.02em;font-weight:600}.agenda{display:grid;grid-template-columns:1fr 1fr;gap:12px}.agenda li,.clean{list-style:none}.agenda ul{margin:8px 0 0;padding:0}.agenda li{padding:10px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px;align-items:center}.over{color:var(--bad)}.page.board-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:12px}.kanban-frame{position:relative;flex:1;min-height:0;display:flex}.kanban-scroll{flex:1;min-width:0;overflow:auto;transform:rotateX(180deg);scrollbar-color:#7d8b98 transparent}.kanban-scroll::-webkit-scrollbar{height:12px;width:10px}.kanban-scroll::-webkit-scrollbar-thumb{background:#7d8b98;border-radius:99px}.kanban{display:flex;gap:12px;padding:8px 8px 4px;align-items:stretch;min-height:100%;width:max-content;transform:rotateX(180deg)}.kanban-nav{position:absolute;top:28px;z-index:2;width:36px;height:36px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:22px;line-height:1;box-shadow:var(--shadow)}.kanban-nav.prev{left:8px}.kanban-nav.next{right:8px}.column{width:300px;flex:none;background:#e7eef0;border-radius:16px;padding:12px;min-height:100%;border:1px solid #d7e3e6}.column header{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;margin-bottom:8px}.column header strong{flex:1;min-width:0;font-size:13px;font-family:var(--sans);letter-spacing:0;font-weight:600;line-height:1.35;white-space:normal}.column header span{flex:none;color:var(--muted);font-size:12px}.dot{width:8px;height:8px;border-radius:99px;display:inline-block;margin-right:6px}.deal{background:var(--card);border-radius:14px;padding:12px;margin-bottom:8px;box-shadow:0 8px 18px #161a3a0d;cursor:grab;border:1px solid #edf2f0}.deal b{display:block;margin-bottom:4px}.deal small{color:var(--muted)}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:12px;background:#e8eef5;color:#243049;font-weight:650}.s-customer,.s-accepted,.s-active,.s-converted,.s-good{background:var(--good-bg);color:var(--good)}.s-prospect,.s-draft,.s-assigned,.s-new,.s-info{background:var(--info-bg);color:var(--info)}.s-sent,.s-in_progress,.s-warn,.s-negotiation{background:var(--warn-bg);color:var(--warn)}.s-rejected,.s-discarded,.s-cancelled,.s-inactive,.s-bad{background:var(--bad-bg);color:var(--bad)}.banner{background:var(--bad-bg);color:var(--bad);padding:10px 12px;border-radius:12px;margin-bottom:12px}.empty{padding:28px 8px;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid-3{display:grid;grid-template-columns:1.4fr .8fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px;font-size:13px;color:var(--ink-soft);font-weight:650}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#10143085;display:grid;place-items:center;z-index:40;padding:20px}.modal{width:min(560px,100%);background:var(--card);border-radius:20px;padding:16px 16px 18px;max-height:min(86vh,820px);overflow:auto;box-shadow:var(--shadow)}.modal.wide{width:min(760px,100%)}.modal header{margin-bottom:12px}.modal header h2{font-size:18px}.timeline{display:flex;flex-direction:column}.timeline article{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:12px 0;border-top:1px solid var(--line)}.composer{display:grid;grid-template-columns:150px 1fr auto;gap:8px;margin-bottom:8px}.side-card{background:var(--card);border-radius:20px;padding:16px;box-shadow:var(--shadow);margin-bottom:12px;border:1px solid rgba(255,255,255,.8)}.side-card h2{font-size:16px;margin-bottom:8px}.meta-list{display:grid;gap:6px;color:var(--ink-soft);font-size:14px}.contact{padding:8px 0;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:340px 1fr;gap:12px;align-items:start}.lead-list{display:flex;flex-direction:column;gap:8px}.lead-card{text-align:left;background:var(--card);border:1px solid transparent;border-radius:16px;padding:12px;box-shadow:var(--shadow)}.lead-card.on{border-color:var(--green);box-shadow:0 0 0 3px #31b64626}.lines,.lines td input{width:100%}.public-page{min-height:100vh;display:grid;grid-template-columns:.9fr 1.1fr}.public-side{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 12%,rgba(49,182,70,.4),transparent 30%),radial-gradient(circle at 10% 90%,rgba(104,204,209,.28),transparent 28%),linear-gradient(160deg,#101433,#1b2358 55%,#0e3d28);color:#f4fbf7;padding:48px}.public-side h1{font-weight:600;font-size:30px;line-height:1.25;margin:20px 0 12px;letter-spacing:-.02em}.public-side p{color:#d5e6df;max-width:460px;line-height:1.5}.public-side a{color:#9cf0c4;font-weight:650}.public-form{padding:40px 48px;background:var(--paper)}.public-form h2{font-size:22px;font-weight:600;letter-spacing:-.02em}.cycle{position:relative;width:min(680px,100%);height:680px;margin:8px auto 28px}.cycle-core,.cycle-node{display:grid;place-items:center;text-align:center;border-radius:50%;box-shadow:0 12px 28px #161a3a29}.cycle-core{position:absolute;width:168px;height:168px;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 32% 28%,#8fd0f5,#2f86d8 58%,#1d6cb8);color:#fff;font-weight:600;font-size:22px;line-height:1.15;z-index:1}.cycle-node{position:absolute;width:118px;height:118px;margin-left:-59px;margin-top:-59px;padding:10px;text-decoration:none;font-size:13px;font-weight:600;line-height:1.2}.cycle-node small{display:block;margin-top:3px;font-size:10px;font-weight:400;letter-spacing:0;opacity:.9}.cycle-node:hover{filter:brightness(1.06)}.matrix{display:grid;gap:6px}.matrix label{display:flex;gap:8px;align-items:center}@media(max-width:1100px){.kpis,.layout,.agenda,.grid-3,.split,.public-page{grid-template-columns:1fr}.public-side h1{font-size:26px}.story-points{grid-template-columns:1fr}}@media(max-width:800px){.cycle{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}.cycle-core,.cycle-node{position:static;width:auto;height:auto;min-height:76px;margin:0;border-radius:16px;transform:none}.shell.nav-pinned .sidebar{position:fixed;flex:none}.page,.topbar{padding-left:16px;padding-right:16px}.kpis{grid-template-columns:1fr 1fr}.composer,.timeline article{grid-template-columns:1fr}.who{display:none}.public-form,.login-story,.public-side{padding:28px 20px}}
