﻿:root{--bg:#f6f8f7;--card:#fff;--text:#17211f;--muted:#687673;--line:#dfe7e4;--brand:#0f766e;--brand2:#14b8a6;--warn:#f59e0b;--done:#16a34a}
    *{box-sizing:border-box} body{margin:0;font-family:Arial,"Noto Sans Hebrew",sans-serif;background:var(--bg);color:var(--text);line-height:1.45}
    header{position:sticky;top:0;z-index:10;background:linear-gradient(135deg,var(--brand),#0b4f4a);color:white;padding:14px 16px;box-shadow:0 2px 10px #0002}
    .brand{max-width:760px;margin:0 auto;display:flex;align-items:center;gap:12px}.brandIcon{width:46px;height:46px;border-radius:14px;object-fit:cover;box-shadow:0 6px 18px #0003;flex:0 0 auto}
    .headerAction{position:absolute;top:18px;left:16px;border:0;border-radius:999px;background:#ffffff1f;color:white;padding:9px 13px;font-size:13px;font-weight:800;cursor:pointer}
    h1{font-size:22px;margin:0}.wrap{max-width:760px;margin:0 auto;padding:14px}
    .connectionStatus{position:fixed;top:82px;left:50%;z-index:20;transform:translateX(-50%);background:#0f4f49;color:#fff;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:800;box-shadow:0 8px 22px #0003}
    .card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px;margin:12px 0;box-shadow:0 1px 6px #0000000d}
    label{display:block;font-weight:700;margin-bottom:7px;font-size:14px} input[type="text"],input[type="password"],input[type="date"],select{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;font-size:16px;background:#fff;color:var(--text)}
    .authScreen{min-height:calc(100vh - 74px);display:grid;place-items:start center;padding-top:24px}.authCard{width:100%;max-width:460px}.authCard h2{font-size:20px;margin:0 0 8px}.authCard input{margin-bottom:12px}.authActions{margin-top:4px}.authMessage{min-height:18px}
    .grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btns{display:flex;gap:8px;flex-wrap:wrap}.btn{border:0;border-radius:12px;padding:11px 14px;font-size:15px;font-weight:700;cursor:pointer}.primary{background:var(--brand);color:white}.ghost{background:#edf5f3;color:#0f4f49}.danger{background:#fee2e2;color:#991b1b}
    .progressBox{display:flex;align-items:center;gap:12px}.bar{height:12px;background:#e5e7eb;border-radius:999px;overflow:hidden;flex:1}.fill{height:100%;width:0;background:linear-gradient(90deg,var(--brand2),var(--done));transition:.2s}.pct{font-weight:800;min-width:46px;text-align:left}
    details{background:#fff;border:1px solid var(--line);border-radius:16px;margin:10px 0;overflow:visible} summary{padding:14px 14px;font-weight:800;cursor:pointer;background:#f9fbfa;display:flex;justify-content:space-between;align-items:center;border-radius:16px 16px 0 0}.count{font-size:12px;color:var(--muted);font-weight:700}
    .item{position:relative;display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-top:1px solid var(--line);overflow:visible}.item.justCompleted{animation:item-confirm 900ms ease-out both}.item input{width:22px;height:22px;accent-color:var(--brand);margin-top:1px}.item span{font-size:15px}.doneText{text-decoration:line-through;color:var(--muted)}
    .firework{position:absolute;inset-inline-start:25px;top:22px;width:12px;height:12px;pointer-events:none;z-index:5}.firework strong{position:absolute;inset-inline-start:14px;top:-17px;background:#0f766e;color:#fff;border-radius:999px;padding:3px 8px;font-size:11px;line-height:1.2;white-space:nowrap;box-shadow:0 8px 18px #0002;animation:reward-label 1200ms ease-out both}.firework span{position:absolute;inset:0;width:8px;height:8px;border-radius:999px;background:var(--spark-color,#14b8a6);box-shadow:0 0 0 3px #ffffffcc;animation:spark-pop 1200ms cubic-bezier(.2,0,0,1) both;transform:rotate(var(--angle)) translateX(0) scale(1)}
    @keyframes spark-pop{0%{opacity:0;transform:rotate(var(--angle)) translateX(0) scale(.4)}12%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateX(var(--distance)) scale(.12)}}
    @keyframes reward-label{0%{opacity:0;transform:translateY(4px) scale(.9)}18%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-8px) scale(.96)}}
    @keyframes item-confirm{0%{background:#dff7f2}100%{background:transparent}}
    .small{font-size:12px;color:var(--muted)}.nurseList{display:flex;gap:8px;overflow:auto;padding-bottom:4px}.chip{white-space:nowrap;border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;cursor:pointer}.chip.active{background:#dff7f2;border-color:#7dd3c7;font-weight:800}.footer{height:30px}
    @media(max-width:560px){.grid{grid-template-columns:1fr}.wrap{padding:10px}.card{border-radius:16px}.brand{gap:10px}.brandIcon{width:40px;height:40px;border-radius:12px}.headerAction{top:17px;left:10px;padding:8px 10px}.connectionStatus{top:74px}h1{font-size:20px}.btn{width:100%}.btns{display:grid;grid-template-columns:1fr 1fr}.btns .primary{grid-column:span 2}}
    @media(prefers-reduced-motion:reduce){.item.justCompleted,.firework span{animation:none}.firework span{display:none}.firework strong{animation:none;opacity:1}.fill{transition:none}}
    @media print{header,.btns,.nurseList{display:none}.card,details{box-shadow:none;break-inside:avoid}body{background:#fff}}
