: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:Space Grotesk,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:Fraunces,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}.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}.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}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}.panel{background:var(--white);border-radius:24px;padding:1.6rem;box-shadow:var(--shadow);animation:fadeInUp .6s ease}.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}.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}.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}.link{background:none;border:none;color:var(--blue);cursor:pointer;font-weight:600}.link.danger{color:var(--red)}.search-bar{display:flex;gap:1rem;margin-bottom:1rem}.search-results{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}@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{flex-direction:column;align-items:flex-start}.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}.form-actions{flex-direction:column;align-items:stretch}}
