:root{--blue:#0788f5;--deep:#0756b8;--cyan:#11d7ed;--pink:#ff6fae;--ink:#17324d;--soft:#eef9ff;--mint:#dffbf5;--danger:#ff5578}
*{box-sizing:border-box}body{font-family:"Noto Sans Thai",sans-serif;color:var(--ink);background:linear-gradient(180deg,#f7fcff 0,#edf9ff 45%,#fff 100%);min-height:100vh}.app-header{background:radial-gradient(circle at 50% -20%,#fff 0,#dff6ff 48%,#bdeaff 100%);overflow:hidden}.top-logo{object-fit:contain;filter:drop-shadow(0 12px 20px #0788f533)}.brand-title{font-weight:800;color:var(--deep);letter-spacing:-1px}.brand-subtitle{font-weight:600;color:#2679ae}.live-clock{display:inline-flex;align-items:center;background:#fff;border:1px solid #b9e8ff;border-radius:999px;padding:.35rem .85rem;color:#14699c;font-size:.9rem;box-shadow:0 5px 16px #0788f51a}.sticker{position:absolute;font-size:2rem;animation:float 3s ease-in-out infinite}.sticker-one{left:15%;top:22%}.sticker-two{right:16%;top:28%;animation-delay:1s}@keyframes float{50%{transform:translateY(-8px) rotate(8deg)}}.app-nav{background:linear-gradient(100deg,var(--deep),var(--blue),#00b9dc);box-shadow:0 6px 20px #0756b833}.app-nav .nav-link{color:#eefaff;border-radius:999px;padding:.5rem .85rem}.app-nav .nav-link:hover{background:#ffffff2e;color:#fff}.navbar-toggler{border-color:#ffffff88}.navbar-toggler-icon{filter:invert(1)}.hero{position:relative;min-height:540px;background:linear-gradient(90deg,#0756b8f0 0%,#0788f5d7 40%,transparent 68%),url('../../uploads/stroke_hero-v2.webp') center/cover;border-radius:0 0 42px 42px;overflow:hidden}.hero-copy{max-width:620px;color:#fff;padding:5.5rem 0}.hero h2{font-size:clamp(2.3rem,5vw,4.7rem);font-weight:800;line-height:1.05}.eyebrow{display:inline-block;border:1px solid #ffffff80;background:#ffffff20;border-radius:999px;padding:.4rem .9rem;font-weight:700}.btn-glow{background:linear-gradient(100deg,#fff,#ddfbff);color:var(--deep);font-weight:800;border:0;border-radius:999px;padding:.85rem 1.35rem;box-shadow:0 12px 25px #003e8040}.btn-glow:hover{transform:translateY(-2px);color:#073f89}.btn-primary{background:linear-gradient(100deg,var(--deep),var(--blue));border:0;border-radius:14px;box-shadow:0 8px 18px #0788f52b}.btn,.form-control,.form-select{border-radius:14px}.section-title{font-weight:800;color:var(--deep)}.soft-card,.metric-card,.form-card{background:#fff;border:1px solid #d8eef9;border-radius:24px;box-shadow:0 16px 38px #0b7db914}.soft-card{overflow:hidden}.metric-card{padding:1.25rem;height:100%}.metric-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,#c8f2ff,#eafaff);color:var(--deep);font-size:1.45rem}.visual-frame{position:relative;overflow:hidden;border-radius:28px;background:#e9f7ff;box-shadow:0 18px 46px #0756b822;border:1px solid #caebfa}.visual-frame:after{content:"";position:absolute;inset:0;border:1px solid #ffffff8c;border-radius:inherit;pointer-events:none}.visual-frame img{width:100%;height:100%;display:block;object-fit:cover}.visual-square{aspect-ratio:1/1}.visual-timeline{aspect-ratio:3/2}.visual-timeline img{object-position:center}.visual-assessment{min-height:420px;border-radius:28px 0 0 28px;box-shadow:none;border:0}.assessment-showcase{background:linear-gradient(135deg,#fff,#edfaff);border:1px solid #ccebf8;border-radius:30px;overflow:hidden;box-shadow:0 22px 55px #0756b81c}.feature-chip{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid #c6e9f7;border-radius:999px;padding:.5rem .8rem;color:var(--deep);font-weight:700}.team-showcase{position:relative;min-height:470px;border-radius:32px;overflow:hidden;box-shadow:0 24px 58px #0756b825}.team-showcase>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.team-showcase:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#063d8bea 0%,#0756b8c9 38%,#0756b82e 70%,transparent)}.team-copy{position:relative;z-index:1;color:#fff;max-width:590px;padding:5.2rem 4.5rem}.team-copy h2{font-size:clamp(2rem,4vw,3.4rem);font-weight:800}.timeline-step{position:relative;background:#fff;border:1px solid #d6edf8;border-radius:20px;padding:1.1rem 1.1rem 1.1rem 4.6rem;min-height:108px;box-shadow:0 12px 25px #0d7da50d}.timeline-step .minute{position:absolute;left:1rem;top:1rem;width:50px;height:50px;border-radius:17px;background:linear-gradient(140deg,var(--blue),var(--cyan));display:grid;place-items:center;color:#fff;font-weight:800}.timeline-step.done{border-color:#4fd7b1;background:#f2fffb}.timeline-step.late{border-color:#ff9db7;background:#fff5f8}.badge-role{background:#dff4ff;color:#0756b8}.clinical-note{background:#fff5d8;border-left:5px solid #ffc341;border-radius:16px;padding:1rem}.form-label{font-weight:700;color:#244e6c}.form-control,.form-select{border-color:#cde4ef;padding:.7rem .9rem}.form-control:focus,.form-select:focus{border-color:var(--blue);box-shadow:0 0 0 .25rem #0788f51c}.table-modern{border-collapse:separate;border-spacing:0 8px}.table-modern tbody tr{background:#fff;box-shadow:0 6px 16px #0c72900c}.table-modern td{padding:.85rem;vertical-align:middle}.nihss-item{border:1px solid #dbeef7;border-radius:18px;padding:1rem;background:#fff}.score-pill input{display:none}.score-pill label{display:inline-grid;place-items:center;min-width:42px;height:42px;border:1px solid #b9ddec;border-radius:13px;cursor:pointer;font-weight:800;margin:.18rem}.score-pill input:checked+label{background:linear-gradient(145deg,var(--blue),var(--cyan));color:#fff;border-color:transparent;box-shadow:0 7px 15px #0788f533}.app-footer{background:linear-gradient(180deg,#eaf9ff,#cceeff);border-top:1px solid #b6e1f5}.footer-art{object-fit:contain;max-width:100%;filter:drop-shadow(0 8px 18px #0756b82a)}.disclaimer{display:inline-block;background:#fff7da;border:1px solid #f4d878;border-radius:999px;padding:.5rem 1rem;color:#755300}@media(max-width:991px){.visual-assessment{min-height:360px;border-radius:28px 28px 0 0}.team-showcase{min-height:560px}.team-showcase>img{object-position:62% center}.team-showcase:after{background:linear-gradient(180deg,#063d8bf0 0%,#0756b8ba 55%,transparent 100%)}.team-copy{padding:3rem 2rem}}@media(max-width:767px){.hero{min-height:550px;background:linear-gradient(180deg,#0756b8f0 0%,#0788f5dc 62%,#0788f59e 100%),url('../../uploads/stroke_hero-v2.webp') 72% center/cover}.hero-copy{padding:3.5rem 0}.top-logo{width:110px;height:110px}.sticker{font-size:1.4rem}.table-responsive{border-radius:18px}.nihss-item{padding:.8rem}.visual-square{border-radius:22px}.team-showcase{min-height:600px}.team-copy{padding:2.3rem 1.4rem}.team-showcase>img{object-position:55% center}}

/* Clinical Vital Signs animated header */
.app-header{position:relative;min-height:360px;background:#05264a url('../../uploads/header/clinical-vitals-header-1800x360.webp') center/cover no-repeat;isolation:isolate}
.app-header:after{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse at center,#05264a26 0,#05264a72 45%,#031d3b38 100%),linear-gradient(180deg,#021a3342,#032b4d28);pointer-events:none}
.app-header>.container{z-index:2;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.app-header .top-logo{width:128px;height:128px;filter:drop-shadow(0 10px 22px #19d6f266) drop-shadow(0 0 4px #fff7)}
.app-header .brand-title{color:#fff;text-shadow:0 2px 14px #00162e,0 0 18px #19d6f244}
.app-header .brand-subtitle{color:#bfefff;text-shadow:0 2px 10px #001a37;font-weight:600}
.app-header .live-clock{color:#ddfbff;background:#042b52b8;border-color:#58e8f78c;box-shadow:0 8px 24px #001a3380,inset 0 0 18px #19d6f21f;backdrop-filter:blur(8px)}
.header-vitals-motion{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none;opacity:.88}
.header-vitals-motion svg{display:block;width:100%;height:100%;overflow:visible}
.vital-grid path{fill:none;stroke:#34dff0;stroke-width:1;opacity:.055;stroke-dasharray:4 16;animation:vital-grid-drift 24s linear infinite}
.ecg-shadow{fill:none;stroke:#19d6f2;stroke-width:12;opacity:.08;filter:blur(7px)}
.ecg-flow{fill:none;stroke:url(#vitalLine);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:34 18;animation:ecg-dash 11s linear infinite;filter:drop-shadow(0 0 5px #19d6f2)}
.graph-light{fill:url(#vitalGlow);filter:drop-shadow(0 0 9px #65f7ff)}.graph-light-two{fill:#43e2a8;opacity:.72}
.pulse-cluster{fill:none;stroke:#19d6f2;stroke-width:1.4;opacity:.3}.pulse-cluster circle{transform-box:fill-box;transform-origin:center;animation:vital-ring 5.5s ease-out infinite}.pulse-cluster circle:nth-child(2){animation-delay:-1.8s}.pulse-cluster circle:nth-child(3){animation-delay:-3.6s}.pulse-cluster path{stroke-width:2.4;filter:drop-shadow(0 0 4px #19d6f2)}.pulse-right{stroke:#43e2a8}
.vital-readout{opacity:.48;animation:vital-float 8s ease-in-out infinite}.vital-readout rect{fill:#03284dc2;stroke:#43e2a8;stroke-width:1}.vital-readout text{fill:#dffcff;font-family:"Noto Sans Thai",sans-serif}.vital-readout .vital-label{font-size:15px;letter-spacing:1.3px}.vital-readout .vital-value{font-size:25px;font-weight:800}.vital-readout path{fill:none;stroke:#43e2a8;stroke-width:5;stroke-linecap:round}.vital-bp{animation-delay:-4s}.status-orb{fill:#43e2a8;filter:drop-shadow(0 0 9px #43e2a8);animation:status-pulse 2.8s ease-in-out infinite}
@keyframes ecg-dash{to{stroke-dashoffset:-260}}
@keyframes vital-grid-drift{to{stroke-dashoffset:-160}}
@keyframes vital-ring{0%{transform:scale(.72);opacity:.65}75%,100%{transform:scale(1.22);opacity:0}}
@keyframes vital-float{50%{opacity:.7}}
@keyframes status-pulse{50%{opacity:.35;transform:scale(.72);transform-origin:center}}
@media(max-width:991px){.vital-readout{opacity:.3}.vital-spo2{transform:translate(245px,72px)}.vital-bp{transform:translate(1360px,72px)}}
@media(max-width:767px){.app-header,.app-header>.container{min-height:330px}.app-header .top-logo{width:108px;height:108px}.app-header .brand-title{font-size:1.85rem}.app-header .brand-subtitle{max-width:92%;font-size:.92rem}.header-vitals-motion{opacity:.65}.vital-readout{display:none}.pulse-cluster{opacity:.2}.ecg-flow{stroke-width:2}}
@media(prefers-reduced-motion:reduce){.header-vitals-motion *,.sticker{animation:none!important}.graph-light{display:none}.header-vitals-motion{opacity:.55}}
