:root{--navy:#0d1b2a;--navy-soft:#1b2d40;--ink:#0d1b2a;--body:#33475b;--muted:#6b7c8d;--line:#dde4ea;--line-soft:#eaeff3;--ground:#f5f7f9;--surface:#fff;--accent:#1f6f78;--accent-soft:#e4f0f1;--good:#2f7d5d;--good-soft:#e4f1ea;--warn:#9a6b12;--warn-soft:#f7edd8;--bad:#a34331;--bad-soft:#f8e7e3;--radius:3px}*{box-sizing:border-box}body,html{padding:0;margin:0}body{background:var(--ground);color:var(--body);font:15px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--accent)}.topbar{background:var(--navy);color:#fff;padding:0 20px;display:flex;align-items:center;gap:24px;height:52px}.topbar .brand{font-weight:600;letter-spacing:.01em}.topbar .brand span{color:#8fb6bb;font-weight:400}.topbar nav{display:flex;gap:18px;margin-left:auto}.topbar nav a{color:#c8d6e0;text-decoration:none;font-size:14px;padding:4px 0;border-bottom:2px solid transparent}.topbar nav a:hover{color:#fff;border-bottom-color:#8fb6bb}.page{max-width:1080px;margin:0 auto;padding:26px 20px 80px}.page.narrow{max-width:640px}h1{font-size:22px;margin:0 0 4px}h1,h2{color:var(--ink);font-weight:600}h2{font-size:15px;margin:0 0 10px}.sub{color:var(--muted);font-size:14px;margin:0 0 22px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin-bottom:16px}.card h2{border-bottom:1px solid var(--line-soft);padding-bottom:9px;margin-bottom:12px}.grid{display:grid;grid-gap:14px;gap:14px}.grid.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.stat .n{font-size:26px;font-weight:600;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.2}.stat .label{text-transform:uppercase;letter-spacing:.07em;margin-top:3px}.stat .label,.stat .note{font-size:12px;color:var(--muted)}.stat .note{margin-top:6px}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--line-soft);vertical-align:top}tr:last-child td{border-bottom:0}td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}tbody tr:hover{background:#fafcfd}.pill{display:inline-block;font-size:11px;padding:2px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;white-space:nowrap}.pill.patient{background:var(--accent-soft);color:var(--accent)}.pill.customer{background:var(--good-soft);color:var(--good)}.pill.both{background:#e8e2f5;color:#5b4b8a}.pill.lead,.pill.prospect{background:var(--warn-soft);color:var(--warn)}.pill.lapsed,.pill.merged{background:#eceff1;color:var(--muted)}.tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:10px;background:var(--accent-soft);color:var(--accent);margin:0 4px 4px 0}a.tag{text-decoration:none;border:1px solid transparent}a.tag:hover{border-color:var(--accent)}a.tag.on{background:var(--accent);color:#fff}.muted{color:var(--muted)}.small{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}input[type=password],input[type=search],input[type=text],select,textarea{font:inherit;padding:7px 9px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);width:100%}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}textarea{min-height:72px;resize:vertical}.btn,button{font:inherit;font-size:14px;padding:7px 14px;border-radius:var(--radius);border:1px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;text-decoration:none;display:inline-block}.btn:hover,button:hover{background:var(--navy-soft)}.btn.ghost,button.ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn.ghost:hover,button.ghost:hover{background:var(--ground)}.btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row.end{justify-content:flex-end}.notice{padding:10px 13px;border-radius:var(--radius);font-size:14px;border:1px solid var(--line);background:var(--surface);margin-bottom:14px}.notice.warn{background:var(--warn-soft);border-color:#e6d2a4;color:#6d4c08}.notice.bad{background:var(--bad-soft);border-color:#e8c2b8;color:#7d3122}.notice.good{background:var(--good-soft);border-color:#b8dcc9;color:#1f5b42}.timeline{list-style:none;margin:0;padding:0}.timeline li{padding:9px 0 9px 16px;border-left:2px solid var(--line);position:relative}.timeline li:before{content:"";position:absolute;left:-5px;top:15px;width:8px;height:8px;border-radius:50%;background:var(--accent);border:2px solid #fff}.timeline .when{font-size:12px;color:var(--muted)}.dupgroup{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:14px}.dupgroup>header{padding:9px 14px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.dupgroup>header b{color:var(--ink)}.dupbody{padding:12px 14px}.dupcard{border:1px solid var(--line);border-radius:var(--radius);padding:11px 13px}.dupcard.keep{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.dupcard .name{font-weight:600;color:var(--ink)}.portalgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-gap:12px;gap:12px}.portaltile{display:flex;flex-direction:column;gap:5px;padding:13px 15px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:var(--body)}.portaltile:hover{background:#fafcfd;border-color:var(--accent)}.portaltile .ptitle{font-weight:600;color:var(--ink);line-height:1.3}.portaltile .pdesc{font-size:12.5px;color:var(--muted);line-height:1.45}.portaltile .pmeta{margin-top:auto;padding-top:6px}.field{display:block;margin-bottom:12px}.field>span{display:block;font-size:12.5px;font-weight:600;color:var(--muted);margin-bottom:4px}.field input,.field select,.field textarea{width:100%}.check{display:flex;align-items:center;gap:8px;margin:4px 0 14px;font-size:14px;cursor:pointer}.check input{width:auto}.btn.small,button.small{padding:4px 9px;font-size:12px}.field input:not([type=checkbox]):not([type=radio]),input[type=email],input[type=number],input[type=url]{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink)}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.shell-main{min-width:0;background:var(--ground)}.rail{background:#11161c;color:#cdd6de;display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.rail-brand{display:flex;align-items:center;gap:10px;padding:18px 16px 16px;color:#fff;text-decoration:none;border-bottom:1px solid hsla(0,0%,100%,.08)}.rail-mark{width:34px;height:34px;border-radius:50%;flex:none;background:#fff;color:#11161c;display:grid;place-items:center;font-size:10.5px;font-weight:800;letter-spacing:.02em}.rail-brand b{display:block;font-size:14.5px}.rail-brand small{display:block;font-size:11px;color:#7f8d9a;margin-top:1px}.rail nav{padding:8px 0;flex:1 1}.rail-item{display:flex;align-items:center;gap:11px;padding:10px 16px;color:#cdd6de;text-decoration:none;font-size:14px;border-left:3px solid transparent}.rail-item:hover{background:hsla(0,0%,100%,.05);color:#fff}.rail-item.on{background:hsla(0,0%,100%,.08);color:#fff;border-left-color:var(--accent)}.rail-item svg{opacity:.8;flex:none}.rail-sub{padding:2px 0 6px}.rail-sub a{display:block;padding:6px 16px 6px 48px;font-size:13px;color:#8e9ba7;text-decoration:none}.rail-sub a.on,.rail-sub a:hover{color:#fff}.rail-foot{padding:14px 16px;border-top:1px solid hsla(0,0%,100%,.08)}.rail-who{font-size:11.5px;color:#6f7d8a;margin-bottom:8px}.rail-foot button{width:100%;background:hsla(0,0%,100%,.07);color:#cdd6de;border:1px solid hsla(0,0%,100%,.12);font-size:12.5px;padding:7px}.rail-foot button:hover{background:hsla(0,0%,100%,.12);color:#fff}@media (max-width:860px){.shell{grid-template-columns:1fr}.rail{position:static;height:auto;flex-direction:column}.rail nav{display:flex;overflow-x:auto;padding:0}.rail-item{border-left:0;border-bottom:3px solid transparent;white-space:nowrap}.rail-item.on{border-left:0;border-bottom-color:var(--accent)}.rail-foot,.rail-sub{display:none}}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:18px}.tabs a{padding:9px 2px;font-size:15px;color:var(--muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs a.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.mrow{display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:10px}.mrow-thumb{width:46px;height:46px;border-radius:6px;flex:none;object-fit:cover;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent);font-weight:700;font-size:15px}.mrow-stats{display:flex;gap:26px;text-align:center}.mrow-stat b{display:block;font-size:15px;color:var(--ink)}.mrow-stat span{font-size:11px;color:var(--muted)}.buildhead{gap:14px;margin-bottom:16px}.buildhead,.buildthumb{display:flex;align-items:center}.buildthumb{width:54px;height:54px;flex:none;border-radius:var(--radius);background:var(--navy);color:#8fb6bb;overflow:hidden;justify-content:center;font-size:15px;font-weight:700;letter-spacing:.02em}.buildthumb.small{width:40px;height:40px;font-size:13px}.buildthumb img{width:100%;height:100%;object-fit:cover}.bcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;position:relative}.bcard-tick{position:absolute;top:-8px;right:-8px;width:19px;height:19px;border-radius:50%;background:var(--good);border:2px solid var(--ground)}.bcard-tick:after{content:"";position:absolute;left:4.5px;top:1.5px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.bcard>summary{display:block;padding:14px 18px 15px;cursor:pointer;list-style:none}.bcard>summary::-webkit-details-marker{display:none}.bcard-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.bcard-title{font-size:15px;font-weight:600;color:var(--ink)}.bcard-change{font-size:12.5px;color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);padding:3px 11px}.bcard[open] .bcard-change{background:var(--accent);color:#fff}.bcard-sum{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:9px;font-size:14px;color:var(--body)}.bcard-pill{font-size:11px;padding:2px 8px;border-radius:10px;flex:none;text-transform:capitalize}.bcard-pill.active{background:var(--good-soft);color:var(--good)}.bcard-pill.inactive{background:var(--warn-soft);color:var(--warn)}.bcard-pill.price{background:var(--accent-soft);color:var(--accent)}.bcard-body{border-top:1px solid var(--line-soft);padding:15px 18px 17px;background:#fbfcfd}.linkrow,.pricerow{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:11px 0;border-bottom:1px solid var(--line-soft)}.linkrow:last-of-type,.pricerow:last-of-type{border-bottom:0}.pricetag{flex:none;position:relative;text-align:center;line-height:1.1;background:var(--accent-soft);color:var(--accent);border-radius:var(--radius);padding:6px 10px;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em}.pricetag b{display:block;font-size:15px;letter-spacing:0}.heart{position:absolute;top:-6px;right:-6px;width:12px;height:12px}.heart:after,.heart:before{content:"";position:absolute;width:6px;height:9px;background:#b45cc8;border-radius:6px 6px 0 0;top:0}.heart:before{left:6px;transform:rotate(-45deg);transform-origin:0 100%}.heart:after{left:0;transform:rotate(45deg);transform-origin:100% 100%}details.inline{position:relative}details.inline>summary{list-style:none;cursor:pointer;display:inline-block}details.inline>summary::-webkit-details-marker{display:none}.pricebox{margin-top:10px;padding:14px;background:#fbfcfd}.pricebox,.prow{border:1px solid var(--line);border-radius:var(--radius)}.prow{display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:var(--surface);padding:12px 15px;margin-bottom:10px}.prow-stats{display:flex;gap:22px;text-align:center;flex:none}.btn.danger,button.danger{background:var(--bad);border-color:var(--bad);color:#fff}.btn.danger:hover,button.danger:hover{filter:brightness(1.08)}