:root{color:#17212b;background:#eef3f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button,a.linkButton{cursor:pointer}.app{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.publicApp{display:block;background:#f3f8f9}.adminApp{background:#eef3f6}.sidebar{background:#12333a;color:#f5fbfc;padding:24px 18px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brandMark{width:44px;height:44px;border-radius:8px;background:#34c6a3;color:#082428;display:grid;place-items:center;font-weight:800}.patientNav{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:14px clamp(18px,5vw,56px);background:#fffffff0;border-bottom:1px solid #dce8eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.navBrand{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#12333a;padding:0;text-align:left}.navBrand span:last-child{display:grid;gap:2px}.navBrand small{color:#60747c}.patientNav nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.patientNav nav button{border:0;background:transparent;color:#3b535b;font-weight:750;text-decoration:none;padding:9px 10px;border-radius:8px}.patientNav nav button:hover,.patientNav nav button.active{background:#e6f4f5;color:#0c6770}.brand strong,.brand span{display:block}.brand span{color:#afd1d5;font-size:.84rem}.sidebar nav{display:grid;gap:8px}.sidebar button{border:0;border-radius:8px;background:transparent;color:#d8eef0;padding:12px;text-align:left}.sidebar button.active,.sidebar button:hover{background:#1d4a53;color:#fff}.sidebar .logout{margin-top:auto;background:#0d272d}.main{position:relative;min-width:0}.page{padding:28px}.patientPage{min-height:100vh}.patientHero{padding:22px clamp(18px,5vw,56px) 18px;background:linear-gradient(180deg,#f8fbfc,#eef8f6);border-bottom:1px solid #dce8eb}.patientHero h1{max-width:760px;font-size:clamp(1.55rem,3vw,2.35rem)}.patientHero p{max-width:660px;margin:8px 0 0;color:#435c65;font-size:.98rem;line-height:1.45}.compactHero{align-items:center}.heroMetrics{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.heroMetrics span{display:grid;gap:2px;min-width:132px;padding:13px 14px;border:1px solid #cfe0df;border-radius:8px;background:#fff;color:#60747c;box-shadow:0 12px 28px #1b333f0f}.heroMetrics strong{color:#12333a;font-size:1.35rem}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:24px}.eyebrow{margin:0 0 6px;color:#287585;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:2rem;line-height:1.1}h2{font-size:1.15rem}h3{font-size:1rem;margin-bottom:10px}.primary,.secondary,.tableAction,.linkButton{border:0;border-radius:8px;padding:11px 15px;min-height:42px;font-weight:750;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:#0c7c86;color:#fff}.secondary{background:#dce8eb;color:#12333a}.tableAction{background:#e6f4f5;color:#0c6770}.registrationGrid{display:grid;grid-template-columns:minmax(0,760px);gap:22px;align-items:start;justify-content:center;max-width:920px;margin:0 auto;padding:28px clamp(18px,5vw,56px) 48px}.trackPageGrid{max-width:720px;margin:0 auto;padding:28px clamp(18px,5vw,56px) 48px}.publicFooter{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 1.1fr;gap:20px;padding:22px clamp(18px,5vw,56px);background:#12333a;color:#eef8f6}.publicFooter h2{margin-bottom:6px}.publicFooter p,.publicFooter span{color:#b7d4d8;line-height:1.45}.publicFooter div{display:grid;align-content:start;gap:5px}.publicFooter strong{color:#fff}.qrPanel,.formPanel,.trackerPanel,.loginPanel,.tablePanel,.detailPanel,.actionPanel,.messagePreview{background:#fff;border:1px solid #d9e4e8;border-radius:8px;box-shadow:0 16px 40px #1b333f14}.qrPanel{padding:24px;position:sticky;top:20px}.fakeQr{display:grid;grid-template-columns:repeat(9,1fr);gap:5px;width:min(100%,240px);aspect-ratio:1;padding:12px;border:1px solid #c8d8dd;background:#f8fbfc;margin-bottom:20px}.fakeQr span{background:#e5eef1;border-radius:2px}.fakeQr .dark{background:#12333a}.largeQr{width:min(78vw,340px);margin:0 auto 22px}.successBox{display:grid;gap:5px;padding:14px;border-radius:8px;background:#e9f8f0;color:#12623c}.trackerBox{display:grid;gap:10px}.trackerPanel{padding:24px;position:sticky;top:96px}.standaloneTracker{position:static}.trackerPanel p{color:#60747c;line-height:1.5}.trackResult{display:grid;gap:10px;color:#435c65;padding:14px;border:1px solid #d9e4e8;border-radius:8px;background:#f8fbfc}.trackResult div{display:grid;gap:3px}.trackResult small{color:#60747c}.sampleTrackers{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.sampleTrackers button{border:1px solid #c8d8dd;border-radius:999px;background:#fff;color:#0c6770;padding:7px 10px;font-weight:750}.formPanel{padding:24px;display:grid;gap:16px}.formHeader,.panelTitle{display:flex;justify-content:space-between;gap:12px;align-items:center}.formHeader span,.panelTitle span,.hint{color:#667b84;font-size:.88rem}.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field span,.filters span{color:#3b535b;font-size:.88rem;font-weight:750}input,select,textarea{width:100%;border:1px solid #c8d8dd;border-radius:8px;background:#fff;color:#17212b;padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:#0c7c86;box-shadow:0 0 0 3px #0c7c8624}.uploadBox{display:block;border:1px dashed #8aadb5;border-radius:8px;padding:16px;background:#f8fbfc;color:#50666f}.uploadBox input{display:none}.error{color:#b42318}.warningText{color:#a05a00}.toast{position:fixed;right:24px;top:20px;z-index:10;background:#12333a;color:#fff;padding:12px 16px;border-radius:8px;box-shadow:0 12px 30px #12333a33}.authPage{display:grid;min-height:100vh;grid-template-rows:auto 1fr;background:#f3f8f9}.loginPanel{width:min(100%,440px);align-self:center;justify-self:center;padding:28px;display:grid;gap:16px}.stats{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid #d9e4e8;border-radius:8px;padding:16px}.stat span,.info span{color:#60747c;font-size:.84rem}.stat strong{display:block;margin-top:10px;font-size:1.8rem}.stat.warning strong{color:#b7791f}.stat.success strong{color:#1b8554}.stat.info strong{color:#0c7c86}.dashboardGrid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px;margin-bottom:18px}.chartPanel{background:#fff;border:1px solid #d9e4e8;border-radius:8px;padding:18px;box-shadow:0 16px 40px #1b333f0f}.bars{display:grid;gap:12px}.barRow{display:grid;grid-template-columns:minmax(96px,150px) minmax(80px,1fr) 28px;align-items:center;gap:10px;color:#435c65;font-size:.88rem}.barRow div{height:10px;border-radius:999px;background:#e5eef1;overflow:hidden}.barRow i{display:block;height:100%;border-radius:999px;background:#34c6a3}.activityList{display:grid;gap:12px;margin:0;padding:0;list-style:none}.activityList li{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid #edf3f5}.activityList span{color:#60747c;font-size:.86rem}.tablePanel{overflow:hidden}.panelTitle{padding:18px 20px;border-bottom:1px solid #e2ebee}.panelTitle h2{margin-bottom:0}.tableTools{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.tableTools select,.tableTools button{min-height:36px;padding:7px 10px}.tableWrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 16px;border-bottom:1px solid #e7eef1;text-align:left;vertical-align:middle}th{background:#f8fbfc;color:#435c65;font-size:.82rem}td small{display:block;color:#70858c;margin-top:3px}.empty{text-align:center;color:#667b84;padding:32px}.status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:.8rem;font-weight:800;white-space:nowrap}.status.pending,.status.pending-review,.status.new-registration{background:#fff4df;color:#996019}.status.scheduled,.status.surgery-scheduled,.status.surgery-completed,.status.opd-completed{background:#e6f7ee;color:#177249}.status.opd-requested{background:#e8f2ff;color:#1f5f99}.status.cancelled{background:#fdecec;color:#a22b22}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;background:#fff;border:1px solid #d9e4e8;border-radius:8px;padding:16px;margin-bottom:18px}.filters label{display:grid;gap:7px}.reviewGrid{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:20px}.detailPanel,.actionPanel,.messagePreview{padding:20px}.detailPanel{align-self:start}.info{display:grid;gap:4px;padding:12px 0;border-bottom:1px solid #edf3f5}.actionStack{display:grid;gap:16px}.buttonRow{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.modalTitle{display:flex;justify-content:space-between;gap:12px;align-items:center}.modalTitle h2{margin-bottom:0}.modalTitle span{color:#667b84;font-size:.82rem}.alignEnd{align-self:end}.timeline{margin:0;padding-left:0;color:#435c65;list-style:none;display:grid;gap:10px}.timeline li{display:grid;gap:3px;border-left:3px solid #34c6a3;padding-left:12px}.timeline span{font-size:.88rem}.documentList{display:grid;gap:10px;margin-bottom:18px}.documentList div{display:grid;grid-template-columns:minmax(86px,110px) minmax(120px,1fr) 70px auto auto;gap:8px;align-items:center;padding:10px;border:1px solid #edf3f5;border-radius:8px;background:#f8fbfc}.documentList span,.documentList small{color:#60747c}.messagePreview p{color:#435c65;line-height:1.55}.messagePreview{background:#f8fbfc}.reportTabs,.templateGrid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.reportTabs button,.templateGrid button{border:1px solid #c8d8dd;border-radius:999px;background:#fff;color:#3b535b;padding:8px 12px;font-weight:750;font-size:.86rem}.reportTabs button.active,.reportTabs button:hover,.templateGrid button.active,.templateGrid button:hover{background:#0c7c86;border-color:#0c7c86;color:#fff}.poster{width:min(100%,620px);margin:0 auto;padding:32px;background:#fff;border:1px solid #d9e4e8;border-radius:8px;text-align:center;box-shadow:0 16px 40px #1b333f14}.hospitalLogo{width:160px;min-height:54px;margin:0 auto 18px;border:2px solid #12333a;border-radius:8px;display:grid;place-items:center;font-weight:800;color:#12333a}@media (max-width: 980px){.app{grid-template-columns:1fr}.sidebar{position:static;padding:16px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.patientNav{align-items:flex-start;flex-direction:column}.patientNav nav{justify-content:flex-start}.patientHero{grid-template-columns:1fr}.heroMetrics{justify-content:flex-start}.registrationGrid,.reviewGrid,.stats,.filters,.dashboardGrid,.publicFooter{grid-template-columns:1fr}.qrPanel{position:static}.twoCol{grid-template-columns:1fr}}@media (max-width: 620px){.page{padding:18px}.topbar,.formHeader,.panelTitle{flex-direction:column;align-items:stretch}h1{font-size:1.55rem}.sidebar nav{grid-template-columns:1fr}.patientNav{position:static}.patientNav nav,.patientNav .primary{width:100%}.patientNav nav button,.patientNav .primary{justify-content:center}th,td{padding:12px}.documentList div{grid-template-columns:1fr}.tableTools{justify-content:flex-start}}
