:root{--ink:#172e2b;--muted:#53675f;--green:#17594e;--lime:#c5fa6e;--bg:#f5f7f7;--border:#e9eeec;--red:#d34c53;--amber:#a3650f;--purple:#7760bb;--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:Inter,'Segoe UI',Arial,sans-serif;font-size:16px;color:var(--ink);background:var(--bg);line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #86b8a7;outline-offset:3px}.icon{height:21px;width:21px;vertical-align:middle;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:29px;font-weight:650;letter-spacing:-.9px;line-height:1.25}h2{font-size:28px;line-height:1.35;letter-spacing:-.6px}h3{font-size:16px;font-weight:650;letter-spacing:-.2px}small{font-size:14px}.muted{color:var(--muted)}.sidebar{width:248px;background:#fff;position:fixed;top:0;bottom:0;left:0;z-index:40;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:29px 22px 18px}.brand{display:flex;align-items:center;gap:10px;font-size:26px;font-weight:750;letter-spacing:-1px;line-height:1.1}.brand-icon{width:42px;height:42px;background:var(--green);color:var(--lime);display:grid;place-items:center;border-radius:13px}.brand-icon .icon{width:29px;height:29px}.brand-light{font-weight:400;color:#47665f}.brand small{display:block;font-size:12px;letter-spacing:1.7px;color:#526b5e;font-weight:600;margin-top:7px}.nav-label{font-size:13px;color:#596e62;letter-spacing:1.5px;font-weight:600;margin:48px 12px 16px}.nav-link{display:flex;align-items:center;gap:13px;border-radius:11px;padding:13px 14px;margin-bottom:8px;color:#4b6256;font-size:15px;font-weight:500}.nav-link:hover{background:#f3f7f5}.nav-link.active{background:var(--green);color:white;box-shadow:0 5px 12px #17594e14}.nav-link.active .icon{color:var(--lime)}.nav-dot{height:6px;width:6px;border-radius:50%;background:#e5ad62;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:30px}.protocol{border:1px solid #e4ece6;background:#f5f9f4;border-radius:15px;padding:17px;color:#3d5b50}.protocol>.icon{display:block;margin-bottom:10px;color:var(--green);height:26px;width:26px}.protocol strong{font-size:15px;line-height:1.6}.protocol p{font-size:14px;color:#536b5b;margin:10px 0 14px}.protocol a{font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:space-between}.protocol a .icon{width:15px}.version{display:flex;align-items:center;gap:7px;color:#5c7063;font-size:14px;margin:20px 7px 0}.version>span:last-child{margin-left:auto}.online-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#5c9a72}.workspace{margin-left:248px}.topbar{height:87px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:18px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}.hospital-mark{font-size:24px;color:var(--green);background:#edf5f1;border-radius:10px;width:38px;height:38px;text-align:center}.topbar strong{display:block;font-size:15px;font-weight:600}.topbar small{display:block;color:#586e60;font-size:14px;margin-top:2px}.date-label{font-size:14px;color:#667b72}.date-label span{color:#64766b;margin-left:4px}.icon-button{width:34px;height:34px;border:0;background:transparent;color:#637a70;display:grid;place-items:center;border-radius:8px}.icon-button:hover{background:#f0f5f2}.user-info{display:flex;gap:10px;align-items:center;border-left:1px solid var(--border);padding-left:20px}.avatar{width:35px;height:35px;border-radius:50%;background:#e9eee3;color:#5e7258;display:grid;place-items:center;font-weight:600}.logout-form{margin:0}.mobile-menu{display:none}main{padding:20px 34px 30px;max-width:1720px;margin:auto}.demo-strip{font-size:12px;letter-spacing:1.2px;display:flex;align-items:center;gap:8px;color:#758a7f;margin-bottom:20px}.demo-strip>span:last-child{font-size:14px;letter-spacing:0;border-left:1px solid #d6dfda;padding-left:9px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:26px}.page-heading p{font-size:15px;color:#576f60;margin-top:9px}.breadcrumb{font-size:14px;color:#5a7062;margin-bottom:12px}.breadcrumb span{margin:0 10px;color:#b5c0ba}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:42px;padding:10px 18px;border-radius:9px;font-size:14px;font-weight:600;border:1px solid transparent;white-space:nowrap}.btn .icon{width:17px;height:17px}.primary{background:var(--green);color:white}.primary:hover{background:#104a40}.lime{background:var(--lime);color:#234830}.subtle{background:#fff;border-color:#dfe8e2;color:#526a5c}.full{width:100%}.welcome-banner{border-radius:var(--radius);background:var(--green);color:#fff;padding:30px 34px;position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:23px}.eyebrow{font-size:13px;letter-spacing:1.5px;color:#d0e7da;font-weight:600}.eyebrow.dark{color:#81968b}.welcome-banner h2{font-size:27px;margin:11px 0 13px;font-weight:550}.welcome-banner p{font-size:14px;color:#e1eee7;display:flex;align-items:center;gap:7px}.live-dot{display:inline-block;border-radius:50%;background:var(--lime);height:5px;width:5px;box-shadow:0 0 0 4px #c5fa6e12}.banner-sep{margin:0 5px;color:#639384}.welcome-banner .btn{margin-top:22px;min-height:37px;font-size:14px;padding:9px 14px}.monitor-art{width:280px;transform:rotate(-4deg);padding:20px 22px;background:#ffffff09;border:1px solid #ffffff24;border-radius:17px;box-shadow:12px 15px 0 #0d473f33;margin-right:17px;flex-shrink:0}.monitor-label{font-size:11px;letter-spacing:2px;display:flex;align-items:center;gap:8px;color:#9ac2ad}.monitor-line{height:90px;background:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:15px 15px;margin-top:15px}.monitor-line svg{width:100%;height:100%;fill:none;stroke:var(--lime);stroke-width:2.5;filter:drop-shadow(0 0 5px #c5fa6e66)}.monitor-values{display:flex;justify-content:space-between;margin-top:10px;color:#9dc7b0;font-size:12px;letter-spacing:1px}.monitor-values strong{display:block;color:#ecf7ef;font-size:15px;font-weight:500;letter-spacing:0}.monitor-values .icon{height:30px;width:30px;color:#c6e0b6}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:20px;transition:border-color .15s}.stat-card:hover{border-color:#bfd4c7}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;color:#526b5b}.stat-icon{width:36px;height:36px;border-radius:11px;display:inline-grid;place-items:center}.green{background:#edf5eb;color:#467a56}.red{background:#fff0ee;color:#cf6c62}.amber{background:#fff6e8;color:#c28e37}.purple{background:#f2eefb;color:#8c76bc}.stat-number{font-size:31px;font-weight:650;letter-spacing:-1px;line-height:1.3;margin:8px 0 13px}.stat-number small{font-size:14px;color:#5b7162;letter-spacing:0;font-weight:400;margin-left:9px}.stat-foot{font-size:13px;color:#566e5d;display:flex;align-items:center;gap:6px}.stat-foot .icon{width:12px;height:12px;margin-left:auto}.text-danger{color:#b43e3b!important}.tiny-dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.tiny-dot.green,.tiny-dot.low{background:#55937a}.tiny-dot.high{background:#db746d}.tiny-dot.medium{background:#edbe6b}.tiny-dot.single{background:#a997ce}.tiny-dot.none{background:#dce5e0}.card{background:white;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 3px 8px #203f2902;overflow:hidden}.card-heading{padding:23px 24px 20px;display:flex;justify-content:space-between;align-items:center;gap:15px}.card-heading h3{font-size:16px}.card-heading p{font-size:14px;color:#5e7366;margin-top:5px}.text-link{font-size:14px;color:var(--green);font-weight:600;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.text-link .icon{height:13px;width:13px}.pill{display:inline-flex;padding:5px 10px;border:1px solid #e4ebe6;border-radius:7px;font-size:13px;color:#536e5c;background:#fcfdfc;white-space:nowrap}.dashboard-middle{display:grid;grid-template-columns:1fr 1.2fr;gap:22px;margin-bottom:24px}.distribution{display:flex;gap:28px;align-items:center;justify-content:center;padding:10px 25px 28px}.risk-donut{width:146px;height:146px;flex-shrink:0;border-radius:50%;background:conic-gradient(#dc786e 0 var(--high),#eebd71 var(--high) var(--med),#497e67 var(--med) var(--low),#e5ece7 var(--low) 100%);display:grid;place-items:center;transform:rotate(-90deg)}.risk-donut>div{height:113px;width:113px;border:5px solid #fff;border-radius:50%;background:white;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(90deg)}.risk-donut strong{font-size:30px;font-weight:600;line-height:1.2}.risk-donut span{font-size:13px;color:#5d7164}.risk-legend{flex:1;max-width:190px}.risk-legend a{display:flex;align-items:center;gap:8px;font-size:14px;margin:12px 0;color:#526b5b}.risk-legend strong{margin-left:auto;color:#3c5a49;font-weight:600}.alert-preview{display:flex;align-items:center;gap:12px;margin:0 24px;padding:13px 0;border-top:1px solid #f0f3f1}.alert-circle{height:33px;width:33px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:#faf1ef;color:#cb8579}.alert-circle.medium{background:#fff5e7;color:#cb9950}.alert-circle.single{background:#f2eefb;color:#9d83c4}.alert-circle .icon{height:17px;width:17px}.alert-preview strong{font-size:14px;font-weight:600}.alert-preview small{display:block;color:#576e5e;font-size:13px;margin-top:3px}.alert-preview small>span{margin-left:8px}.preview-time{margin-left:auto;font-size:12px;color:#876322;text-align:right;white-space:nowrap}.status-dot{display:inline-block;height:4px;width:4px;border-radius:50%;background:#d4ad65;margin-right:4px}.count-pill{background:#eff4f0;color:#6e8c77;border-radius:6px;padding:3px 7px;font-size:14px;margin-left:5px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{background:#fafcfb;color:#526b5b;font-size:13px;font-weight:500;padding:14px 20px;border-top:1px solid #f0f3f1;border-bottom:1px solid #f0f3f1}td{padding:17px 20px;border-bottom:1px solid #f0f3f1;font-size:14px;color:#405d4b}tbody tr:last-child td{border-bottom:0}td strong{font-weight:500;color:#4c6656;font-size:14px}td small{display:block;color:#5b7162;font-size:13px;margin-top:4px}.patient-name{display:flex;align-items:center;gap:10px}.patient-name strong{font-weight:600;color:#3d5848}.patient-avatar{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;color:#7a927f;background:#eff3ec;font-weight:500}.score{width:33px;height:33px;display:inline-grid;place-items:center;border-radius:9px;font-size:16px;font-weight:650;background:#f0f3f1;color:#83968a}.score.high{background:#fcedeb;color:#ca655d}.score.medium{background:#fff4df;color:#c08b35}.score.single{background:#f2ecfa;color:#9577ba}.score.low{background:#edf5ec;color:#5c8b61}.badge{display:inline-block;border-radius:6px;padding:4px 8px;font-size:12px;white-space:nowrap;background:#f1f4f2;color:#566d5c}.badge.high{background:#fff0ec;color:#a13e2a}.badge.medium{background:#fff6e5;color:#835900}.badge.single{background:#f5effd;color:#75518e}.badge.low{background:#eef5eb;color:#456e2d}.row-action{display:inline-flex;border:1px solid #e8eee9;border-radius:7px;padding:5px;color:#93a38f}.row-action .icon{width:12px;height:12px}.clinical-footnote{display:flex;align-items:center;gap:7px;font-size:13px;color:#586f5e;margin:18px 3px}.clinical-footnote .icon{height:13px;width:13px}.clinical-footnote a{text-decoration:underline;margin-left:auto;white-space:nowrap}footer{display:flex;justify-content:space-between;border-top:1px solid #e7ede9;margin:0 34px;padding:19px 0 24px;color:#607565;font-size:13px}.notice{border:1px solid #cfe4d5;background:#f1faf3;color:#3e7354;padding:13px 17px;border-radius:10px;margin:0 0 20px;font-size:15px}.notice.error{background:#fff2ef;border-color:#f1cfc8;color:#b3574b}.empty{padding:35px;text-align:center;color:#607565}.filter-bar{display:flex;align-items:center;gap:12px;padding:0 24px 22px;flex-wrap:wrap}.search-field{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;border:1px solid #e1e9e3;padding:0 12px;border-radius:9px;color:#98a99b}.search-field input{border:0!important;margin:0;padding-left:0!important;min-width:0}.search-field .icon{width:17px}input,select,textarea{border:1px solid #dde6df;background:#fff;border-radius:9px;color:#345a45;padding:11px 13px;font-size:15px;max-width:100%}label{display:block;font-size:15px;font-weight:500;color:#647e6b;margin-bottom:18px}label input,label select,label textarea{display:block;margin-top:8px;width:100%}.filter-bar label{margin:0}.filter-bar select{max-width:180px}.filter-bar .btn{min-height:40px}textarea{resize:vertical}label input[type=checkbox]{width:16px;height:16px;margin:2px 0 0;accent-color:var(--green);flex-shrink:0}.checkbox-line{display:flex;align-items:flex-start;gap:9px;line-height:1.65}.form-card{padding:28px;max-width:960px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--border);padding-top:22px;margin-top:15px}.section-title{margin:25px 0 20px;border-top:1px solid var(--border);padding-top:24px}.form-card>form>p{font-size:14px;margin:5px 0 20px}.input-unit{display:flex;align-items:center;border:1px solid #dde6df;border-radius:9px;overflow:hidden;margin-top:8px}.input-unit input{margin:0;border:0;border-radius:0;min-width:0}.input-unit>span{padding:0 12px;font-size:14px;color:#607666;white-space:nowrap}.observation-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:23px;align-items:start}.observation-help{padding:25px;position:sticky;top:20px}.observation-help h3{margin:15px 0 10px}.observation-help p,.observation-help li{font-size:15px;color:#586f60;line-height:1.9}.observation-help ol{padding-left:17px}.observation-help li{margin-bottom:12px}.observation-help .text-link{margin-top:20px}.detail-grid{display:grid;grid-template-columns:1fr 2fr;gap:23px;margin-bottom:24px}.patient-summary{padding:26px}.detail-score{display:flex;gap:16px;align-items:center;margin:20px 0}.detail-score .score{width:65px;height:65px;font-size:30px;border-radius:15px}.detail-score h3{margin-bottom:5px}.patient-summary p{font-size:15px;color:#536f5c;margin:12px 0}.patient-summary small{color:#5b7261}.trend-bars{display:flex;align-items:flex-end;gap:25px;padding:15px 26px 25px;min-height:185px}.trend-item{display:flex;flex-direction:column;align-items:center;flex:1;max-width:70px;gap:4px;font-size:15px;color:#476550}.trend-item small{font-size:13px;color:#5c7462}.trend-bar{width:28px;background:#74a385;border-radius:5px 5px 0 0}.trend-bar.high{background:#db8076}.trend-bar.medium{background:#e9bd77}.trend-bar.single{background:#b19acc}.notes-row td{font-size:14px;background:#fbfcfb;color:#586f5c;white-space:normal;padding:11px 20px}.inline-warning{font-size:15px;color:#9b7a44;margin-bottom:23px;display:flex;align-items:center;gap:10px}.escalation-list{display:grid;gap:22px}.escalation-card .card-heading{border-bottom:1px solid var(--border)}.escalation-body{padding:23px}.sbar{display:grid;grid-template-columns:1fr 1fr;gap:15px 30px}.sbar p{font-size:15px;color:#536f5b}.sbar strong{display:block;color:#52715e;margin-bottom:4px}.response-form{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}.response-actions{display:flex;justify-content:flex-end;gap:12px}.response-record{padding-top:20px;margin-top:20px;border-top:1px solid var(--border);font-size:15px;color:#6e8976}.response-record p{margin-top:8px}.status-open{background:#fff6e8;color:#825b21}.status-reviewing{background:#f0effb;color:#65518f}.status-closed{background:#eff7ef;color:#376b49}.guide-content{padding:30px;max-width:1100px}.guide-content p{font-size:15px;line-height:1.9;color:#536d5b;margin:12px 0 25px}.guide-content table{white-space:normal}.guide-content td,.guide-content th{font-size:15px;padding:15px}.guide-content h3{margin:15px 0}.login-page{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:white}.login-story{background:var(--green);color:white;padding:50px 60px;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand{color:white}.login-story .brand-icon{background:#ffffff12}.login-story h1{font-size:44px;line-height:1.2;margin:20px 0;letter-spacing:-1.5px}.login-story p{max-width:420px;color:#afd0bd;font-size:16px;line-height:1.9}.login-story>small{color:#85b29a}.login-graphic{color:var(--lime);padding-top:30px}.login-graphic .icon{width:250px;height:120px;stroke-width:.8}.login-panel{display:flex;align-items:center;justify-content:center;padding:40px}.login-box{max-width:380px;width:100%}.login-box h2{font-size:27px;margin:20px 0 10px}.login-box>p{font-size:15px;color:#586f60;margin-bottom:30px}.login-box label{margin-bottom:22px}.login-box .btn{margin-top:7px}.login-note{text-align:center;margin-top:24px;font-size:14px!important}.login-note .icon{height:14px;width:14px;margin-right:5px}.demo-note{border-top:1px solid var(--border);padding-top:20px;font-size:14px;color:#607465}[hidden]{display:none!important}
@media(min-width:1600px){main{padding-top:25px}.welcome-banner{padding:38px 40px}.welcome-banner h2{font-size:32px}.monitor-art{margin-right:60px;width:330px}.stat-card{padding:25px}.dashboard-middle{grid-template-columns:1fr 1.2fr}.distribution{gap:45px}.risk-donut{width:165px;height:165px}.risk-donut>div{width:128px;height:128px}td{padding-top:20px;padding-bottom:20px}}
@media(max-width:1200px){.sidebar{width:216px;padding-left:16px;padding-right:16px}.workspace{margin-left:216px}.topbar{padding:0 24px}.topbar-right{gap:10px}main{padding:20px 24px}.date-label{display:none}.stats-grid{gap:12px}.stat-card{padding:17px}.dashboard-middle{grid-template-columns:1fr}.distribution{justify-content:flex-start;padding:5px 30px 25px}.risk-legend{max-width:none}.monitor-art{width:230px;margin-right:0}.welcome-banner h2{font-size:24px}.observation-layout{grid-template-columns:minmax(0,1fr) 235px}}
@media(max-width:900px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:248px;box-shadow:10px 0 30px #183b3320}.menu-open .sidebar{transform:translateX(0)}.workspace{margin-left:0}.mobile-menu{display:grid}.topbar{height:75px}.topbar-left{gap:10px}.user-info>div{display:none}.user-info{padding-left:10px}.welcome-banner h2{font-size:25px}.observation-layout{grid-template-columns:1fr}.observation-help{position:static}.login-story{padding:40px}.login-story h1{font-size:36px}}
@media(max-width:600px){main{padding:18px 16px}.topbar{padding:0 14px}.hospital-mark{display:none}.topbar-left strong{font-size:14px}.topbar-left small{font-size:12px}.topbar-right{gap:4px}.topbar-right>.icon-button{display:none}.demo-strip{font-size:11px;gap:6px}.demo-strip>span:last-child{font-size:12px}.page-heading{align-items:flex-start;gap:12px;margin-bottom:20px}h1{font-size:24px}.page-heading p{font-size:14px}.page-heading>.btn{font-size:13px;padding:8px 11px;min-height:36px;margin-top:28px}.page-heading>.btn .icon{width:13px}.welcome-banner{padding:25px;min-height:230px}.welcome-banner h2{font-size:24px}.welcome-banner p{font-size:13px}.welcome-banner .eyebrow{font-size:11px}.monitor-art{display:none}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:15px}.stat-top{font-size:14px}.stat-icon{width:29px;height:29px;border-radius:9px}.stat-icon .icon{height:17px;width:17px}.stat-number{font-size:28px}.stat-foot{font-size:12px}.stat-number small{font-size:12px}.dashboard-middle{gap:18px}.card-heading{padding:20px 18px}.card-heading h3{font-size:15px}.card-heading p{font-size:13px}.text-link{font-size:13px}.distribution{gap:24px;padding:8px 20px 24px}.risk-donut{width:125px;height:125px}.risk-donut>div{width:98px;height:98px}.risk-legend a{font-size:13px}.alert-preview{margin:0 18px}.clinical-footnote{line-height:1.7;align-items:flex-start;flex-wrap:wrap}.clinical-footnote a{margin-left:0}footer{margin:0 16px;font-size:12px;gap:20px}footer span:last-child{max-width:190px;text-align:right}.filter-bar{padding:0 18px 20px;gap:10px}.search-field{flex-basis:100%}.filter-bar select{max-width:calc(50% - 5px);flex:1}.form-card{padding:22px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.detail-grid{grid-template-columns:1fr}.sbar{grid-template-columns:1fr}.escalation-card .card-heading{align-items:flex-start;flex-direction:column}.inline-warning{font-size:14px;align-items:flex-start}.response-actions{flex-wrap:wrap}.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:30px}.guide-content{padding:22px}.guide-content td,.guide-content th{font-size:14px}.preview-time{font-size:12px}.alert-preview strong{font-size:14px}}
@media print{.sidebar,.topbar,.demo-strip,footer,.btn{display:none!important}.workspace{margin:0}main{padding:0}.card{box-shadow:none;break-inside:avoid}.table-scroll{overflow:visible}body{background:#fff}.stats-grid{grid-template-columns:repeat(4,1fr)}a{color:#000}}

/* Readability: clinical data stays legible on desktop and smaller screens. */
body{font-family:"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6}
.sidebar{overflow-y:auto}
.nav-label{letter-spacing:1px;margin-top:34px}
.brand small{font-size:10px;letter-spacing:1.2px}
.card-heading h3{font-size:18px;line-height:1.45}
.card-heading p,.page-heading p{line-height:1.6}
.stat-top{font-weight:600;line-height:1.5}
.stat-number{font-size:36px}
.stat-foot{line-height:1.6;align-items:flex-start}
.stat-foot .icon{margin-top:4px;flex-shrink:0}
th{font-size:14px;font-weight:600;color:#455e50;padding:16px 20px}
td{font-size:15px;padding:19px 20px;color:#3f5b49}
td strong,.patient-name strong{font-size:15px;font-weight:600}
td small{font-size:13px;line-height:1.5}
.badge{font-size:13px;font-weight:600;padding:5px 9px}
.score{font-size:18px;width:39px;height:39px}
.patient-avatar{width:36px;height:36px;font-size:14px;flex-shrink:0}
.alert-preview{gap:12px;padding:17px 0;align-items:flex-start}
.alert-preview strong{font-size:15px;line-height:1.5}
.alert-preview small{font-size:13px;line-height:1.6}
.preview-time{font-size:12px;color:#7b5e28;white-space:normal;min-width:100px}
.preview-time small{font-size:12px}
.risk-legend{max-width:none;min-width:165px}
.risk-legend a{font-size:14px;line-height:1.6;margin:13px 0}
.risk-donut span{font-size:13px;color:#546d5d}
.distribution{gap:28px;flex-wrap:wrap}
.btn{font-size:14px;min-height:44px}
.text-link{font-size:14px;white-space:normal}
.count-pill{font-size:13px}
.pill{font-size:12px;color:#526b5b}
label,input,select,textarea{font-size:15px}
input,select{min-height:44px}
.checkbox-line input{min-height:0}
.form-card>form>p,.observation-help p,.observation-help li{font-size:15px}
.sbar p,.response-record,.guide-content p{font-size:15px}
.notes-row td{font-size:13px}
.guide-content td,.guide-content th{font-size:14px}
.clinical-footnote{font-size:13px;line-height:1.7;flex-wrap:wrap}
.protocol p,.protocol a{font-size:13px}
.welcome-banner p{color:#e1eee7;font-size:14px;flex-wrap:wrap}
.welcome-banner .eyebrow{font-size:12px;color:#d0e7da}
.welcome-banner .btn{font-size:14px}
.demo-strip{font-size:11px;letter-spacing:.7px;flex-wrap:wrap}
.demo-strip>span:last-child{font-size:12px}
.login-box>p,.login-box label{font-size:15px}
.login-note{font-size:13px!important}
.demo-note{font-size:14px}
@media(min-width:901px) and (max-width:1400px){.dashboard-middle{grid-template-columns:1fr}.distribution{justify-content:flex-start}.risk-legend{max-width:320px}.stat-top{align-items:flex-start}.stats-grid{gap:14px}.stat-card{padding:18px}}
@media(max-width:600px){.card-heading{align-items:flex-start;flex-wrap:wrap}.card-heading h3{font-size:17px}.card-heading p{font-size:14px}.page-heading{flex-wrap:wrap}.page-heading>.btn{font-size:14px;margin-top:0}.page-heading p{font-size:14px}.stat-top{font-size:14px;align-items:flex-start}.stat-foot{font-size:13px}.stat-number small{font-size:13px}.distribution{gap:20px}.risk-donut{width:140px;height:140px}.risk-donut>div{width:110px;height:110px}.alert-preview{flex-wrap:wrap}.preview-time{margin-left:45px;display:flex;gap:8px;align-items:center;text-align:left}.preview-time small{margin-top:0}.topbar-left strong{font-size:13px}.topbar-left small{font-size:11px}.demo-strip{font-size:10px}.demo-strip>span:last-child{font-size:11px}.guide-content td,.guide-content th{font-size:14px}}

/* Administrative master data */
.master-nav-label{margin-top:22px;margin-bottom:10px}
.master-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px;border-bottom:1px solid #dce6df;padding-bottom:12px}
.master-tabs a{display:flex;align-items:center;gap:9px;padding:10px 16px;border-radius:9px;color:#536c5c;font-size:15px;font-weight:600}
.master-tabs a.selected{background:#e5f0e7;color:#17594e}
.master-tabs a:hover{background:#edf4ee}
.compact{min-height:36px;padding:6px 14px}
.master-description{white-space:normal;max-width:340px}
.form-help{font-size:14px;line-height:1.7;color:#536b5b;margin:12px 0 20px}
.sidebar>.brand{flex-shrink:0}
.sidebar>nav{flex-shrink:0}

.episode-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.episode-heading{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#526b5b;font-size:14px;margin:0 0 22px}
.discharge-summary{padding:24px;margin-bottom:24px}
.discharge-summary p{margin-top:12px;white-space:normal;font-size:15px}
.episode-history{margin-top:24px}
@media(max-width:600px){.episode-actions{justify-content:flex-start}.episode-actions .btn{font-size:13px}.episode-heading{gap:9px}}

.hospital-select-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:#f1f6f3}
.hospital-select-card{background:#fff;border:1px solid #dfe9e2;border-radius:22px;padding:40px;max-width:560px;width:100%;box-shadow:0 18px 60px #173e2a08}
.hospital-select-card .brand{margin-bottom:32px}
.hospital-select-card h1{font-size:29px;margin:20px 0 14px;line-height:1.3}
.hospital-select-card>p{font-size:15px;line-height:1.8;color:#526d5b;margin-bottom:26px}
.hospital-select-card form{margin-top:28px}
.hospital-select-card .hospital-scope-note{font-size:13px;margin:26px 0 0;padding-top:20px;border-top:1px solid #e4ece7}
.hospital-login-context{display:flex;flex-direction:column;gap:5px;border-left:3px solid #17594e;padding:4px 0 4px 14px;margin-top:24px;color:#17594e}
.hospital-login-context strong{font-size:20px}.hospital-login-context span{font-size:13px;color:#526d5b}
.hospital-switch{margin-top:22px}
@media(max-width:600px){.hospital-select-card{padding:28px 24px}.hospital-select-card h1{font-size:26px}.topbar-left strong{max-width:210px;overflow-wrap:anywhere}}

/* Unified EWS-Alert and UNISSULA identity */
.app-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;white-space:nowrap}
.app-brand-logo{display:block;width:48px;height:48px;object-fit:contain;flex:0 0 auto;background:#fff;border-radius:10px;padding:3px}
.app-brand-wordmark{display:block;font-size:26px;line-height:1.12;letter-spacing:-.7px;font-weight:800}
.app-brand-wordmark .brand-light{font-weight:500}
.app-brand .app-brand-wordmark small{display:block;font-size:9px;line-height:1.3;letter-spacing:2px;font-weight:600;color:#63796f;margin-top:6px}
.sidebar>.app-brand{padding-bottom:28px}
.login-story .app-brand-logo{width:56px;height:56px;padding:4px;border-radius:12px}
.login-story .app-brand-wordmark{font-size:29px}
.login-story .app-brand .app-brand-wordmark small{color:#bdd8ca}
.topbar .app-brand-logo{width:42px;height:42px;padding:2px}
.topbar .app-brand-wordmark{font-size:23px}
.topbar .app-brand .app-brand-wordmark small{font-size:8px;letter-spacing:1.2px;margin-top:4px}
@media(max-width:600px){.login-story .app-brand-logo{width:48px;height:48px}.login-story .app-brand-wordmark{font-size:26px}.topbar .app-brand-wordmark{font-size:20px}}
.login-story .app-brand .brand-light{color:#fff;opacity:.92}

.app-brand .app-brand-wordmark small{white-space:normal;max-width:170px;font-size:10px;line-height:1.4;letter-spacing:0;font-weight:500;margin-top:4px}
.login-story .app-brand .app-brand-wordmark small{max-width:240px;font-size:11px}
.topbar .app-brand .app-brand-wordmark small{max-width:220px;font-size:10px;letter-spacing:0}
/* Stronger university label */
.app-brand .app-brand-wordmark small{font-size:11px;font-weight:700;line-height:1.45;color:#254d43;max-width:170px}
.login-story .app-brand .app-brand-wordmark small{font-size:13px;font-weight:700;color:#fff;max-width:265px;margin-top:5px}
.topbar .app-brand .app-brand-wordmark small{font-size:11px;font-weight:700;color:#254d43;max-width:235px}

/* Live login wallpaper: transforms only, isolated from clinical pages. */
.login-live{position:relative;isolation:isolate;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);background:#0b302c;min-height:100vh;min-height:100svh}
.live-wallpaper{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 16% 10%,#20685b66,transparent 55%),radial-gradient(ellipse at 90% 90%,#7b9a3e24,transparent 55%),linear-gradient(135deg,#092a27,#154e43 62%,#0c342e)}
.wallpaper-grid{position:absolute;inset:0;background-image:radial-gradient(#d7f3de33 .8px,transparent .8px);background-size:30px 30px;opacity:.18}
.wallpaper-glow{position:absolute;width:42vw;height:42vw;min-width:260px;min-height:260px;border-radius:50%;opacity:.28;animation:wallpaper-breathe 22s ease-in-out infinite alternate;will-change:transform}
.glow-one{left:-15%;top:28%;background:radial-gradient(circle,#4ab98f66,transparent 68%)}
.glow-two{right:-12%;top:-20%;background:radial-gradient(circle,#b3df7255,transparent 68%);animation-delay:-11s}
.team-floater{position:absolute;left:var(--x);top:var(--y);display:flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid #d6f3df24;border-radius:999px;background:#e0f5e80b;color:#d5eadf;font-size:14px;font-weight:500;letter-spacing:.2px;white-space:nowrap;box-shadow:0 6px 26px #001e2115;animation:team-drift var(--duration,32s) ease-in-out var(--delay,0s) infinite;will-change:transform,opacity}
.floater-dot{width:5px;height:5px;border-radius:50%;background:#b6dc7c;box-shadow:0 0 12px #c0e59355;flex-shrink:0}
.team-floater:nth-of-type(1){--x:26%;--y:14%;--duration:18.4s;--delay:-8s}
.team-floater:nth-of-type(2){--x:3%;--y:25%;--duration:21.6s;--delay:-19s}
.team-floater:nth-of-type(3){--x:33%;--y:43%;--duration:17.6s;--delay:-4s}
.team-floater:nth-of-type(4){--x:4%;--y:71%;--duration:22.4s;--delay:-13s}
.team-floater:nth-of-type(5){--x:30%;--y:85%;--duration:20s;--delay:-24s}
.team-floater:nth-of-type(6){--x:60%;--y:7%;--duration:20.8s;--delay:-16s}
.team-floater:nth-of-type(7){--x:82%;--y:18%;--duration:17.6s;--delay:-6s}
.team-floater:nth-of-type(8){--x:81%;--y:87%;--duration:23.2s;--delay:-21s}
.team-floater:nth-of-type(9){--x:52%;--y:93%;--duration:20.8s;--delay:-11s}
.team-floater:nth-of-type(10){--x:5%;--y:92%;--duration:22.4s;--delay:-28s}
.login-live .login-story{position:relative;z-index:1;background:transparent;padding:46px 60px;text-shadow:0 2px 16px #062b2855;gap:28px}
.login-live .login-story>div{position:relative;max-width:470px}
.login-live .login-story h1{font-size:clamp(36px,3.7vw,52px);line-height:1.13;margin:20px 0;letter-spacing:-1.8px}
.login-live .login-story p{color:#c1d9cb;line-height:1.8}
.login-live .login-story .eyebrow{color:#c4d9b9;font-size:10px;letter-spacing:1.7px}
.login-live .login-graphic{padding-top:18px;opacity:.8}
.login-live .login-graphic .icon{width:200px;height:85px}
.login-live .login-story>small{color:#c0d8ca}
.login-live .login-panel{position:relative;z-index:1;background:transparent;padding:42px 40px 66px}
.login-live .login-box{max-width:440px;padding:32px 34px;border:1px solid #fff9;border-radius:26px;background:#fffffffa;box-shadow:0 26px 90px #001c2444}
.login-live .login-box h2{font-size:26px;margin-top:18px}
.login-live .login-box>p{margin-bottom:24px}
.login-live .login-box label{margin-bottom:18px}
.login-live .login-note{margin-top:22px}
.login-live .demo-note{font-size:12px;line-height:1.6;padding-top:14px}
.wallpaper-motion{position:fixed;right:24px;bottom:18px;z-index:3;padding:9px 14px;border:1px solid #d0e6dc44;border-radius:999px;background:#0a2e28b8;color:#d6e9dd;font-size:12px;cursor:pointer}
.wallpaper-motion:hover{background:#1d574b}.wallpaper-motion:focus-visible{outline:2px solid #d0f48d;outline-offset:4px}
.wallpaper-paused .live-wallpaper *{animation-play-state:paused!important}
@keyframes team-drift{0%,100%{transform:translate3d(-18px,14px,0) rotate(-3deg);opacity:.34}35%{transform:translate3d(25px,-30px,0) rotate(2deg);opacity:.76}70%{transform:translate3d(-8px,-58px,0) rotate(-1deg);opacity:.48}}
@keyframes wallpaper-breathe{from{transform:translate3d(0,0,0) scale(.9)}to{transform:translate3d(8%,12%,0) scale(1.18)}}
@media(max-width:1000px){.login-live .login-story{padding:36px}.login-live .login-panel{padding:32px 24px 66px}.login-live .login-box{padding:28px}.login-live .app-brand-wordmark small{max-width:205px!important}.team-floater{font-size:12px;padding:9px 12px}}
@media(max-width:700px){.login-live{display:flex;flex-direction:column}.login-live .login-story{display:flex;padding:25px 24px 8px;gap:0}.login-live .login-story>div,.login-live .login-story>small{display:none}.login-live .login-panel{padding:22px 20px 72px;flex:1;align-items:flex-start}.login-live .login-box{max-width:440px;padding:26px 24px;border-radius:22px}.login-live .app-brand-wordmark small{font-size:11px}.team-floater{font-size:11px;opacity:.4}.wallpaper-motion{right:20px;bottom:14px}}
@media(prefers-reduced-motion:reduce){.live-wallpaper *{animation:none!important;will-change:auto}.team-floater{opacity:.45}.wallpaper-motion{display:none}}
.login-live .team-floater:nth-of-type(1){--x:36%;--y:20%}
.login-live .team-floater:nth-of-type(6){--y:12%}

/* Original medical motion graphics, inspired by the supplied video references. */
.medical-ambient{position:absolute;inset:0;overflow:hidden;color:#bfe6d5;pointer-events:none}
.medical-symbol{position:absolute;left:var(--mx);top:var(--my);width:var(--ms,38px);height:var(--ms,38px);opacity:.14;animation:medical-float var(--mt,18s) ease-in-out var(--md,0s) infinite alternate}
.medical-symbol svg{display:block;width:100%;height:100%;fill:#b2e5d30b;stroke:currentColor;stroke-width:1.1;stroke-linejoin:round}
.medical-symbol:nth-child(1){--mx:2%;--my:10%;--ms:30px;--mt:17s;--md:-4s}
.medical-symbol:nth-child(2){--mx:43%;--my:24%;--ms:56px;--mt:23s;--md:-13s}
.medical-symbol:nth-child(3){--mx:17%;--my:57%;--ms:28px;--mt:19s;--md:-6s}
.medical-symbol:nth-child(4){--mx:36%;--my:72%;--ms:42px;--mt:21s;--md:-10s}
.medical-symbol:nth-child(5){--mx:57%;--my:12%;--ms:30px;--mt:16s;--md:-5s}
.medical-symbol:nth-child(6){--mx:94%;--my:34%;--ms:48px;--mt:22s;--md:-14s}
.medical-symbol:nth-child(7){--mx:78%;--my:91%;--ms:36px;--mt:20s;--md:-8s}
.medical-symbol:nth-child(8){--mx:8%;--my:85%;--ms:24px;--mt:18s;--md:-12s}
.medical-ambient-trace{position:absolute;left:0;bottom:13%;width:100%;height:26%;overflow:visible;opacity:.16}
.ambient-trace-base,.ambient-trace-live{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.4;stroke:#9ed9c1}
.ambient-trace-base{opacity:.28}.ambient-trace-live{stroke:#d2f796;stroke-width:2;stroke-dasharray:190 1010;animation:medical-signal 7s linear infinite}
.login-live .login-graphic{padding-top:20px;opacity:1}
.medical-ecg{width:min(100%,400px);height:auto;aspect-ratio:10/3;overflow:hidden;position:relative;color:#8fc9af;background:linear-gradient(100deg,#062c2833,#164b4120);border-radius:12px;box-shadow:inset 0 0 30px #082d2733;pointer-events:none}
.medical-ecg svg{display:block;width:100%;height:100%}.ecg-grid{opacity:.18}
.ecg-trace-base,.ecg-trace-live{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke:#b9d5ac;stroke-width:1.8}
.ecg-trace-base{opacity:.18}.ecg-trace-live{stroke:#d0f78b;stroke-width:2.6;stroke-dasharray:330 870;filter:drop-shadow(0 0 4px #c1f87377);animation:medical-signal 3.8s linear infinite}
.ecg-scanner{stroke:#c8f394;stroke-width:1;opacity:.18;animation:medical-scan 4.4s linear infinite;transform-box:view-box}
.wallpaper-paused .medical-ecg *, .wallpaper-backgrounded .live-wallpaper *, .wallpaper-backgrounded .medical-ecg *{animation-play-state:paused!important}
@keyframes medical-float{0%{transform:translate3d(-8px,18px,0) rotate(-8deg);opacity:.08}55%{opacity:.23}100%{transform:translate3d(20px,-40px,0) rotate(9deg);opacity:.12}}
@keyframes medical-signal{from{stroke-dashoffset:1200}to{stroke-dashoffset:0}}
@keyframes medical-scan{from{transform:translateX(0)}to{transform:translateX(600px)}}
@media(prefers-reduced-motion:reduce){.medical-ecg *{animation:none!important}.ecg-scanner{display:none}}
/* Additional Kelompok 1 members; keep the existing animation speed. */
.team-floater:nth-of-type(11){--x:18%;--y:6%;--duration:20s;--delay:-12s}
.team-floater:nth-of-type(12){--x:43%;--y:32%;--duration:22.4s;--delay:-7s}
.team-floater:nth-of-type(13){--x:2%;--y:48%;--duration:18.4s;--delay:-15s}
.team-floater:nth-of-type(14){--x:21%;--y:60%;--duration:21.6s;--delay:-3s}
.team-floater:nth-of-type(15){--x:43%;--y:73%;--duration:19.2s;--delay:-18s}
.team-floater:nth-of-type(16){--x:67%;--y:95%;--duration:22.4s;--delay:-10s}
.team-floater:nth-of-type(17){--x:87%;--y:5%;--duration:18.4s;--delay:-5s}
.team-floater:nth-of-type(18){--x:68%;--y:29%;--duration:20.8s;--delay:-17s}
.team-floater:nth-of-type(19){--x:85%;--y:45%;--duration:23.2s;--delay:-8s}
.team-floater:nth-of-type(20){--x:63%;--y:59%;--duration:17.6s;--delay:-14s}
.team-floater:nth-of-type(21){--x:83%;--y:71%;--duration:21.6s;--delay:-2s}
.team-floater:nth-of-type(22){--x:23%;--y:36%;--duration:20s;--delay:-20s}
.team-floater:nth-of-type(23){--x:48%;--y:53%;--duration:22.4s;--delay:-9s}
