:root{--ui-font: "IBM Plex Sans", "Helvetica Neue", sans-serif;--doc-serif: "Source Serif 4", Georgia, serif;--mono: "IBM Plex Mono", monospace;--bg: oklch(.965 .004 240);--panel: oklch(.99 .002 240);--ink: oklch(.25 .015 250);--ink-2: oklch(.45 .015 250);--ink-3: oklch(.62 .012 250);--line: oklch(.9 .006 240);--line-soft: oklch(.93 .005 240);--accent: oklch(.45 .09 200);--accent-soft: oklch(.95 .02 200);--amber: oklch(.55 .11 70);--amber-soft: oklch(.96 .03 80);--red: oklch(.55 .16 25);--red-soft: oklch(.96 .02 25);--green: oklch(.52 .1 155);--green-soft: oklch(.95 .03 155);--mb: oklch(.52 .06 214);--mb-soft: oklch(.95 .02 214)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:var(--ui-font);background:var(--bg);color:var(--ink);font-size:14px}#root{height:100%}.app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:16px;padding:0 20px;height:56px;background:var(--panel);border-bottom:1px solid var(--line);flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;letter-spacing:-.01em}.brand-mark{width:28px;height:28px;border-radius:8px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700}.brand small{font-weight:500;color:var(--ink-3);margin-left:2px}.topbar-spacer{flex:1}.btn{font-family:var(--ui-font);font-size:13px;font-weight:600;padding:7px 14px;border-radius:8px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;transition:background .12s,border-color .12s;display:inline-flex;align-items:center;gap:6px;text-decoration:none}.btn:hover{background:var(--bg);border-color:var(--ink-3)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.1);background:var(--accent)}.btn.ghost{border-color:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--line-soft)}.btn:disabled{opacity:.45;cursor:default}.main{display:flex;flex:1;min-height:0}.builder-pane{width:46%;min-width:480px;overflow-y:auto;padding:24px 28px 80px;background:var(--panel);border-right:1px solid var(--line)}.preview-pane{flex:1;overflow-y:auto;padding:32px 36px 80px;display:flex;flex-direction:column;align-items:center;gap:20px}.section{border:1px solid var(--line);border-radius:12px;margin-bottom:14px;background:var(--panel);overflow:hidden}.section-head{display:flex;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.section-head:hover{background:var(--bg)}.section-num{font-family:var(--mono);font-size:11px;color:var(--ink-3);width:20px}.section-title{font-weight:600;font-size:14px;flex:1;display:flex;align-items:center;gap:8px}.section-body{padding:4px 16px 18px 46px;border-top:1px solid var(--line-soft)}.dot{width:8px;height:8px;border-radius:50%;background:var(--line);flex-shrink:0}.dot.complete{background:var(--green)}.dot.attention{background:var(--amber)}.chev{color:var(--ink-3);font-size:11px;transition:transform .15s}.chev.open{transform:rotate(90deg)}.badge-compliance{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--amber);background:var(--amber-soft);border:1px solid oklch(.85 .06 80);padding:2px 7px;border-radius:99px;white-space:nowrap}.field{display:block;margin-top:14px}.field-label{font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:5px;display:flex;align-items:center;gap:6px}.req{color:var(--red)}input[type=text],input[type=date],textarea,select{font-family:var(--ui-font);font-size:13.5px;color:var(--ink);width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);outline:none;transition:border-color .12s,box-shadow .12s}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea{resize:vertical;min-height:64px;line-height:1.5}.row{display:grid;gap:10px}.row.c2{grid-template-columns:1fr 1fr}.row.c3{grid-template-columns:1fr 1fr 1fr}.row.c4{grid-template-columns:1.3fr .8fr 1.15fr 30px}.lab-flag-cell{display:flex;flex-direction:column;gap:5px;min-width:0}.labname{position:relative;min-width:0}.labname-trigger{width:100%;display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer;font-family:var(--ui-font);font-size:13.5px;color:var(--ink);text-align:left;transition:border-color .12s,box-shadow .12s}.labname-trigger:hover{border-color:var(--ink-3)}.labname-trigger:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.labname-trigger.empty .labname-trigger-text{color:var(--ink-3)}.labname-trigger-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.labname-caret{color:var(--ink-3);font-size:13px;flex-shrink:0;line-height:1}.labname-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:90;width:326px;max-width:80vw;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 48px #262f382e;overflow:hidden;animation:authfade .14s ease both}.labname-search{position:relative;padding:10px 10px 8px;border-bottom:1px solid var(--line-soft)}.labname-search-ic{position:absolute;left:21px;top:calc(50% - 1px);transform:translateY(-50%);color:var(--ink-3);font-size:14px;pointer-events:none}.labname-search input{width:100%;padding:8px 10px 8px 31px;border:1px solid var(--line);border-radius:8px;font-size:13px}.labname-list{max-height:304px;overflow-y:auto;padding:6px}.labname-group{margin-bottom:4px}.labname-group-head{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;padding:9px 8px 4px;position:sticky;top:0;background:var(--panel)}.labname-tier{margin-left:auto;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink-3);border:1px solid var(--line);border-radius:99px;padding:1px 7px}.labname-tier.adv{color:var(--accent);border-color:var(--accent-soft);background:var(--accent-soft)}.labname-opt{width:100%;display:flex;align-items:baseline;gap:8px;padding:7px 8px;border:none;background:transparent;border-radius:7px;cursor:pointer;text-align:left;font-family:var(--ui-font);font-size:13px;color:var(--ink)}.labname-opt:hover{background:var(--bg)}.labname-opt.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.labname-opt-name{flex:1;min-width:0}.labname-opt-unit{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);flex-shrink:0}.labname-none{padding:14px 12px;font-size:12.5px;color:var(--ink-3);line-height:1.55}.labname-other{width:100%;padding:11px 14px;border:none;border-top:1px solid var(--line);background:var(--bg);cursor:pointer;font-family:var(--ui-font);font-size:12.5px;font-weight:600;color:var(--ink-2);text-align:left}.labname-other:hover{background:var(--line-soft);color:var(--ink)}.labname-custom{display:flex;gap:6px;align-items:stretch}.labname-custom>input{flex:1;min-width:0}.labname-back{flex-shrink:0;border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:0 9px;cursor:pointer;font-family:var(--ui-font);font-size:11px;font-weight:600;color:var(--ink-2);white-space:nowrap}.labname-back:hover{border-color:var(--accent);color:var(--accent)}.regen-title{font-size:15.5px;font-weight:700;color:var(--ink);letter-spacing:-.01em}.regen-count{font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--ink-3);border:1px solid var(--line);border-radius:99px;padding:1px 7px}.regen-intro{font-size:12.5px;color:var(--ink-2);line-height:1.55;background:var(--bg);border:1px solid var(--line-soft);border-radius:9px;padding:10px 12px;margin-bottom:8px}.regen-group{margin-top:8px}.regen-group-head{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:1px}.regen-fields{display:grid;gap:8px;margin-top:10px}.doc-regen-note{font-style:italic;color:var(--ink-2)}.wiz-step.locked{color:var(--ink-3)}.wiz-step.locked .wiz-step-num{opacity:.8}.fin-locked{border:1px dashed var(--line);border-radius:14px;padding:26px 24px;text-align:center;background:var(--bg)}.fin-locked-ic{font-size:26px}.fin-locked-h{margin:10px 0 4px;font-size:16px}.fin-locked-p{color:var(--ink-2);font-size:13px;line-height:1.55;max-width:460px;margin:0 auto 12px}.fin-locked-list{display:inline-block;text-align:left;margin:0 auto 18px;padding-left:18px;color:var(--ink);font-size:13px;line-height:1.7}.fin{display:flex;flex-direction:column;gap:14px}.fin-banner{display:flex;align-items:center;gap:13px;padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:var(--panel)}.fin-banner b{display:block;font-size:14px}.fin-banner span:not(.fin-banner-ic):not(.mb-spin){display:block;font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-top:2px}.fin-banner-ic{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:15px;flex-shrink:0;color:#fff}.fin-banner.ready{border-color:var(--line)}.fin-banner.ready .fin-banner-ic{background:var(--ink-3)}.fin-banner.running{border-color:color-mix(in oklch,var(--accent) 40%,var(--line));background:var(--accent-soft)}.fin-banner.ok{border-color:color-mix(in oklch,var(--green) 45%,var(--line));background:color-mix(in oklch,var(--green) 9%,var(--panel))}.fin-banner.ok .fin-banner-ic{background:var(--green)}.fin-banner.err{border-color:color-mix(in oklch,var(--red) 50%,var(--line));background:color-mix(in oklch,var(--red) 8%,var(--panel))}.fin-banner.err .fin-banner-ic{background:var(--red)}.fin-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px 18px;padding:12px 16px;border:1px solid var(--line);border-radius:11px;background:var(--panel);font-size:13px}.fin-summary>div{display:flex;flex-direction:column;gap:2px;min-width:0}.fin-summary-k{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.fin-rows{display:flex;flex-direction:column;gap:8px}.fin-row{display:flex;gap:12px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.fin-row.tone-success{border-color:color-mix(in oklch,var(--green) 38%,var(--line))}.fin-row.tone-error{border-color:color-mix(in oklch,var(--red) 45%,var(--line));background:color-mix(in oklch,var(--red) 5%,var(--panel))}.fin-row.tone-running{border-color:color-mix(in oklch,var(--accent) 38%,var(--line))}.fin-row-ic{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-size:13px;font-weight:700;font-family:var(--mono);border:1px solid var(--line);color:var(--ink-3);background:var(--bg)}.fin-row-ic.success{background:var(--green);color:#fff;border-color:var(--green)}.fin-row-ic.error{background:var(--red);color:#fff;border-color:var(--red)}.fin-row-ic.running{border:none;background:transparent}.fin-row-main{min-width:0;flex:1}.fin-row-title{font-size:13.5px;font-weight:600}.fin-row-sub{font-size:12px;color:var(--ink-3);margin-top:1px}.fin-row-err{font-size:12.5px;color:var(--red);margin-top:6px;line-height:1.45;font-weight:500}.fin-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:8px}.fin-chip{font-family:var(--mono);font-size:11px;background:var(--line-soft);color:var(--ink-2);border-radius:6px;padding:2px 8px}.fin-dim{font-size:11.5px;color:var(--ink-3)}.fin-mini{font-family:var(--ui-font);font-size:12px;font-weight:600;border:1px solid var(--line);background:var(--panel);color:var(--accent);border-radius:7px;padding:4px 10px;cursor:pointer;text-decoration:none}.fin-mini:hover{border-color:var(--accent);background:var(--accent-soft)}.fin-integrity{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px;padding:4px 2px}.fin-integrity-k{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3)}.fin-mono{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);word-break:break-all}.fin-actions{display:flex;align-items:center;gap:12px;margin-top:2px}.fin-go{width:auto;padding:10px 20px;font-size:14px}.fin-done{display:flex;align-items:center;gap:9px;font-size:13.5px;font-weight:600;color:var(--ink)}.fin-done-ic{width:22px;height:22px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:13px}.fin-foot{display:flex;align-items:baseline;gap:7px;font-size:11.5px;color:var(--ink-3);line-height:1.5;border-top:1px solid var(--line-soft);padding-top:12px}.check-row{display:flex;align-items:flex-start;gap:9px;padding:7px 0;cursor:pointer}.check-row input{width:auto;margin-top:2px;accent-color:var(--accent)}.check-row span{line-height:1.45}.hint{font-size:12px;color:var(--ink-3);line-height:1.5;margin-top:6px}.entry-cols{display:grid;gap:10px;margin:12px 0 5px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3)}.lib-cat{margin-top:16px}.lib-cat-title{font-size:12.5px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:8px;margin-bottom:6px}.lib-count{font-family:var(--mono);font-size:10.5px;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:1px 7px}.lib-item{border:1px solid var(--line-soft);border-radius:9px;margin-bottom:6px;overflow:hidden;background:var(--panel)}.lib-item.on{border-color:var(--accent)}.lib-item-head{display:flex;align-items:center;gap:9px;padding:8px 10px;cursor:pointer;font-size:13px}.lib-item-head:hover{background:var(--bg)}.lib-toggle{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--line);display:grid;place-items:center;font-size:11px;color:#fff;flex-shrink:0}.lib-item.on .lib-toggle{background:var(--accent);border-color:var(--accent)}.lib-item-body{padding:2px 10px 10px 37px;display:flex;flex-direction:column;gap:8px}.lib-item-body textarea{min-height:48px;font-size:13px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{font-family:var(--ui-font);font-size:11.5px;font-weight:600;padding:4px 11px;border:none;background:transparent;color:var(--ink-2);cursor:pointer}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--accent);color:#fff}.sig-row{display:flex;align-items:center;gap:8px}.sig-row label{font-size:11px;font-weight:600;color:var(--amber);white-space:nowrap}.add-custom{display:flex;gap:8px;margin-top:4px}.add-custom input{flex:1}.tri{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--line-soft)}.tri:last-child{border-bottom:none}.tri-label{flex:1;font-size:13px;line-height:1.4}.chip-quick{font-family:var(--ui-font);font-size:12px;font-weight:500;border:1px solid var(--line);background:var(--panel);border-radius:99px;padding:4px 11px;cursor:pointer;color:var(--ink-2)}.chip-quick:hover{border-color:var(--accent);color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.icon-btn{border:none;background:transparent;color:var(--ink-3);cursor:pointer;font-size:15px;padding:4px;border-radius:6px;line-height:1}.icon-btn:hover{color:var(--red);background:var(--red-soft)}.compliance-bar{width:100%;max-width:760px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 18px}.compliance-bar h3{margin:0 0 10px;font-size:13px;display:flex;align-items:center;gap:8px}.compliance-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.comp-item{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--ink-2);padding:2px 0}.comp-icon{width:15px;height:15px;border-radius:50%;display:grid;place-items:center;font-size:9px;flex-shrink:0;color:#fff}.comp-icon.ok{background:var(--green)}.comp-icon.miss{background:var(--red)}.progress-pill{font-family:var(--mono);font-size:11px;padding:2px 9px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-weight:600}.paper{width:100%;max-width:760px;background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 2px 16px #262f3814;padding:56px 64px;font-family:var(--doc-serif);font-size:14px;line-height:1.55;color:#13161a}.paper.sans{font-family:var(--ui-font)}.doc-letterhead{display:flex;align-items:center;justify-content:space-between;border-bottom:2.5px solid var(--accent);padding-bottom:14px;margin-bottom:22px}.doc-letterhead .lh-name{font-family:var(--ui-font);font-weight:700;font-size:16px;letter-spacing:-.01em;display:flex;align-items:center;gap:9px}.doc-letterhead .lh-sub{font-family:var(--ui-font);font-size:11px;color:var(--ink-3);text-align:right;line-height:1.5}.doc-title{font-family:var(--ui-font);font-size:22px;font-weight:700;letter-spacing:-.015em;margin:0 0 4px}.doc-draft{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--amber);margin-bottom:16px}.doc-id-block{font-family:var(--ui-font);display:grid;grid-template-columns:repeat(3,1fr);gap:8px 20px;background:var(--bg);border:1px solid var(--line-soft);border-radius:8px;padding:13px 16px;margin-bottom:24px}.doc-id-block .idf{font-size:12.5px}.doc-id-block .idf b{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:1px}.doc-h{font-family:var(--ui-font);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin:26px 0 8px;padding-bottom:4px;border-bottom:1px solid var(--line-soft)}.doc-sub-h{font-family:var(--ui-font);font-size:13px;font-weight:700;margin:14px 0 4px;color:#232a30}.doc p{margin:0 0 8px}.doc ul{margin:4px 0 10px;padding-left:20px}.doc li{margin-bottom:4px}.doc-intent{font-family:var(--ui-font);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:4px;padding:1px 6px;margin-right:6px;position:relative;top:-1px}.doc-intent.start{background:var(--accent-soft);color:var(--accent)}.doc-intent.consider{background:var(--amber-soft);color:var(--amber)}.doc-intent.continue{background:var(--green-soft);color:var(--green)}.doc-sig-note{font-family:var(--mono);font-size:11px;color:var(--ink-2)}.lab-table{width:100%;border-collapse:collapse;font-family:var(--ui-font);font-size:12.5px;margin:8px 0 12px}.lab-table th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);padding:5px 10px;border-bottom:1.5px solid var(--line)}.lab-table td{padding:6px 10px;border-bottom:1px solid var(--line-soft)}.lab-flag{font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:99px;white-space:nowrap}.lab-flag.tone-good{background:var(--green-soft);color:var(--green)}.lab-flag.tone-warn{background:var(--amber-soft);color:var(--amber)}.lab-flag.tone-bad{background:var(--red-soft);color:var(--red)}.lab-flag.tone-neutral{background:var(--line-soft);color:var(--ink-2)}.sig-block{margin-top:36px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.sig-line{flex:1}.sig-script{font-family:"Source Serif 4",cursive;font-style:italic;font-size:22px;min-height:32px;border-bottom:1px solid var(--ink-3);padding-bottom:2px}.sig-caption{font-family:var(--ui-font);font-size:10.5px;color:var(--ink-3);margin-top:5px}.doc-empty{color:var(--ink-3);font-style:italic;font-size:13px}.followup-box{background:var(--accent-soft);border-radius:8px;padding:12px 16px;font-family:var(--ui-font);font-size:13px}.top-recs{border:1px solid var(--line);border-radius:12px;padding:14px 16px 16px;margin-top:14px;background:var(--panel)}.top-recs-title{font-size:12.5px;font-weight:700;display:flex;align-items:center;gap:8px}.top-recs-sub{font-size:12px;color:var(--ink-3);margin-top:3px;line-height:1.5}.top-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:12px}.top-card{text-align:left;border:1.5px solid var(--line);border-radius:9px;padding:9px 11px;background:var(--panel);cursor:pointer;font-family:var(--ui-font);font-size:12.5px;font-weight:600;color:var(--ink);display:flex;flex-direction:column;gap:2px;transition:border-color .12s,background .12s}.top-card:hover{border-color:var(--ink-3)}.top-card small{font-weight:500;font-size:10.5px;color:var(--ink-3)}.top-card.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.top-card.on small{color:var(--accent);opacity:.75}.top-card .top-rank{font-family:var(--mono);font-size:9.5px;color:var(--ink-3)}.wiz-rail{width:252px;flex-shrink:0;border-right:1px solid var(--line);background:var(--panel);padding:18px 12px;overflow-y:auto}.wiz-rail-title{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:0 10px 10px}.wiz-step{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer;color:var(--ink-2);font-size:13px;font-weight:500;-webkit-user-select:none;user-select:none}.wiz-step:hover{background:var(--bg)}.wiz-step.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.wiz-step-num{width:22px;height:22px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;font-family:var(--mono);font-size:10.5px;flex-shrink:0;background:var(--panel);color:var(--ink-3)}.wiz-step.done .wiz-step-num{background:var(--green);border-color:var(--green);color:#fff}.wiz-step.active .wiz-step-num{border-color:var(--accent);color:var(--accent)}.wiz-step .badge-compliance{margin-left:auto}.wiz-content{flex:1;overflow-y:auto;padding:36px 40px 90px}.wiz-card{max-width:720px;margin:0 auto}.wiz-card h2{font-size:21px;letter-spacing:-.015em;margin:0 0 6px}.wiz-desc{color:var(--ink-2);font-size:13.5px;line-height:1.55;margin:0 0 14px}.wiz-subhead{font-size:13.5px;font-weight:700;margin:26px 0 2px;display:flex;align-items:center;gap:8px}.wiz-nav{display:flex;align-items:center;gap:12px;margin-top:30px;padding-top:18px;border-top:1px solid var(--line-soft)}.wiz-nav .spacer{flex:1}.wiz-nav .btn{box-sizing:border-box;width:118px;flex-shrink:0;justify-content:center;text-align:center;padding-left:12px;padding-right:12px}.wiz-counter{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.wiz-status{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}.wiz-hint{font-size:11.5px;line-height:1.4;color:var(--amber);font-weight:600;white-space:nowrap}.sex-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.sex-card{border:1.5px solid var(--line);border-radius:10px;padding:13px 14px;cursor:pointer;text-align:center;font-weight:600;background:var(--panel);font-family:var(--ui-font);font-size:14px;color:var(--ink)}.sex-card:hover{border-color:var(--ink-3)}.sex-card.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.sex-card small{display:block;font-weight:500;font-size:11.5px;color:var(--ink-3);margin-top:4px;line-height:1.45}.wiz-overlay{position:fixed;inset:0;background:#0f171f59;z-index:60;display:flex;justify-content:flex-end}.wiz-drawer{width:min(840px,92vw);background:var(--bg);height:100%;overflow-y:auto;padding:28px;box-shadow:-8px 0 40px #0f171f40;display:flex;flex-direction:column;gap:16px;align-items:center}.print-doc{display:none}.auth-stage{position:fixed;inset:0;display:grid;place-items:center;padding:24px;overflow:auto;background:radial-gradient(1100px 560px at 50% -12%,color-mix(in oklch,var(--accent) 12%,var(--bg)),var(--bg) 62%)}.auth-fade{animation:authfade .34s ease both}@keyframes authfade{0%{transform:translateY(8px)}to{transform:none}}@keyframes aspin{to{transform:rotate(360deg)}}.auth-card{width:422px;max-width:100%;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 46px #262f3821;padding:36px 38px 24px}.auth-brand{display:flex;align-items:center;gap:11px;justify-content:center;font-weight:700;font-size:16px;letter-spacing:-.01em}.auth-brand small{font-weight:500;color:var(--ink-3)}.auth-mark{width:34px;height:34px;border-radius:10px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:700}.auth-h{font-size:21px;font-weight:700;letter-spacing:-.015em;text-align:center;margin:24px 0 6px}.auth-sub{text-align:center;color:var(--ink-2);font-size:13.5px;line-height:1.55;margin:0 auto 22px;max-width:322px}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border-radius:11px;border:1px solid var(--line);background:var(--panel);font-family:var(--ui-font);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s}.google-btn:hover{border-color:var(--ink-3);box-shadow:0 3px 12px #262f3817}.gmark{width:18px;height:18px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;flex-shrink:0}.gmark span{border-radius:3px;display:block}.gmark.lg{width:24px;height:24px;gap:3px}.auth-domain{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;font-size:12px;color:var(--ink-3)}.auth-domain code{font-family:var(--mono);background:var(--bg);border:1px solid var(--line-soft);border-radius:6px;padding:2px 8px;font-size:11px;color:var(--ink-2)}.auth-foot{margin-top:24px;padding-top:15px;border-top:1px solid var(--line-soft);display:flex;align-items:flex-start;gap:8px;justify-content:center;font-size:11.5px;color:var(--ink-3);line-height:1.5;text-align:left}.auth-foot .lock{color:var(--green);flex-shrink:0;position:relative;top:1px}.auth-center{text-align:center}.auth-spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:aspin .8s linear infinite;margin:4px auto 18px}.idp-frame{width:452px;max-width:100%;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 14px 46px #262f3821}.idp-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg);border-bottom:1px solid var(--line)}.idp-dots{display:flex;gap:6px}.idp-dots i{width:10px;height:10px;border-radius:50%;background:var(--line);display:block}.idp-url{flex:1;display:flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--line-soft);border-radius:7px;padding:5px 11px;font-family:var(--mono);font-size:11px;color:var(--ink-2);overflow:hidden;white-space:nowrap}.idp-url .lock{color:var(--green);font-size:11px}.idp-body{padding:28px 32px 26px}.idp-head{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:var(--ink-2)}.idp-h{font-size:18px;font-weight:600;letter-spacing:-.01em;margin:16px 0 3px}.idp-sub{color:var(--ink-2);font-size:13px;line-height:1.5;margin-bottom:16px}.idp-sub b{color:var(--ink);font-weight:600}.acct-row{display:flex;align-items:center;gap:13px;padding:11px 10px;border-radius:11px;cursor:pointer;border:1px solid transparent;transition:background .12s,border-color .12s}.acct-row:hover{background:var(--bg);border-color:var(--line)}.acct-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:14px;color:#fff;flex-shrink:0}.acct-meta{min-width:0}.acct-name{font-weight:600;font-size:13.5px;color:var(--ink)}.acct-email{font-size:12px;color:var(--ink-3);font-family:var(--mono)}.acct-tag{margin-left:auto;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:99px;white-space:nowrap}.acct-tag.clin{color:var(--green);background:var(--green-soft)}.acct-tag.staff{color:var(--ink-3);background:var(--bg);border:1px solid var(--line-soft)}.acct-sep{height:1px;background:var(--line-soft);margin:5px 6px}.acct-add{color:var(--accent);font-weight:600}.acct-add .acct-avatar{background:var(--bg);color:var(--accent);border:1px dashed var(--line);font-size:18px}.verify-acct{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg);border-radius:11px;border:1px solid var(--line-soft);margin-bottom:8px}.verify-list{display:flex;flex-direction:column;gap:1px;margin:6px 0 2px}.verify-item{display:flex;align-items:center;gap:11px;padding:9px 4px;font-size:13px;color:var(--ink)}.verify-check{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-size:11px;color:#fff;flex-shrink:0;transition:background .2s,border-color .2s}.verify-item.done .verify-check{background:var(--green);border-color:var(--green)}.verify-item.fail{color:var(--red)}.verify-item.fail .verify-check{background:var(--red);border-color:var(--red)}.verify-item.pending .verify-check{border-color:var(--line);border-top-color:var(--accent);animation:aspin .7s linear infinite}.auth-status-ic{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font-size:26px;margin:2px auto 14px}.auth-status-ic.ok{background:var(--green-soft);color:var(--green)}.auth-status-ic.no{background:var(--red-soft);color:var(--red)}.user-chip{display:flex;align-items:center;gap:8px;padding:4px 11px 4px 4px;border-radius:99px;border:1px solid var(--line);background:var(--panel);cursor:pointer;font-family:var(--ui-font);transition:border-color .12s,background .12s}.user-chip:hover{border-color:var(--ink-3);background:var(--bg)}.user-avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:10.5px;font-weight:600;flex-shrink:0}.user-chip-name{font-size:12.5px;font-weight:600;color:var(--ink)}.user-caret{color:var(--ink-3);font-size:9px}.user-menu{position:fixed;top:52px;right:14px;width:264px;background:var(--panel);border:1px solid var(--line);border-radius:13px;box-shadow:0 14px 46px #262f3829;z-index:90;overflow:hidden;animation:authfade .16s ease both}.user-menu-head{padding:15px 16px;display:flex;gap:12px;align-items:center}.user-menu-name{font-weight:600;font-size:13.5px}.user-menu-email{font-size:11.5px;color:var(--ink-3);font-family:var(--mono)}.user-menu-role{font-size:11.5px;color:var(--ink-2);margin-top:2px}.user-sso{display:flex;align-items:center;gap:7px;padding:9px 16px;background:var(--bg);font-size:11px;color:var(--ink-3);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}.user-menu-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:11px 16px;border:none;background:var(--panel);font-family:var(--ui-font);font-size:13px;font-weight:500;color:var(--ink);cursor:pointer}.user-menu-item:hover{background:var(--bg)}.menu-backdrop{position:fixed;inset:0;z-index:85}.mb-mark{width:34px;height:34px;border-radius:9px;background:var(--mb);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;font-family:var(--mono);letter-spacing:-.02em;flex-shrink:0}.mb-mark.sm{width:26px;height:26px;border-radius:7px;font-size:11px}.btn.mb{background:var(--mb);border-color:var(--mb);color:#fff}.btn.mb:hover{filter:brightness(1.08);background:var(--mb)}.mb-spin{width:20px;height:20px;border:2.5px solid var(--line);border-top-color:var(--mb);border-radius:50%;animation:aspin .7s linear infinite;flex-shrink:0}.mb-connect{border:1px solid var(--line);border-radius:12px;padding:18px;background:var(--panel)}.mb-connect-head{display:flex;align-items:center;gap:12px}.mb-connect-title{font-weight:700;font-size:14px}.mb-connect-title small{display:block;font-weight:500;font-size:11.5px;color:var(--ink-3);margin-top:1px}.mb-connect-sub{font-size:12.5px;color:var(--ink-2);line-height:1.55;margin:13px 0 16px}.mb-connect-sub code{font-family:var(--mono);font-size:11px;background:var(--bg);border:1px solid var(--line-soft);border-radius:5px;padding:1px 6px;color:var(--ink-2)}.mb-connecting{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--ink-2);padding:4px 0}.mb-login-actions{display:flex;align-items:center;gap:10px;margin-top:18px}.mb-login-foot{margin-top:15px;padding-top:13px;border-top:1px solid var(--line-soft);font-size:11px;color:var(--ink-3);line-height:1.5;display:flex;gap:7px;align-items:flex-start}.mb-login-foot .lock{color:var(--green);flex-shrink:0;position:relative;top:1px}.mb-bar{display:flex;align-items:center;gap:11px;padding:10px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.mb-bar .mb-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px var(--green-soft);flex-shrink:0}.mb-bar-site{font-weight:600;font-size:12.5px;line-height:1.3}.mb-bar-meta{font-size:11px;color:var(--ink-3);font-family:var(--mono)}.mb-bar .spacer{flex:1}.mb-link{background:none;border:none;color:var(--ink-3);font-size:11.5px;cursor:pointer;font-family:var(--ui-font);font-weight:600;padding:4px 6px;border-radius:6px}.mb-link:hover{color:var(--mb);background:var(--mb-soft)}.mb-search{position:relative;margin-top:14px}.mb-search-ic{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:15px;pointer-events:none}.mb-search input{width:100%;padding:11px 13px 11px 38px;border:1px solid var(--line);border-radius:10px;font-size:14px}.mb-search input:focus{border-color:var(--mb);box-shadow:0 0 0 3px var(--mb-soft)}.mb-results-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin:16px 4px 7px}.mb-results{display:flex;flex-direction:column;gap:5px}.mb-result{display:flex;align-items:center;gap:12px;padding:10px 11px;border:1px solid var(--line-soft);border-radius:10px;cursor:pointer;background:var(--panel);transition:border-color .12s,background .12s;text-align:left}.mb-result:hover{border-color:var(--mb);background:var(--bg)}.mb-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:600;font-size:13px;flex-shrink:0}.mb-result-name{font-weight:600;font-size:13.5px;color:var(--ink)}.mb-result-meta{font-size:11.5px;color:var(--ink-3);margin-top:1px}.mb-result-meta .mono{font-family:var(--mono)}.mb-result-right{margin-left:auto;display:flex;flex-direction:column;gap:4px;align-items:flex-end;flex-shrink:0}.mb-status{font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:99px}.mb-status.active{color:var(--green);background:var(--green-soft)}.mb-status.prospect{color:var(--amber);background:var(--amber-soft)}.mb-id{font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}.mb-empty{font-size:12.5px;color:var(--ink-3);padding:18px;text-align:center;border:1px dashed var(--line);border-radius:10px}.mb-empty b{color:var(--ink-2)}.mb-patient{border:1px solid var(--mb);border-radius:12px;overflow:hidden;margin-top:14px}.mb-patient-head{display:flex;align-items:center;gap:13px;padding:14px 16px;background:var(--mb-soft);border-bottom:1px solid color-mix(in oklch,var(--mb) 22%,white)}.mb-patient-name{font-weight:700;font-size:16px;letter-spacing:-.01em}.mb-head-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.mb-synced-badge{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mb);background:var(--panel);border:1px solid color-mix(in oklch,var(--mb) 28%,white);border-radius:99px;padding:2px 8px}.mb-synced-badge .mb-tick{width:6px;height:6px;border-radius:50%;background:var(--mb)}.mb-patient-sub{font-size:11.5px;color:var(--ink-2);font-family:var(--mono);margin-top:2px}.mb-patient-body{padding:15px 16px 16px}.mb-syncgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:13px 16px}.mb-field-label{font-size:10px;font-weight:700;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);margin-bottom:4px;display:flex;align-items:center;gap:5px}.mb-field-label .mb-tick{width:6px;height:6px;border-radius:50%;background:var(--mb);flex-shrink:0}.mb-field-value{font-size:14.5px;font-weight:600;color:var(--ink)}.mb-field-value small{font-weight:500;font-size:12px;color:var(--ink-3)}.mb-contact{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line-soft);font-size:12px;color:var(--ink-2)}.mb-contact span{display:inline-flex;align-items:center;gap:6px}.mb-contact .mono{font-family:var(--mono)}.mb-encounter{margin-top:16px}.mb-encounter-label{font-size:12.5px;font-weight:700;color:var(--ink);margin-bottom:2px}.mb-encounter-note{font-size:11.5px;color:var(--ink-3);margin-bottom:10px}.ro-field{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font-size:13.5px}.ro-field .ro-lock{margin-left:auto;font-size:11px;color:var(--ink-3);white-space:nowrap}.pb-group-label{font-size:12.5px;font-weight:700;color:var(--ink);margin:22px 0 2px;display:flex;align-items:center;gap:8px}.pb-group-note{font-size:11.5px;color:var(--ink-3);margin-bottom:10px;display:flex;align-items:center;gap:6px}.rec-list-head{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink);margin:22px 0 8px}.fm-added-count{font-family:var(--mono);font-size:11px;padding:1px 8px;border-radius:99px;background:var(--accent);color:#fff;font-weight:600}.rec-count{font-family:var(--mono);font-size:11px;padding:1px 8px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-weight:600}.rec-empty{font-size:13px;color:var(--ink-3);border:1px dashed var(--line);border-radius:10px;padding:16px;line-height:1.55}.rec-list{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.rec-card{border:1px solid var(--line);border-radius:11px;padding:12px 13px;background:var(--panel)}.rec-card-head{display:flex;align-items:flex-start;gap:10px}.rec-card-head .icon-btn{margin-left:auto}.rec-card-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.fm-name{font-weight:600;font-size:13.5px;color:var(--ink);line-height:1.35}.fm-meta{font-size:11.5px;color:var(--ink-3);margin-top:2px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.fm-tag{font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:1px 6px;border-radius:99px;white-space:nowrap}.fm-tag.tone-good{background:var(--green-soft);color:var(--green)}.fm-tag.tone-warn{background:var(--amber-soft);color:var(--amber)}.fm-tag.tone-bad{background:var(--red-soft);color:var(--red)}.fm-tag.tone-neutral{background:var(--line-soft);color:var(--ink-2)}.fm-panel{border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:14px;background:var(--panel)}.fm-panel-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.fm-panel-note{margin-left:auto;font-size:11px;font-weight:500;color:var(--ink-3)}.fm-search{position:relative;margin-top:12px}.fm-search-ic{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--ink-3);font-size:15px;pointer-events:none}.fm-search input{width:100%;padding:10px 34px 10px 36px;border:1px solid var(--line);border-radius:10px;font-size:14px}.fm-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.fm-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--ink-3);font-size:16px;cursor:pointer;padding:4px;border-radius:6px;line-height:1}.fm-search-clear:hover{color:var(--ink);background:var(--line-soft)}.fm-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.fm-chip{font-family:var(--ui-font);font-size:11.5px;font-weight:600;border:1px solid var(--line);background:var(--panel);border-radius:99px;padding:5px 11px;cursor:pointer;color:var(--ink-2)}.fm-chip:hover{border-color:var(--ink-3)}.fm-chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.fm-browse{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.fm-browse-card{text-align:left;border:1px solid var(--line);border-radius:10px;padding:11px 12px;background:var(--panel);cursor:pointer;display:flex;flex-direction:column;gap:3px}.fm-browse-card:hover{border-color:var(--accent);background:var(--bg)}.fm-browse-name{font-size:13px;font-weight:600;color:var(--ink)}.fm-browse-count{font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}.fm-results{margin-top:12px}.fm-results-count{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-bottom:8px}.fm-group{margin-bottom:12px}.fm-group-head{display:flex;align-items:baseline;gap:8px;font-size:12.5px;font-weight:700;color:var(--ink);margin:0 0 5px;padding-bottom:4px;border-bottom:1px solid var(--line-soft)}.fm-group-sys{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);margin-left:auto}.fm-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:9px;margin-bottom:5px;background:var(--panel)}.fm-row.on{border-color:var(--accent);background:var(--accent-soft)}.fm-row-main{min-width:0;flex:1}.fm-add{flex-shrink:0;font-family:var(--ui-font);font-size:12px;font-weight:600;border:1px solid var(--accent);background:var(--panel);color:var(--accent);border-radius:8px;padding:6px 12px;cursor:pointer;white-space:nowrap}.fm-add:hover{background:var(--accent-soft)}.fm-add.added{background:var(--accent);color:#fff;border-color:var(--accent)}.fm-suggested{margin-top:12px;padding:11px 12px;border:1px solid var(--line-soft);border-radius:10px;background:var(--bg)}.fm-suggested-head{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-bottom:8px}.fm-suggested-row{display:flex;flex-wrap:wrap;gap:6px}.fm-suggested-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--ui-font);font-size:12px;font-weight:600;border:1px solid var(--accent);background:var(--panel);color:var(--accent);border-radius:99px;padding:5px 12px 5px 9px;cursor:pointer}.fm-suggested-chip:hover{background:var(--accent-soft)}.fm-suggested-chip.added{background:var(--accent);color:#fff}.fm-suggested-mark{font-weight:700;line-height:1}.fm-suggested-name{white-space:nowrap}.confirm-overlay{position:fixed;inset:0;z-index:90;background:#0f171f59;display:flex;align-items:center;justify-content:center;padding:20px}.confirm-modal{width:min(400px,92vw);background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 20px 60px #0f171f47}.confirm-h{font-size:16px;font-weight:700;color:var(--ink)}.confirm-p{font-size:13px;color:var(--ink-2);line-height:1.5;margin:8px 0 18px}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}@media print{body{background:#fff}.topbar,.builder-pane,.compliance-bar,.no-print,.wiz-rail,.wiz-content,.wiz-overlay{display:none!important}.app,.main{display:block;height:auto}.preview-pane{padding:0;overflow:visible;display:block}.print-doc{display:block}.paper{box-shadow:none;border:none;max-width:none;padding:24px 12px;border-radius:0}}
