:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);color-scheme:light;--brand:#1565c0;--bg:#f6f6f6;--text:#1f2937;--muted:#6b7280;--border:#e7e7e7;--surface:#ffffff;--card:#ffffff;--thead:#f5f5f5;--input-bg:#ffffff;--input-text:#111;--input-border:#dddddd}
*{box-sizing:border-box}body{margin:0;min-height:100vh}[hidden]{display:none!important}
.header{background:var(--brand);color:white}.header-inner{max-width:1200px;margin:auto;min-height:80px;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand img{width:42px;height:42px;border-radius:12px;background:white;padding:3px}.brand h1{font-size:1.25rem;line-height:1.35;margin:0}.account{display:flex;align-items:center;gap:16px}.account span{max-width:260px;overflow-wrap:anywhere}
button,a{ -webkit-tap-highlight-color:transparent }button{font:inherit;cursor:pointer;min-height:44px;border-radius:12px;padding:11px 18px;font-weight:700}button:disabled{cursor:wait;opacity:.65}a{color:var(--brand)}button:focus-visible,a:focus-visible{outline:3px solid #60a5fa;outline-offset:4px}#logout{border:1px solid #ffffff99;color:white;background:transparent}
main{max-width:1200px;margin:auto;padding:48px 28px;min-height:calc(100vh - 80px)}.checking{color:var(--muted);text-align:center;padding:24px}.login-card{max-width:500px;margin:24px auto;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:36px;box-shadow:0 16px 40px #0f172a0b}.eyebrow{font-size:0.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);font-weight:800}h2{font-size:1.75rem;line-height:1.2;letter-spacing:-.025em;margin:12px 0 18px}p{color:var(--muted);line-height:1.65}.primary{width:100%;margin:16px 0 4px;border:1px solid var(--brand);background:var(--brand);color:#fff}.primary:hover:not(:disabled){background:#104f97}.access-note{font-size:0.8125rem}.back{display:inline-block;margin-top:16px;font-size:0.875rem}.notice{max-width:650px;margin:0 auto 20px;padding:16px 20px;border:1px solid #fca5a5;border-radius:12px;background:#fff1f2;color:#991b1b;line-height:1.5}.secondary{display:block;margin:0 auto 20px;background:var(--surface);color:var(--brand);border:1px solid var(--border)}.home{padding:12px 0}.home h2{font-size:2rem}.home p{font-size:1.0625rem;overflow-wrap:anywhere}
@media(max-width:600px){.header-inner{padding:16px;flex-wrap:wrap;gap:12px}.brand h1{font-size:1.0625rem}.account{width:100%;justify-content:space-between}.account span{max-width:75%}main{padding:28px 16px}.login-card{margin:8px auto;padding:26px 22px}h2,.home h2{font-size:1.5625rem}}
:root[data-theme="dark"]{color-scheme:dark;--bg:#0b0b0c;--text:#e5e7eb;--surface:#111114;--card:#111114;--border:#25262b;--muted:#9ca3af;--thead:#141519;--input-bg:#16171b;--input-text:#e5e7eb;--input-border:#2a2b31}:root[data-theme="dark"] .eyebrow,:root[data-theme="dark"] a,:root[data-theme="dark"] .secondary{color:#93c5fd}:root[data-theme="dark"] .notice{background:#321b26;color:#fecaca;border-color:#7f1d1d}
.registration-card{max-width:840px;margin:0 auto;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:36px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{display:flex;flex-direction:column;gap:8px;font-weight:600;min-width:0}.wide{grid-column:1/-1}input,select{font:inherit;min-height:46px;width:100%;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--input-bg);color:var(--input-text);border-color:var(--input-border)}input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}input[readonly]{color:var(--muted);background:transparent}.form-grid small{font-weight:400;color:var(--muted)}.terms{margin:28px 0 18px;border:1px solid var(--border);border-radius:12px;padding:16px}.terms summary{cursor:pointer;font-weight:600}.terms-check{display:flex;gap:12px;align-items:flex-start;line-height:1.5}.terms-check input{width:20px;min-height:20px;flex-shrink:0;margin:2px 0}#saveDoctor{max-width:320px;margin-top:24px}#registrationError{margin-top:20px}#doctorIdentification{font-size:0.875rem}@media(max-width:600px){.registration-card{padding:24px 18px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}#saveDoctor{max-width:none}}
.medical-nav{position:fixed;top:100px;left:20px;width:180px;display:grid;gap:8px}.medical-nav a{display:block;padding:14px;border-radius:12px;text-decoration:none}.medical-nav a[aria-current]{background:#1565c0;color:white}.medical-authenticated main{margin-left:220px;max-width:1200px}@media(max-width:850px){.medical-nav{position:static;width:auto;display:flex;margin:12px 16px}.medical-authenticated main{margin:auto}}

.header-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}#medicalTheme{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px;border:1px solid #ffffff70;background:#ffffff18;color:white;border-radius:50%;font-size:1.4375rem}#medicalTheme:hover{background:#ffffff30}.connection-table thead{background:var(--thead)}@media(max-width:600px){.header-actions{width:100%;justify-content:flex-end}.header-actions .account{width:auto;flex:1}.header-actions .account span{max-width:calc(100% - 80px)}}

#medicalInstall{background:#e0e7ff;border:1px solid #e0e7ff;color:#172033;white-space:nowrap}.medical-install-help{width:min(500px,calc(100vw - 32px));border:1px solid var(--border);border-radius:16px;padding:24px;background:var(--card);color:var(--text)}.medical-install-help::backdrop{background:#0f172a88}.medical-install-help h2{font-size:1.4375rem}.medical-install-help button{border:1px solid var(--brand);background:var(--brand);color:white}.medical-install-help p{line-height:1.7}@media(max-width:600px){.header-actions{gap:8px}.header-actions .account{gap:8px}.header-actions .account span{font-size:0.75rem}#medicalInstall{padding:10px 12px;font-size:0.8125rem}}
