:root{--bg:#eceff3;--surface:#fff;--surface-2:#f5f7fa;--surface-3:#eef2f6;--ink:#16212c;--muted:#5a6977;--faint:#8695a3;--line:#e4e9ef;--line-soft:#14212e12;--accent:#0d8a80;--accent-deep:#0a6f67;--accent-weak:#e7f4f2;--accent-ring:#0d8a8038;--major:#c5362a;--major-ink:#a22a20;--major-bg:#fdecea;--major-br:#f3cbc5;--moderate:#b0771a;--moderate-ink:#8a5a10;--moderate-bg:#fbf3e1;--moderate-br:#ecd9ab;--info:#3f6a99;--info-bg:#eef3f9;--info-br:#d5e1ee;--minor:#5a6b7a;--clear:#2d7a4f;--clear-bg:#e7f3ec;--clear-br:#bfe0cc;--r1:8px;--r2:10px;--r3:14px;--r4:18px;--pill:999px;--sh1:0 1px 2px #14212e0f;--sh2:0 1px 3px #14212e0f, 0 6px 16px #14212e0f;--sh3:0 10px 24px #101a241f, 0 32px 64px #101a242e;--ease:cubic-bezier(.22, .61, .36, 1);color:var(--ink);-webkit-text-size-adjust:100%;font-family:system-ui,Segoe UI,Roboto,-apple-system,sans-serif}*{box-sizing:border-box}body{background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:34px 16px;line-height:1.5}button{font-family:inherit}button:active:not(:disabled){transform:scale(.97)}button,a,input,select,textarea{transition:background .16s var(--ease), border-color .16s var(--ease), color .16s var(--ease), box-shadow .16s var(--ease), transform 80ms var(--ease)}:focus-visible{outline:none}.app{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r4);max-width:640px;box-shadow:var(--sh3);margin:0 auto;overflow:hidden}.bar{border-bottom:1px solid var(--line);background:linear-gradient(#fbfcfd,#f5f7fa);justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.bar .title{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:10px;font-size:15px;font-weight:650;display:flex}.bar .title:before{content:"℞";background:var(--accent);color:#fff;border-radius:7px;place-items:center;width:26px;height:26px;font-family:Georgia,serif;font-size:16px;font-weight:700;display:grid}.menu-wrap{position:relative}.menu-btn{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);cursor:pointer;align-content:center;gap:4px;width:40px;height:36px;padding:0 9px;display:grid}.menu-btn span{background:var(--muted);border-radius:2px;height:2px;display:block}.menu-btn:hover,.menu-btn[aria-expanded=true]{background:var(--surface-2);border-color:#cfd8e1}.menu-btn:hover span,.menu-btn[aria-expanded=true] span{background:var(--ink)}.menu-backdrop{z-index:40;position:fixed;inset:0}.menu{z-index:45;background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r2);min-width:212px;box-shadow:var(--sh3);transform-origin:100% 0;animation:pop .14s var(--ease);padding:6px;position:absolute;top:calc(100% + 8px);right:0}.menu-head{border-bottom:1px solid var(--line);margin-bottom:6px;padding:9px 10px 11px}.menu-head b{color:var(--ink);letter-spacing:-.005em;font-size:13.5px;font-weight:650;display:block}.menu-head span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.menu-item{text-align:left;border-radius:var(--r1);width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;padding:9px 10px;font-size:13.5px;font-weight:550;display:block}.menu-item:hover{background:var(--surface-2)}.menu-item.danger{color:var(--major)}.menu-item.danger:hover{background:var(--major-bg)}.splash{text-align:center;color:var(--muted);padding:60px}.auth-wrap{justify-content:center;align-items:center;min-height:88vh;padding:20px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r4);width:100%;max-width:420px;box-shadow:var(--sh3);padding:28px}.auth-brand{align-items:center;gap:12px;margin-bottom:20px;display:flex}.auth-logo{border-radius:var(--r2);background:var(--accent);color:#fff;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-size:25px;font-weight:700;line-height:1;display:grid}.auth-name{letter-spacing:-.01em;font-size:17px;font-weight:700}.auth-tag{color:var(--muted);font-size:12.5px}.auth-tabs{background:var(--surface-3);border-radius:var(--r2);gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-tabs button{border-radius:var(--r1);color:var(--muted);cursor:pointer;background:0 0;border:none;flex:1;padding:9px;font-size:13.5px;font-weight:600}.auth-tabs button.on{background:var(--surface);color:var(--ink);box-shadow:var(--sh1)}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form label{color:var(--muted);letter-spacing:.01em;flex-direction:column;gap:6px;font-size:11.5px;font-weight:650;display:flex}.auth-form label small{color:var(--faint);letter-spacing:0;font-weight:400}.auth-form input,.auth-form select{color:var(--ink);border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);outline:none;padding:11px 13px;font-family:inherit;font-size:14px}.auth-form input:focus,.auth-form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.auth-row{gap:12px;display:flex}.auth-row label{flex:1;min-width:0}.auth-err{background:var(--major-bg);color:var(--major-ink);border:1px solid var(--major-br);border-radius:var(--r1);padding:10px 12px;font-size:13px}.auth-go{background:var(--accent);color:#fff;border-radius:var(--r2);cursor:pointer;box-shadow:var(--sh1);border:none;margin-top:4px;padding:12px;font-size:14.5px;font-weight:650}.auth-go:hover:not(:disabled){background:var(--accent-deep)}.auth-go:disabled{cursor:not-allowed;background:#b4c0c9}.cred-pick{border:1px solid var(--line);border-radius:var(--r2);background:var(--surface-2);flex-direction:column;gap:10px;padding:14px;display:flex}.cred-lbl{letter-spacing:.07em;text-transform:uppercase;color:var(--faint);font-size:10.5px;font-weight:700}.cred-opt{cursor:pointer;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink)!important;letter-spacing:0!important;flex-direction:row!important;font-weight:400!important}.cred-opt input{width:16px;height:16px;accent-color:var(--accent);flex-shrink:0;margin-top:1px}.cred-opt b{font-weight:650}.cred-file{font-size:12.5px}.cred-hint{color:var(--muted);font-size:11.5px}.cred-lbl em{color:var(--accent);font-style:normal;font-weight:700}.quals{border:1px solid var(--line);border-radius:var(--r2);background:var(--surface-2);flex-direction:column;gap:9px;padding:14px;display:flex}.qual-row{align-items:center;gap:7px;display:flex}.qual-row input{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);min-width:0;color:var(--ink);outline:none;flex:1;padding:8px 10px;font-family:inherit;font-size:13px}.qual-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.qual-x{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);width:30px;height:34px;color:var(--muted);cursor:pointer;flex-shrink:0;font-size:12px;transition:transform .12s,color .12s}.qual-x:active{transform:scale(.94)}.qual-x:hover{color:var(--major)}.qual-add{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:2px 0;font-size:13px;font-weight:650}.sig-tabs{gap:6px;display:flex}.sig-tabs button{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);color:var(--muted);cursor:pointer;flex:1;padding:7px 10px;font-size:12.5px;font-weight:600;transition:transform .12s}.sig-tabs button:active{transform:scale(.97)}.sig-tabs button.on{background:var(--accent);border-color:var(--accent);color:#fff}.sigpad{position:relative}.sigpad-canvas{border:1px dashed var(--line);border-radius:var(--r2);background:var(--surface);touch-action:none;cursor:crosshair;width:100%;display:block}.sigpad-ph{color:var(--faint);pointer-events:none;letter-spacing:.02em;font-size:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sigpad-clear{border:1px solid var(--line);border-radius:var(--pill);background:var(--surface);color:var(--muted);cursor:pointer;padding:4px 10px;font-size:11.5px;font-weight:600;position:absolute;top:8px;right:8px}.sigpad-clear:active{transform:scale(.95)}.hosp-sel{border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);width:100%;color:var(--ink);outline:none;padding:10px 11px;font-family:inherit;font-size:14px}.hosp-sel:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.hosp-add{flex-wrap:wrap;gap:7px;display:flex}.hosp-add input{border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);min-width:120px;color:var(--ink);outline:none;flex:1;padding:9px 11px;font-family:inherit;font-size:14px}.hosp-add input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.hosp-save,.hosp-cancel{border-radius:var(--r2);cursor:pointer;padding:9px 16px;font-size:13px;font-weight:650;transition:transform .12s}.hosp-save{background:var(--accent);border:1px solid var(--accent);color:#fff}.hosp-save:disabled{opacity:.5;cursor:default}.hosp-save:active,.hosp-cancel:active{transform:scale(.97)}.hosp-cancel{background:var(--surface);border:1px solid var(--line);color:var(--muted)}.vf{text-align:center;flex-direction:column;align-items:center;min-height:342px;padding:6px 0 2px;display:flex}.vf-medallion{width:76px;height:76px;margin-top:4px;position:relative}.vf-ring{width:76px;height:76px;transform:rotate(-90deg)}.vf-ring .vf-track{stroke:var(--line)}.vf-ring .vf-arc{stroke:var(--accent);stroke-linecap:round}.vf-spin{transform-origin:50%;animation:1s linear infinite vf-spin}@keyframes vf-spin{to{transform:rotate(360deg)}}.vf-badge{opacity:0;place-items:center;display:grid;position:absolute;inset:0;transform:scale(.4)}.vf-badge.show{animation:.45s cubic-bezier(.22,.61,.36,1) forwards vf-pop}@keyframes vf-pop{to{opacity:1;transform:scale(1)}}.vf-badge svg{width:76px;height:76px}.vf-disc{fill:var(--accent)}.vf-badge.warn .vf-disc{fill:var(--moderate)}.vf-badge.bad .vf-disc{fill:var(--major)}.vf-mark{fill:none;stroke:#fff;stroke-width:6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:62;stroke-dashoffset:62px}.vf-badge.show .vf-mark{animation:.5s cubic-bezier(.22,.61,.36,1) .18s forwards vf-draw}@keyframes vf-draw{to{stroke-dashoffset:0}}.vf-headline{letter-spacing:-.01em;margin:16px 0 4px;font-size:19px;font-weight:700}.vf-subline{color:var(--muted);max-width:32ch;margin:0 auto;font-size:13.5px}.vf-steps{flex-direction:column;gap:2px;width:100%;margin:20px 0 0;padding:0;list-style:none;display:flex}.vf-step{border-radius:var(--r1);color:var(--faint);opacity:0;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;transition:color .3s,background .3s;display:flex;transform:translateY(5px)}.vf-step.in{animation:vf-stepin .3s var(--ease,ease-out) forwards}@keyframes vf-stepin{to{opacity:1;transform:none}}.vf-step.active{color:var(--ink);background:var(--surface-2)}.vf-step.done{color:var(--ink)}.vf-ic{flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.vf-dot{border:2px solid var(--line);border-radius:50%;width:14px;height:14px}.vf-mini-spin{border:2px solid var(--accent-ring);border-top-color:var(--accent);border-radius:50%;width:15px;height:15px;animation:.7s linear infinite vf-spin}.vf-tick{background:var(--accent);border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.vf-tick svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:11px;height:11px}.vf-record{border:1px solid var(--line);border-radius:var(--r2);text-align:left;opacity:0;width:100%;margin-top:20px;overflow:hidden}.vf-record.show{animation:.4s .1s forwards vf-fadeup}@keyframes vf-fadeup{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.vf-record-top{background:var(--surface-2);border-bottom:1px solid var(--line);letter-spacing:.05em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;padding:9px 14px;font-size:11px;font-weight:700;display:flex}.vf-record-top svg{width:13px;height:13px}.vf-record-rows{grid-template-columns:auto 1fr;gap:7px 16px;margin:0;padding:12px 14px;display:grid}.vf-record-rows dt{color:var(--muted);font-size:12px}.vf-record-rows dd{text-align:right;font-variant-numeric:tabular-nums;margin:0;font-size:13.5px;font-weight:600}.vf-alert{border-radius:var(--r2);text-align:left;opacity:0;border:1px solid;width:100%;margin-top:20px;padding:13px 15px;font-size:13px;line-height:1.5}.vf-alert.show{animation:.4s forwards vf-fadeup}.vf-alert.warn{background:var(--moderate-bg);border-color:var(--moderate);color:var(--moderate-ink)}.vf-alert.bad{background:var(--major-bg);border-color:var(--major);color:var(--major-ink)}.vf-actions{width:100%;margin-top:24px}.vf-btn{border-radius:var(--r2);width:100%;font:inherit;cursor:pointer;border:none;padding:13px;font-size:14.5px;font-weight:650;transition:transform .12s,background .2s}.vf-btn:active{transform:scale(.98)}.vf-btn-primary{background:var(--accent);color:#fff}.vf-btn-ghost{background:var(--surface-2);color:var(--ink);border:1px solid var(--line)}@media (prefers-reduced-motion:reduce){.vf *,.vf :before{animation-duration:.01ms!important}}.patient-bar{flex-wrap:wrap;gap:8px;display:flex}.patient-bar input,.patient-bar select{color:var(--ink);border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);outline:none;padding:10px 12px;font-family:inherit;font-size:14px}.patient-bar input:focus,.patient-bar select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.pt-name{flex:1;min-width:160px}.pt-age{font-variant-numeric:tabular-nums;width:92px}.pt-sex{width:124px}section{margin:18px 20px}.lbl{letter-spacing:.09em;text-transform:uppercase;color:var(--faint);margin-bottom:10px;font-size:10.5px;font-weight:700;display:block}.searchbox{width:100%;color:var(--ink);border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);outline:none;padding:12px 15px;font-family:inherit;font-size:15px}.searchbox:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.results{border:1px solid var(--line);border-radius:var(--r2);box-shadow:var(--sh2);transform-origin:top;animation:pop .14s var(--ease);margin:8px 0 0;padding:0;list-style:none;overflow:hidden}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.99)}to{opacity:1;transform:none}}.results li{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:11px 15px;font-size:14px;display:flex}.results li:last-child{border-bottom:none}.results li:hover{background:var(--accent-weak)}.pick{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:10.5px;font-weight:700}.empty{color:var(--muted);border:1px dashed var(--line);border-radius:var(--r2);background:var(--surface-2);margin:0;padding:14px 15px;font-size:14px}.med{border:1px solid var(--line);border-radius:var(--r2);background:var(--surface);box-shadow:var(--sh1);align-items:center;gap:12px;margin-bottom:10px;padding:12px 14px;display:flex}.stripe{border-radius:var(--pill);background:#d7dee6;flex-shrink:0;align-self:stretch;width:3px}.stripe.s-major{background:var(--major)}.stripe.s-moderate{background:var(--moderate)}.stripe.s-minor{background:var(--minor)}.stripe.s-unchecked{background:var(--faint)}.stripe.s-clear{background:var(--clear)}.med-body{flex:1;min-width:0}.med-name{letter-spacing:-.005em;font-size:14.5px;font-weight:600}.sig{gap:7px;margin-top:8px;display:flex}.sig input,.sig select{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);color:var(--ink);outline:none;padding:7px 9px;font-family:inherit;font-size:13px}.sig input:focus,.sig select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.in-dose{width:92px}.in-dur{font-variant-numeric:tabular-nums;width:72px}.flag{border-radius:var(--pill);white-space:nowrap;flex-shrink:0;padding:3px 9px;font-size:11px;font-weight:700}.f-major{color:var(--major-ink);background:var(--major-bg)}.f-moderate{color:var(--moderate-ink);background:var(--moderate-bg)}.f-minor{color:var(--minor);background:var(--surface-3)}.f-unchecked{color:#5b6b7a;background:var(--surface-3)}.f-clear{color:var(--clear);background:var(--clear-bg)}.x{color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:4px;font-size:15px;line-height:1}.x:hover{color:var(--major);background:var(--major-bg)}.warn{border-radius:var(--r3);border:1px solid;margin-bottom:11px;padding:15px 17px}.w-major{background:var(--major-bg);border-color:var(--major-br)}.w-moderate{background:var(--moderate-bg);border-color:var(--moderate-br)}.w-minor{background:var(--surface-2);border-color:var(--line)}.w-info{background:var(--info-bg);border-color:var(--info-br)}.warn-head{align-items:center;gap:9px;margin-bottom:7px;display:flex}.badge{letter-spacing:.05em;text-transform:uppercase;color:#fff;border-radius:6px;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:800}.w-major .badge{background:var(--major)}.w-moderate .badge{background:var(--moderate)}.w-minor .badge{background:var(--minor)}.w-info .badge{background:var(--info)}.warn-title{letter-spacing:-.005em;font-size:14.5px;font-weight:650}.warn p{color:#44535f;margin:6px 0 0;font-size:13.5px;line-height:1.55}.warn p b{color:var(--ink);font-weight:650}.decided{color:var(--muted);font-style:italic}.override{margin-top:12px}.override textarea{width:100%;min-height:56px;color:var(--ink);border:1px solid var(--major-br);border-radius:var(--r1);resize:vertical;background:var(--surface);outline:none;padding:10px 12px;font-family:inherit;font-size:13.5px}.override textarea:focus{border-color:var(--major);box-shadow:0 0 0 3px #c5362a24}.act-major,.act-moderate{cursor:pointer;border-radius:var(--r1);border:none;margin-top:10px;padding:9px 16px;font-size:13px;font-weight:650}.act-major{background:var(--major);color:#fff}.act-major:hover:not(:disabled){background:var(--major-ink)}.act-major:disabled{opacity:.45;cursor:not-allowed}.act-moderate{background:var(--surface);color:var(--moderate-ink);border:1px solid var(--moderate-br)}.act-moderate:hover{background:var(--moderate-bg)}.notck{border-radius:var(--r2);background:var(--surface-2);color:#5b6b7a;border:1px dashed #cdd8e0;align-items:center;gap:8px;margin-bottom:9px;padding:11px 14px;font-size:13.5px;display:flex}.notck b{color:#39434d;font-weight:650}.se-group{margin-top:10px}.se-grouplbl{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:7px;font-size:10px;font-weight:700}.se-tags{flex-wrap:wrap;gap:6px;display:flex}.se-tag{color:#39434d;background:var(--surface);border-radius:var(--pill);border:1px solid #d9e2ea;padding:3px 11px;font-size:12px}.se-tag.muted{color:var(--muted);background:var(--surface-2)}.se-more{color:var(--info);cursor:pointer;background:0 0;border:none;margin-top:11px;padding:0;font-size:12.5px;font-weight:650}.se-more:hover{text-decoration:underline}.muted-text{color:var(--muted);font-style:italic}.src{letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;border-radius:5px;margin-left:8px;padding:2px 7px;font-size:10px;font-style:normal;font-weight:700;display:inline-block}.src-label{color:var(--clear);background:var(--clear-bg);border:1px solid var(--clear-br)}.src-ai{color:var(--moderate-ink);background:var(--moderate-bg);border:1px solid var(--moderate-br)}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:50;animation:fade .16s var(--ease);background:#101a2480;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:var(--r4);width:100%;max-width:420px;box-shadow:var(--sh3);border:1px solid var(--line-soft);animation:rise .18s var(--ease);padding:24px}@keyframes rise{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.modal-wide{max-width:480px;max-height:88vh;overflow-y:auto}.modal-sm{max-width:380px}.modal-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.modal-title{letter-spacing:-.01em;color:var(--ink);font-size:17px;font-weight:700}.modal-id{color:var(--faint);word-break:break-all;font-family:ui-monospace,monospace;font-size:10.5px}.modal-sub{color:var(--muted);margin:8px 0 18px;font-size:13.5px;line-height:1.5}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.modal-cancel{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:var(--r1);cursor:pointer;padding:10px 16px;font-size:13.5px;font-weight:600}.modal-cancel:hover{color:var(--ink);background:var(--surface-2)}.modal-go{background:var(--accent);color:#fff;border-radius:var(--r1);cursor:pointer;box-shadow:var(--sh1);border:none;padding:10px 18px;font-size:13.5px;font-weight:650}.modal-go:hover:not(:disabled){background:var(--accent-deep)}.modal-go:disabled{cursor:not-allowed;background:#b4c0c9}.modal-go.modal-danger{background:var(--major)}.modal-go.modal-danger:hover{background:var(--major-ink)}.issue-row{gap:10px;margin:10px 0 16px;display:flex}.issue-btn{text-align:center;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:var(--r2);cursor:pointer;flex:1;padding:12px;font-size:14px;font-weight:600;text-decoration:none}.issue-btn:hover{border-color:var(--accent);background:var(--accent-weak);color:var(--accent-deep)}.share-box{border:1px solid var(--line);border-radius:var(--r3);background:var(--surface-2);padding:15px}.share-lbl{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:9px;font-size:10.5px;font-weight:700}.share-exp{color:var(--muted);text-transform:none;letter-spacing:0;font-weight:500}.share-url{gap:7px;display:flex}.share-url input{border:1px solid var(--line);border-radius:var(--r1);background:var(--surface);min-width:0;color:var(--ink);outline:none;flex:1;padding:10px 11px;font-family:ui-monospace,monospace;font-size:12.5px}.share-url input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.share-url button{background:var(--accent);color:#fff;border-radius:var(--r1);cursor:pointer;white-space:nowrap;border:none;padding:10px 15px;font-size:13px;font-weight:650}.share-url button:hover{background:var(--accent-deep)}.share-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:13px;display:flex}.wa-btn{color:#fff;border-radius:var(--r2);background:#25d366;padding:12px 16px;font-size:13.5px;font-weight:650;text-decoration:none}.wa-btn:hover{background:#1fb959}.share-qr{border:1px solid var(--line);border-radius:var(--r2);background:#fff;width:94px;height:94px;padding:3px}.share-hint{color:var(--muted);margin-top:11px;font-size:11.5px}.foot{border-top:1px solid var(--line);background:linear-gradient(#f5f7fa,#fbfcfd);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin:0;padding:15px 20px;display:flex;position:sticky;bottom:0}.tally{color:#4a5a67;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:16px;font-size:12.5px;display:flex}.tally i{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.d-major{background:var(--major)}.d-moderate{background:var(--moderate)}.d-unchecked{background:var(--faint)}.foot-btns{align-items:center;gap:10px;display:flex}.clear-btn{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:var(--r2);cursor:pointer;padding:11px 16px;font-size:13.5px;font-weight:600}.clear-btn:hover{color:var(--major);border-color:var(--major-br);background:var(--major-bg)}.confirm{cursor:pointer;border-radius:var(--r2);background:var(--accent);color:#fff;box-shadow:var(--sh1);border:none;padding:11px 20px;font-size:14px;font-weight:650}.confirm:hover:not(:disabled){background:var(--accent-deep)}.confirm:disabled{cursor:not-allowed;box-shadow:none;background:#b4c0c9}.banner{border-radius:var(--r2);margin:18px 20px;padding:13px 16px;font-size:14px;font-weight:600}.banner.ok{background:var(--clear-bg);color:var(--clear);border:1px solid var(--clear-br)}.banner.err{background:var(--major-bg);color:var(--major-ink);border:1px solid var(--major-br)}@media (width<=520px){body{padding:0}.app{min-height:100vh;box-shadow:none;border:none;border-radius:0;max-width:100%}section{margin:16px}.bar{padding:12px 16px}.auth-row{flex-direction:column;gap:14px}.pt-name{flex-basis:100%}.pt-age,.pt-sex{flex:1;width:auto;min-width:0}.foot{padding:13px 16px}.banner{margin:16px}}
