:root{--navy: #183a57;--blue: #2f5f8f;--sky: #8db6cf;--mist: #eef5f9;--red: #c33a3b;--white: #ffffff;--ink: #0f1f2b;--gold: #f2c97b;--shadow: 0 20px 60px rgba(15, 31, 43, .12)}*{box-sizing:border-box}body{margin:0;font-family:"Source Sans 3",sans-serif;color:var(--ink);background:radial-gradient(circle at 20% 20%,#fefefe 0%,var(--mist) 45%,#dbe8f2 100%);min-height:100vh}h1,h2,h3,h4{font-family:"Source Sans 3",sans-serif;margin:0 0 .5rem}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit}.auth-page{min-height:100vh;display:grid;place-items:center;padding:2.5rem;background:linear-gradient(135deg,#f7fafc,#e3edf4)}.auth-card{width:min(480px,90vw);background:var(--white);padding:2.5rem;border-radius:24px;box-shadow:var(--shadow);animation:rise .6s ease}.brand{display:flex;align-items:center;gap:1rem}.brand img{width:64px;height:64px;border-radius:18px;background:var(--white);box-shadow:0 10px 30px #183a5726}.brand-title{font-size:1.5rem;font-weight:700}.brand-subtitle{font-size:.95rem;color:#0f1f2ba6;margin:0}.auth-form{display:grid;gap:1rem;margin-top:1.5rem}label{display:grid;gap:.4rem;font-weight:600;font-size:.9rem}input,select,textarea{border:1px solid rgba(24,58,87,.2);padding:.7rem .9rem;border-radius:12px;background:#f9fbfc;transition:border .2s ease,box-shadow .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #2f5f8f33}textarea{resize:vertical}.primary,.secondary,.ghost{border:none;padding:.75rem 1.4rem;border-radius:999px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.primary{background:linear-gradient(120deg,var(--navy),var(--blue));color:var(--white);box-shadow:0 12px 30px #183a574d}.secondary{background:#f1f6fb;color:var(--navy)}.ghost{background:transparent;color:var(--navy)}.sidebar .ghost{color:var(--white);border:1px solid rgba(255,255,255,.4)}.primary:hover,.secondary:hover,.ghost:hover{transform:translateY(-2px)}.notice{padding:.8rem 1rem;border-radius:12px;margin:1rem 0;font-weight:500}.notice.success{background:#e6f5ed;color:#1e6b3a}.notice.error{background:#fbe9e9;color:#9c2a2a}.notice.warning{background:#fff4e5;color:#9a5a00}.hint{margin-top:1.5rem;font-size:.85rem;color:#0f1f2b99}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{padding:2rem 1.5rem;background:linear-gradient(180deg,var(--navy),#1e4d74 60%,#2f6ea5 100%);color:var(--white);display:flex;flex-direction:column;gap:1.5rem}.sidebar .brand-title,.sidebar .brand-subtitle{color:var(--white)}.user-card{background:#ffffff24;border-radius:18px;padding:1rem;display:flex;flex-direction:column;gap:.3rem}.user-name{font-weight:600;text-transform:capitalize}.role-badge{font-size:.75rem;padding:.2rem .6rem;border-radius:999px;width:fit-content}.role-badge.doctor{background:#ffffff40}.role-badge.staff{background:#ffffff26}.role-badge.employee{background:#ffffff40}.role-badge.owner{background:#ffffff47}.role-badge.clinician{background:#ffffff3d}.role-badge.receptionist{background:#fff3}.role-badge.hr_manager{background:#ffffff38}.sidebar .language-select{background:#ffffff2e;color:var(--white);box-shadow:none}.sidebar .language-select label{color:var(--white)}.sidebar .language-select select{background:#fff3;color:var(--white);border-color:#ffffff4d}.nav{width:100%;background:transparent;color:var(--white);border:1px solid rgba(255,255,255,.2);padding:.7rem 1rem;border-radius:14px;text-align:left;margin-bottom:.5rem}.nav.active{background:#fff3}.nav:disabled{opacity:.5;cursor:not-allowed;transform:none}main{padding:2.5rem 3rem 4rem}.topbar{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2rem}.language-select{background:var(--white);padding:.8rem 1rem;border-radius:16px;box-shadow:var(--shadow);display:grid;gap:.4rem;min-width:180px}.muted{color:#0f1f2b99}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--white);border-radius:20px;padding:1.4rem;box-shadow:var(--shadow);animation:fadeInUp .6s ease}.stat-card h3{font-size:2rem;color:var(--navy)}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:1.5rem}.patients-split{grid-template-columns:1.4fr .9fr;align-items:start}.patient-page{display:grid;gap:1.5rem}.patient-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.patient-toolbar{display:flex;gap:.75rem;align-items:center}.patient-toolbar input{min-width:260px}.list-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.empty-detail{text-align:left}.empty-detail h4{margin-bottom:.4rem}.panel{background:var(--white);border-radius:24px;padding:1.6rem;box-shadow:var(--shadow);animation:fadeInUp .6s ease}.detail-panel{margin-top:1.5rem}.hero-panel{background:linear-gradient(130deg,#f8fbff,#e3eff7)}.action-grid{display:grid;gap:.75rem;margin-top:1rem}.patient-card{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;padding:1rem 1.2rem;border-radius:16px;border:1px solid rgba(24,58,87,.1);background:#f9fbfc;margin-bottom:.8rem}.chip{background:#c33a3b1f;color:var(--red);padding:.3rem .7rem;border-radius:999px;font-size:.8rem}.chip.success{background:#e6f5ed;color:#1e6b3a}.chip.danger{background:#fbe9e9;color:#9c2a2a}.form-layout{display:grid;gap:1.5rem}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.span-2{grid-column:span 2}.checkbox{display:flex;align-items:center;gap:.6rem}.form-actions{display:flex;gap:.8rem;flex-wrap:wrap}.doc-controls{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:1rem}.doc-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1rem}.doc-card{background:#f9fbfc;padding:1rem;border-radius:16px;display:grid;gap:.6rem}.ocr-results{margin-top:1.5rem}.ocr-text{width:100%;min-height:200px;margin-bottom:1rem}.table{display:grid;gap:.6rem}.table-head,.table-row{display:grid;grid-template-columns:2fr repeat(4,1fr) 1.2fr;gap:.6rem;align-items:center}.table-head{font-weight:600;color:var(--navy)}.table-row{padding:.8rem .5rem;border-radius:12px;background:#f9fbfc}.table-row.active{border:1px solid var(--blue)}.row-actions{display:flex;gap:.5rem}.confirm-inline{display:inline-flex;gap:.4rem;align-items:center;margin-left:.5rem}.result-row{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:center}.tabs{display:flex;gap:.6rem;margin:1rem 0 1.5rem}.tab{background:#f1f6fb;border:none;padding:.6rem 1.2rem;border-radius:999px;cursor:pointer;font-weight:600}.tab.active{background:var(--navy);color:var(--white)}.tab:disabled{opacity:.5;cursor:not-allowed}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.5rem}.status-dot.success{background:#1e6b3a}.status-dot.danger{background:#9c2a2a}.bar-chart{display:grid;gap:.6rem;margin:.8rem 0 1.5rem}.bar-row{display:grid;grid-template-columns:140px 1fr 40px;gap:.6rem;align-items:center}.bar{background:#e6eef5;border-radius:999px;overflow:hidden;height:10px}.bar>div{height:100%;background:linear-gradient(120deg,var(--navy),var(--blue))}.link{background:none;border:none;color:var(--blue);cursor:pointer;font-weight:600}.link.danger{color:var(--red)}.link:disabled,.secondary:disabled,.primary:disabled,.ghost:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.compact-note{margin-top:-.3rem;margin-bottom:.1rem}.search-bar{display:flex;gap:1rem;margin-bottom:1rem}.search-results,.employee-list{display:grid;gap:.8rem}.readmit-form{margin-top:1.5rem;display:grid;gap:1rem}.settings-grid{display:grid;gap:1.2rem}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.documents{margin-top:1rem}.doc-item{background:#f9fbfc;padding:1rem;border-radius:12px;margin-bottom:.8rem}.symptom-ai-cta{position:fixed;right:1.25rem;bottom:1.25rem;z-index:50;display:grid;gap:.12rem;padding:.75rem 1rem;border:none;border-radius:14px;text-align:left;color:var(--white);background:linear-gradient(125deg,#0f5175,#208fa8);box-shadow:0 14px 30px #10476759;transition:transform .18s ease,box-shadow .18s ease;cursor:pointer}.symptom-ai-cta:hover{transform:translateY(-2px);box-shadow:0 18px 36px #10476761}.symptom-ai-cta:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 10px 20px #10476733}.symptom-ai-cta-label{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:#ffffffc7}.symptom-ai-view{display:grid;gap:1rem;min-height:calc(100vh - 9rem)}.symptom-ai-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.symptom-ai-frame{width:100%;min-height:72vh;border:1px solid rgba(24,58,87,.15);border-radius:16px;background:var(--white)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes rise{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1100px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;flex-wrap:wrap;justify-content:space-between}main{padding:2rem}.split{grid-template-columns:1fr}.topbar,.patient-header{flex-direction:column;align-items:flex-start}.patient-toolbar{width:100%;flex-wrap:wrap}.patient-toolbar input{flex:1 1 240px;min-width:200px}.table-head,.table-row{grid-template-columns:2fr 1fr 1fr}.table-head span:nth-child(n+4),.table-row span:nth-child(n+4){display:none}}@media (max-width: 700px){.sidebar{position:sticky;top:0;z-index:10}.search-bar{flex-direction:column}.patient-toolbar{flex-direction:column;align-items:stretch}.patient-toolbar input{width:100%}.form-actions{flex-direction:column;align-items:stretch}.symptom-ai-header{flex-direction:column}.symptom-ai-cta{right:.8rem;bottom:.8rem;padding:.68rem .85rem}}
