:root{--bg:#0d1517;--rail:#111c1e;--panel:#152124;--panel2:#1a292c;--stroke:#283b3d;--text:#ebf2ef;--sub:#a0b1ae;--muted:#6f8986;--lime:#c5f27d;--orange:#f9bc77;--red:#ec8983}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:var(--lime)}.layout{display:flex;min-height:100vh}.sidebar{background:var(--rail);border-right:1px solid var(--stroke);width:248px;flex-shrink:0;display:flex;flex-direction:column;padding:32px 18px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 12px 55px}.brand-icon{background:var(--lime);width:39px;height:39px;color:#17221b;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:25px;border-radius:12px;position:relative}.brand-icon span{position:absolute;right:1px;top:0;font-size:14px}.brand strong{font-size:20px;letter-spacing:.6px}.brand small{display:block;font-size:8px;color:var(--sub);letter-spacing:1.4px;font-weight:700}.nav-caption,.eyebrow{color:var(--lime);font-size:10px;letter-spacing:2px;font-weight:750}.nav-caption{padding:0 15px 15px;color:#6f8d88}.sidebar nav{display:grid;gap:5px}.nav{display:flex;gap:13px;align-items:center;border:1px solid transparent;border-radius:9px;text-align:left;color:var(--sub);background:transparent;padding:13px 12px;font-size:13px;font-weight:580}.nav.active{color:var(--lime);background:#22342e;border-color:#345440}.nav:hover{background:#243336;color:var(--text)}.nav-symbol{font-size:21px;line-height:1;width:23px;text-align:center}.sidebar-bottom{margin-top:auto}.privacy-note{border:1px solid #365146;background:#1b2b28;border-radius:13px;padding:18px}.privacy-icon{color:var(--lime);font-size:23px}.privacy-note strong{display:block;font-size:12px;margin:5px 0}.privacy-note p{color:#9eb7a8;font-size:11px;margin:0;line-height:1.6}.version{color:#58736f;margin:25px 8px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px}.main{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:68px;border-bottom:1px solid var(--stroke);padding:0 52px;display:flex;align-items:center;justify-content:space-between;color:#91a8a2;letter-spacing:1.5px;font-weight:750;font-size:10px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#a1e89d;box-shadow:0 0 13px #a1e89d88;margin-right:8px}.divider-dot{padding:0 10px;color:#526f68}.top-right{display:flex;align-items:center;gap:16px}.status-pill,.pill{border:1px solid #547559;color:var(--lime);border-radius:40px;padding:5px 11px;font-size:9px;letter-spacing:.6px}.status-pill.off{color:#b7bdaf;border-color:#52605c}.avatar{width:31px;height:31px;border-radius:50%;background:#395548;color:var(--lime);display:grid;place-items:center;font-size:13px}.page-content{flex:1;padding:40px 52px 50px;max-width:1580px;width:100%;margin:0 auto}.page{display:none}.page.active{display:block}.headline-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.eyebrow{margin-bottom:11px}h1{font-size:clamp(31px,4vw,47px);letter-spacing:-2px;line-height:1.1;margin:0 0 12px;font-weight:720}h1 em{font-style:normal;color:var(--lime)}h2{font-size:17px;letter-spacing:-.35px;margin:0 0 5px;font-weight:700}.lead{color:#9caeab;max-width:710px;font-size:14px;line-height:1.8;margin:0 0 32px}.button{min-height:41px;border:1px solid transparent;padding:10px 18px;border-radius:8px;font-size:12px;font-weight:750;white-space:nowrap}.button-primary{color:#15221c;background:var(--lime)}.button-primary:hover{background:#d8ffa1}.button-outline{border-color:#46615b;color:var(--text);background:transparent}.button-outline:hover{background:#20322e}.button-muted{border-color:#314845;background:#253633;color:#c3d5cf}.button:disabled{opacity:.5;cursor:not-allowed}.headline-row .button{margin-bottom:39px}.notice{background:#293126;border:1px solid #586744;border-radius:9px;display:flex;gap:15px;padding:14px 18px;margin:0 0 25px;align-items:flex-start}.notice-mark{color:#e7dda1;font-size:15px;font-weight:800;border:1px solid #8b8458;width:24px;height:24px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.notice strong{font-size:12px;color:#efedcf;display:block}.notice span{display:block;font-size:11px;color:#b2b8a0;margin-top:3px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--stroke);border-radius:11px;padding:22px 20px}.stat.highlight{border-color:#607a4a;background:linear-gradient(150deg,#24392a,#1b2b26)}.stat-label{font-size:9px;color:#9aacaa;letter-spacing:1.2px;font-weight:800;display:flex;justify-content:space-between}.stat-label span{font-size:16px;color:#81a394}.stat-number{font-size:38px;line-height:1.2;font-weight:750;margin:15px 0 9px;letter-spacing:-1.5px}.highlight .stat-number{color:var(--lime)}.stat-detail{color:#809693;font-size:11px}.panel{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;margin-bottom:20px;overflow:hidden}.panel-heading{padding:23px 25px 19px;display:flex;align-items:start;justify-content:space-between;gap:20px}.panel-heading p{font-size:12px;color:#91a8a3;margin:3px 0 0}.panel-heading.compact{align-items:center;padding-bottom:16px}.icon-round{border:1px solid #3b574b;width:33px;height:33px;border-radius:50%;display:grid;place-items:center;color:var(--lime);font-size:23px}.search-form{display:grid;grid-template-columns:1.5fr 1.35fr .53fr auto;align-items:end;gap:13px;padding:0 25px 12px}label{display:block;color:#aabcb8;font-size:11px;font-weight:700;margin-bottom:13px}label small{font-weight:400;color:#829793}input:not([type=checkbox]),select,textarea{display:block;background:#101b1e;color:var(--text);border:1px solid #354b4b;border-radius:8px;padding:11px 12px;width:100%;outline:none;margin-top:8px;font-size:12px}input:focus,textarea:focus,select:focus{border-color:#9bbf75;box-shadow:0 0 0 2px #b2dc8320}textarea{resize:vertical;min-height:75px}input::placeholder,textarea::placeholder{color:#68827b}.search-form label{margin-bottom:0}.search-form button{margin-bottom:0}.tip{font-size:11px;color:#7e9990;margin:0;padding:2px 25px 22px}.mini-count{font-size:11px;color:var(--lime);border:1px solid #49624e;padding:3px 7px;border-radius:6px;vertical-align:middle;margin-left:7px}.list-actions{display:flex;gap:9px;max-width:465px;width:100%}.list-actions input,.list-actions select{margin:0;height:38px}.list-actions select{max-width:170px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:9px;font-weight:800;letter-spacing:1.3px;color:#77948e;padding:15px 24px;background:#19282b;border-bottom:1px solid #2b3d40}td{border-bottom:1px solid #263a3b;padding:17px 24px;color:#cbd8d4;font-size:12px}tr:last-child td{border-bottom:0}.practice-name{color:var(--text);font-weight:750;display:block;margin-bottom:4px;cursor:pointer}.practice-name:hover{color:var(--lime)}.practice-address{font-size:10px;color:#87a09a;max-width:300px}.number-td{font-size:15px;font-weight:800}.pill{display:inline-block;font-size:9px;font-weight:800;border-color:#4e615d;color:#a9c0b8;white-space:nowrap}.pill.high{color:#ffc0ac;border-color:#955b50;background:#462b2a}.pill.medium{color:#f4c891;border-color:#99744e;background:#422f20}.pill.clear{color:#b8d9bd;border-color:#426b58;background:#213b31}.pill.demo{color:#d3c7ed;border-color:#5b516d}.row-buttons{display:flex;gap:7px;justify-content:flex-end}.tiny-btn{border:1px solid #3b514f;background:#253734;border-radius:6px;color:#d1e0d9;padding:7px 10px;font-size:10px;font-weight:700}.tiny-btn:hover{background:#354c44}.empty-state{text-align:center;padding:43px 20px 48px}.empty-icon{font-size:45px;color:#98bba1;line-height:1}.empty-state strong{font-size:16px;display:block;margin-top:12px}.empty-state p{color:#889f9c;font-size:12px;max-width:440px;margin:8px auto 18px}.empty-actions{display:flex;gap:10px;justify-content:center}.activity-panel .panel-heading{padding-bottom:10px}.subtle{color:#839b95;font-size:10px}.jobs-list{padding:0 24px 20px}.job-row{border-top:1px solid #273d3c;display:flex;align-items:center;gap:12px;padding:12px 0}.job-indicator{width:8px;height:8px;border-radius:50%;background:#738e86}.job-indicator.finished{background:var(--lime)}.job-indicator.running,.job-indicator.queued{background:#e1bb70}.job-indicator.failed{background:var(--red)}.job-row .job-kind{font-size:11px;text-transform:uppercase;color:#d7e4dc;font-weight:800;min-width:70px}.job-message{font-size:11px;color:#91a8a2;flex:1}.job-time{font-size:10px;color:#6a817a}.small-empty{padding:10px 0 12px;color:#7f9590;font-size:12px}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.form-card,.result-card{padding:24px}.form-card .panel-heading{padding:0 0 18px}.form-card label{font-size:12px}.form-divider{border-top:1px solid var(--stroke);margin:15px 0}.checkline{display:flex;gap:9px;align-items:center;font-size:11px;font-weight:450}.checkline input{accent-color:var(--lime)}#manual-practice-fields{border-left:2px solid #58755b;padding-left:14px}.form-buttons{display:flex;justify-content:flex-end;gap:9px;margin-top:19px;flex-wrap:wrap}.result-placeholder{text-align:center;padding:72px 20px;color:#8eaaa1}.result-symbol{font-size:44px;color:var(--lime)}.result-placeholder strong{font-size:18px;color:var(--text);display:block}.result-placeholder p{font-size:12px;max-width:260px;margin:8px auto}.result-foot{border-top:1px solid var(--stroke);padding-top:18px;font-size:11px;color:#8fa29e}.result-foot strong{color:#d2e0d8}.result-foot p{margin:3px 0 0}.result-card{display:flex;flex-direction:column}.result-card #manual-result{flex:1}.risk-big{font-size:47px;font-weight:800;line-height:1.2;margin:10px 0}.risk-big.high{color:var(--red)}.risk-big.medium{color:var(--orange)}.risk-big.none,.risk-big.low{color:var(--lime)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.tags span{color:#cadcd4;background:#20332f;border:1px solid #3a5b4f;border-radius:7px;padding:5px 9px;font-size:10px}.result-explainer{font-size:12px;color:#9eb4ab}.integration-card{display:flex;gap:18px;padding:25px}.provider-icon{width:52px;height:52px;border-radius:12px;display:grid;place-items:center;background:#245645;color:var(--lime);font-size:24px;font-weight:800;flex-shrink:0}.muted-icon{background:#243740;color:#b4d7dc}.provider-copy h2{margin-bottom:10px}.provider-copy p{color:#91a6a1;font-size:12px;line-height:1.8}.provider-copy a{font-size:12px;text-decoration:none}.provider-tag{vertical-align:middle;font-size:9px;padding:4px 9px;border:1px solid #4b7558;border-radius:15px;color:var(--lime);margin-left:7px}.provider-tag.off{border-color:#666652;color:#d5cba2}.endpoint{font-family:ui-monospace,monospace;font-size:11px;background:#101c1c;border:1px solid #314a43;padding:11px 12px;color:#b0d0ba;border-radius:7px;display:inline-block;margin-top:5px}.endpoint span{margin:0 10px;color:#718d82}code{color:#c4f1aa}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.guide-card{padding:23px}.guide-num{font-weight:800;color:var(--lime);font-size:12px;display:block;margin-bottom:17px}.guide-card p,.info-block p{font-size:12px;color:#95aaa4;line-height:1.9}.info-block{padding:24px;margin-top:4px}footer{border-top:1px solid var(--stroke);padding:21px 52px;color:#56766e;font-size:9px;letter-spacing:.9px;display:flex;justify-content:space-between;gap:20px}dialog{color:var(--text);background:#172528;border:1px solid #466057;border-radius:15px;padding:26px;width:min(600px,95vw);max-height:85vh;overflow:auto;box-shadow:0 30px 120px #0009}dialog::backdrop{background:#030909b8}.modal-head{display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid var(--stroke);padding-bottom:15px;margin-bottom:17px}.modal-head h2{font-size:22px}.icon-button{border:1px solid #425851;background:transparent;color:var(--text);font-size:22px;line-height:1;width:34px;height:34px;border-radius:8px}.dialog-form label{margin-top:13px}.detail-address{color:var(--sub);font-size:12px;margin:0 0 18px}.detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:20px}.detail-stat{border:1px solid #34504a;border-radius:8px;padding:15px}.detail-stat span{display:block;color:var(--muted);font-size:10px}.detail-stat strong{font-size:22px}.detail-group{border-top:1px solid #2b403b;padding:17px 0}.detail-group h3{margin:0 0 9px;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#9cbcaf}.detail-group p{font-size:12px;color:#9db3ad;margin:5px 0}.detail-row{display:flex;justify-content:space-between;gap:15px;padding:9px 0;color:#c3d3cb;font-size:12px}.detail-row span:last-child{color:var(--lime);font-weight:800}.modal-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.toast{position:fixed;right:25px;bottom:25px;background:#294136;color:#dcf8e2;border:1px solid #67916e;padding:13px 20px;border-radius:10px;z-index:20;max-width:380px;font-size:12px;box-shadow:0 10px 30px #0005}.toast.error{background:#442a2b;border-color:#865657;color:#ffe1d9}[hidden]{display:none!important}@media(max-width:1150px){.sidebar{width:210px}.page-content{padding:30px 28px}.topbar{padding:0 28px}.stats-grid{grid-template-columns:repeat(2,1fr)}.search-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.layout{display:block}.sidebar{width:100%;height:auto;position:static;padding:13px 15px}.brand{padding:0 0 12px}.sidebar nav{display:flex;overflow:auto}.nav{flex-shrink:0;font-size:11px;padding:9px}.nav-caption,.sidebar-bottom{display:none}.topbar{padding:0 18px;height:50px}.page-content{padding:24px 17px}.headline-row{display:block}.headline-row .button{margin:0 0 15px}.stats-grid{gap:9px}.stat{padding:14px}.stat-label{font-size:8px}.stat-number{font-size:29px}.search-form,.two-col,.guide-grid{grid-template-columns:1fr}.panel-heading{padding:18px}.search-form{padding:0 18px 10px}.tip{padding:0 18px 20px}.panel-heading.compact{display:block}.list-actions{margin-top:12px}.top-right .status-pill{font-size:8px}.integration-card{padding:18px}.lead{margin-bottom:20px}footer{padding:20px;display:block}footer span{display:block;margin-top:7px}th,td{padding:12px 10px}.row-buttons{flex-direction:column}.notice{padding:12px}}
.practice-name.tiny-link{border:0;padding:0;background:transparent;font:inherit;font-size:12px;text-align:left;line-height:1.4}

.batch-button{margin-top:7px;min-height:32px;padding:6px 12px;font-size:10px}
/* Authentication and role-based account management */
.auth-screen{background:radial-gradient(ellipse at 40% 10%,#25483d 0%,#101b1e 50%,#0b1417 100%);min-height:100vh;display:grid;place-items:center;padding:28px}
.auth-wrap{width:min(450px,100%)}.auth-logo{display:flex;align-items:center;gap:8px;color:#e9f8ee;font-size:26px;font-weight:800;margin:0 0 10px}.auth-logo span{color:var(--lime)}
.auth-card{background:var(--panel);border:1px solid #35574e;border-radius:14px;margin-top:18px;padding:32px;box-shadow:0 22px 60px #030b0c80}
.auth-card h1{font-size:30px;margin:0 0 8px}.auth-card h1 em{color:var(--lime)}.auth-card .lead{font-size:13px;margin:0 0 23px}
.auth-card label{font-size:12px;margin:16px 0}.auth-card input{font-size:14px;padding:13px!important}.auth-submit{width:100%;margin-top:10px;padding:13px}.auth-error{color:#ffd1c7;background:#482f2e;border:1px solid #a16156;border-radius:7px;padding:10px;margin-top:14px;font-size:12px}
.auth-footnote{font-size:11px;color:#9ab0a4;text-align:center;margin-top:17px;line-height:1.6}.auth-hint{color:#9bb7aa;font-size:11px;line-height:1.7}
.account-badge{border:1px solid #446a56;padding:7px 10px;border-radius:8px;color:#d3f6b4;font-size:11px;font-weight:700}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.account-card{padding:24px}.account-card h2{margin-bottom:10px}
.user-action{display:flex;gap:6px;flex-wrap:wrap}.user-action button{white-space:nowrap}.user-list{overflow-x:auto}
.temp-password{font-family:ui-monospace,monospace;color:#c9e8c1;font-size:13px;overflow-wrap:anywhere;padding:12px;background:#101c1c;border:1px dashed #83a571;border-radius:7px}
.mini-message{font-size:11px;color:#b8cfc4;margin:10px 0}.account-card button{margin:5px 0}
@media(max-width:900px){.account-grid{grid-template-columns:1fr}}@media(max-width:520px){.auth-card{padding:22px}}

.signout-button{padding:7px 10px;font-size:10px}
