
:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#eef2ff;background:#08111f}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#08111f,#111827);min-height:100vh}
.shell{max-width:720px;margin:auto;padding:20px 16px 48px}
.hero{display:flex;gap:14px;align-items:center;margin:8px 0 18px}
.badge{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;background:#ef4444;color:white;font-weight:900;font-size:22px;box-shadow:0 10px 25px #ef444455}
h1{margin:0;font-size:28px}.hero p{margin:4px 0 0;color:#a5b4fc}
.card{background:#111827;border:1px solid #253047;border-radius:20px;padding:18px;margin-bottom:16px;box-shadow:0 12px 35px #0005}
label,legend{display:block;font-weight:700;margin-bottom:14px}
input,select,button{font:inherit}
input[type=date],input[type=time],select{width:100%;margin-top:7px;padding:13px;border-radius:12px;border:1px solid #334155;background:#0b1220;color:white}
fieldset{border:1px solid #334155;border-radius:14px;padding:12px;margin:0 0 16px}
.radio{display:flex;align-items:center;gap:10px;margin:10px 0;font-weight:600}.radio span{margin-left:auto;color:#93c5fd}
.actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}
button{border:0;border-radius:12px;padding:13px 15px;background:#2563eb;color:white;font-weight:800;cursor:pointer}
button.secondary{background:#334155}.ghost{width:100%;margin-top:10px;background:#172033}.danger{color:#fca5a5}
h2{margin-top:0}.status{color:#bfdbfe;margin-bottom:10px}.alarm-list{padding-left:24px}.alarm-list li{padding:8px 0;border-bottom:1px solid #233047}
.notice{font-size:14px;line-height:1.5;color:#cbd5e1;background:#0f172a;border-left:4px solid #f59e0b;padding:14px;border-radius:12px}
dialog{border:0;border-radius:22px;background:#111827;color:white;padding:0;max-width:360px;width:90%}
dialog::backdrop{background:#000b}
.alarm-popup{text-align:center;padding:28px}.alarm-icon{font-size:50px}.alarm-popup button{width:100%;margin-top:10px}
@media (display-mode:standalone){body{padding-top:env(safe-area-inset-top)}}
