/* ===============================
ROOT VARIABLES
================================ */

:root{
--primary:#38bdf8;
--bg:#0f172a;
--card:#1e293b;
--text:#e2e8f0;

--low:#22c55e;
--medium:#eab308;
--high:#ef4444;
}

/* ===============================
GLOBAL RESET
================================ */

*{
box-sizing:border-box;
transition:0.3s ease;
}

html{
scroll-behavior:smooth;
color-scheme:dark light;
}

body{
margin:0;
font-family:Segoe UI, Arial, sans-serif;
background:linear-gradient(135deg,#0f172a,#020617);
color:var(--text);
min-height:100vh;
}

/* ===============================
CONTAINER
================================ */

.container{
max-width:700px;
margin:auto;
padding:25px;
}

/* ===============================
HERO
================================ */

.hero-title{
text-align:center;
color:var(--primary);
font-size:3rem;
margin-bottom:8px;
}

.tagline{
text-align:center;
color:#94a3b8;
margin-bottom:30px;
}

/* ===============================
ACCESSIBILITY CONTROLS
================================ */

.accessibility-controls{
display:flex;
justify-content:center;
gap:12px;
margin-bottom:25px;
flex-wrap:wrap;
}

.accessibility-controls button{
padding:10px 18px;
border:none;
border-radius:12px;
background:rgba(56,189,248,0.15);
color:var(--primary);
font-weight:600;
cursor:pointer;
}

.accessibility-controls button:hover{
background:var(--primary);
color:black;
transform:translateY(-3px);
}

/* ===============================
CARD
================================ */

.card{
background:rgba(255,255,255,0.05);
backdrop-filter:blur(18px);
padding:30px;
border-radius:24px;
box-shadow:0 25px 60px rgba(0,0,0,.6);
}

/* ===============================
FORM ELEMENTS
================================ */

label{
display:block;
margin-bottom:6px;
font-weight:600;
}

textarea,
input{
width:100%;
padding:14px;
border-radius:14px;
border:none;
margin-bottom:18px;
background:#0f172a;
color:white;
font-size:1rem;
}

textarea{
min-height:130px;
resize:none;
}

/* ===============================
BUTTONS
================================ */

button{
width:100%;
padding:14px;
border:none;
border-radius:14px;
background:var(--primary);
font-weight:bold;
cursor:pointer;
margin-top:12px;
font-size:1rem;
}

button:hover{
transform:scale(1.03);
}

button:disabled{
opacity:0.5;
cursor:not-allowed;
}

/* ===============================
RESULT SECTION
================================ */

#result{
margin-top:35px;
text-align:center;
padding:25px;
border-radius:22px;
background:#0b1120;
}

#riskText{
font-size:1.3rem;
font-weight:bold;
margin-bottom:15px;
}

/* Risk Colors */

.risk-low{
color:var(--low);
}

.risk-medium{
color:var(--medium);
}

.risk-high{
color:var(--high);
}

/* ===============================
RISK BAR
================================ */

.risk-bar-container{
height:18px;
background:#1e293b;
border-radius:30px;
overflow:hidden;
margin-top:18px;
}

.risk-bar{
height:100%;
width:0%;
border-radius:30px;
background:var(--primary);
}

/* ===============================
HOSPITAL BUTTON
================================ */

.hospital-btn{
display:inline-block;
margin-top:22px;
padding:14px 28px;
border-radius:14px;
background:var(--primary);
color:black;
font-weight:bold;
text-decoration:none;
}

.hospital-btn:hover{
transform:scale(1.05);
box-shadow:0 15px 40px rgba(56,189,248,0.4);
}

/* ===============================
ACCESSIBILITY TEXT SIZE
================================ */

.large-text{
font-size:1.15rem;
}

.large-text *{
font-size:1.15em !important;
line-height:1.8;
}

/* ===============================
LIGHT THEME
================================ */

body.light-theme{
background:#f8fafc !important;
color:#0f172a;
}

.light-theme .card{
background:white;
color:#0f172a;
box-shadow:0 20px 60px rgba(0,0,0,0.1);
}

.light-theme textarea,
.light-theme input{
background:white;
color:black;
border:1px solid #cbd5e1;
}

.light-theme #result{
background:white;
color:#0f172a;
}

.light-theme .hero-title{
color:#0284c7;
}

.light-theme .tagline{
color:#475569;
}

/* ===============================
RESPONSIVE DESIGN
================================ */

@media(max-width:600px){

.hero-title{
font-size:2.2rem;
}

.card{
padding:22px;
}

}

/* ===============================
TOUCH GLOW EFFECT
================================ */

.touch-glow{
position:fixed;
width:220px;
height:220px;
border-radius:50%;

background:radial-gradient(
circle,
rgba(56,189,248,0.35),
rgba(56,189,248,0.15),
transparent 70%
);

pointer-events:none;
transform:translate(-50%,-50%);
filter:blur(40px);
z-index:-1;
}