
:root {font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-synthesis:none;--ink:#1a3e59;--blue:#1376b9;--bg:#f1f8ff;--shadow:0 7px 25px rgba(30,82,120,.1)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;color:var(--ink);background:#f3f9fe}body{padding:env(safe-area-inset-top) 0 calc(84px + env(safe-area-inset-bottom))}
#app{min-height:100dvh;max-width:1100px;margin:auto;background:linear-gradient(165deg,rgba(250,253,255,.83),rgba(245,250,255,.74)),url('./assets/bg_arctic_norilsk.webp') center top / cover fixed}
button,input{font:inherit}button{cursor:pointer}a{color:#176fa8}.shell{padding:14px 14px 28px}.top{height:46px;display:flex;align-items:center;gap:12px;margin:0 -2px 10px}.top-title{font-size:19px;font-weight:750;flex:1;line-height:1.2}.back,.smallbutton{border:0;background:rgba(255,255,255,.85);border-radius:13px;min-width:42px;height:42px;color:var(--ink);box-shadow:var(--shadow);font-size:23px}.homebanner{width:100%;height:164px;object-fit:cover;object-position:center;border-radius:22px;box-shadow:var(--shadow)}
.notice{font-size:12px;line-height:1.4;padding:11px 13px;border:1px solid #e6c99c;border-left:4px solid #dca24e;border-radius:13px;color:#674c23;background:#fff6e8;margin:10px 0 13px}.search{width:100%;border:1px solid #cadeed;background:#fffefa;outline:none;border-radius:17px;padding:13px 15px;font-size:16px;box-shadow:var(--shadow);margin:10px 0 14px}.search:focus{border-color:#62a7d6}
.h2{font-size:21px;font-weight:750;margin:12px 0 12px}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tile{border:1px solid #c8e0f4;border-radius:19px;background:rgba(255,255,255,.8);padding:9px;min-height:158px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-shadow:0 4px 15px #a5c7e026;color:#1f5272;font-weight:730;font-size:14px}.tile img{height:116px;max-width:100%;object-fit:contain;margin-bottom:3px}.tile:active,.item:active{transform:scale(.98)}
.list{display:flex;flex-direction:column;gap:10px}.item{width:100%;border:1px solid #d8e6ef;background:rgba(255,255,255,.92);border-radius:16px;text-align:left;padding:14px 14px;box-shadow:0 3px 14px #aac7d322;color:var(--ink);display:flex;gap:12px;align-items:center}.itemtext{flex:1;min-width:0}.name{font-size:16px;font-weight:720;line-height:1.25}.meta{color:#647e8b;font-size:12px;line-height:1.35;margin-top:5px}.star{font-size:23px;line-height:1;border:0;color:#a4bfd0;background:transparent;padding:10px 6px}.star.on{color:#e3a535}.pill{font-size:12px;display:inline-block;padding:4px 10px;margin:5px 6px 3px 0;color:#3e6580;border-radius:18px;background:#e7f2fa}
.details{border:1px solid #d7e7f0;border-radius:17px;background:rgba(255,255,255,.94);padding:15px;margin:11px 0;box-shadow:0 3px 16px #b1c9d820}.details h3{margin:0 0 8px;font-size:16px}.details p{margin:0;line-height:1.55;white-space:pre-line;font-size:15px}.details.WARNING{border-left:5px solid #dfa64b;background:#fff9ef}.details.DANGER{border-left:5px solid #d75c6d;background:#fff4f4}.details.INFO{border-left:5px solid #6ca7d9}.details.ACTION{border-left:5px solid #3ca990}
.footerbar{position:fixed;bottom:0;left:0;right:0;background:#e8f4fbf5;backdrop-filter:blur(14px);border-top:1px solid #c3dce9;padding:7px 12px calc(7px + env(safe-area-inset-bottom));display:flex;justify-content:space-evenly;z-index:5;box-shadow:0 -3px 20px #acc9d338}.navbutton{border:0;background:none;min-width:80px;color:#667f90;font-size:12px;display:flex;align-items:center;flex-direction:column;gap:1px;padding:2px}.navbutton span:first-child{font-size:22px}.navbutton.active{color:#1778ac;font-weight:700}
.empty{color:#55778a;text-align:center;padding:38px 12px;font-size:15px}.subtle{font-size:13px;color:#526f85;line-height:1.4}.filterrow{display:flex;gap:10px;align-items:center}.filterrow .search{flex:1;min-width:0}.counter{white-space:nowrap;font-size:12px;color:#648297}.data-tag{font-size:12px;color:#52738a;border-radius:10px;background:#e7f1f8;padding:6px 10px}.meta-panel{font-size:12px;line-height:1.5;color:#496c83;padding:12px;border-radius:12px;background:#eaf5fc;margin:10px 0}.loading{padding:24px}.selector{padding:10px 12px;font-size:14px;background:#fff;border-radius:12px;border:1px solid #c8deec}
@media(min-width:650px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.tile{min-height:190px}.tile img{height:145px}.shell{padding:20px}.homebanner{height:240px}}@media(min-width:900px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr))}} 

/* Android source adapted 1:1 where image assets and data are available */
.protocolgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.protocard{min-width:0;background:#fff;border:1px solid #d5e8f2;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);cursor:pointer}.cardpic{position:relative;width:100%;height:116px;overflow:hidden;background:#e4f2f8}.cardpic img{width:100%;height:100%;object-fit:cover}.cardlabel{position:absolute;top:6px;left:6px;max-width:90%;border-radius:6px;padding:4px 6px;font-size:10px;font-weight:750;background:#173e60dc;color:white}.cardrow{display:flex;align-items:center;padding:7px 5px 8px 10px;min-height:66px}.cardname{flex:1;min-width:0;font-size:13px;line-height:17px;font-weight:730;color:#25465d}.cardrow .star{padding:5px}.chevron{color:#92aec0;font-size:22px}.detailhero{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border-radius:20px;padding:12px;box-shadow:var(--shadow);margin:10px 0}.detailimage{width:105px;max-width:32%;height:100px;object-fit:cover;border-radius:14px}.detailtitle{flex:1;min-width:0}.detailtitle h2{font-size:20px;line-height:1.22;margin:0 0 6px}.detailstep{display:flex;gap:10px;align-items:center;margin:0 0 10px}.detailstep h3{margin:0}.marker{display:inline-flex;width:29px;height:29px;border-radius:100px;background:#1378ad;color:#fff;font-size:13px;font-weight:bold;align-items:center;justify-content:center;flex-shrink:0}.reanimcard{border:1px solid #daecf3;border-radius:17px;background:#fff;padding:0 0 10px;overflow:hidden;box-shadow:var(--shadow);color:#174761;text-align:left}.reanimcard img{width:100%;height:145px;object-fit:cover;display:block}.reanimcard strong{font-size:15px;display:block;padding:7px 10px 0}.reanimcard small{display:block;font-size:11px;line-height:1.3;padding:4px 10px;color:#668192}.search-button{display:block;text-align:left;cursor:pointer;color:#627d8d}.counter{font-size:12px;color:#658398;margin:0 0 8px 5px}
.calc-form{padding:2px 0}.calc-panel{background:#fff;border:1px solid #d4e5ee;border-radius:16px;padding:12px;margin:13px 0;box-shadow:var(--shadow)}.calc-panel h3{font-size:17px;margin:0 0 12px}.field{display:block;margin:12px 0}.field span{display:block;margin:0 0 6px;font-size:14px;color:#274c66;font-weight:650}.field input,.field select{width:100%;font-size:16px;height:47px;border:1px solid #c4dce9;border-radius:12px;background:white;color:#1d3f54;padding:10px 12px}.field input:focus,.field select:focus{outline:2px solid #81bbe1;outline-offset:1px}.switchline{display:flex;align-items:center;gap:12px;margin:13px 0;padding:12px;border-radius:12px;background:#fff;border:1px solid #dceaf0;font-size:14px;line-height:1.4}.switchline input{width:20px;height:20px;flex-shrink:0;accent-color:#177cad}.bigscale{text-align:center;font-size:50px;color:#1565c0;font-weight:800}.range{width:100%;accent-color:#1565c0;margin:18px 0}.calc-answer{background:#e7f4fb;border:1px solid #b5dced;border-left:4px solid #1378ad;border-radius:13px;padding:13px;margin:12px 0;color:#174864;white-space:pre-wrap}.calc-answer strong{display:block;font-size:18px}.calc-answer p{font-size:14px;line-height:1.46;margin:6px 0 0}.rankinchoice{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid #e7eff3}.rankinchoice input{margin-top:4px;accent-color:#147cb6}.rankinchoice small{display:block;color:#557b91;margin-top:5px;line-height:1.4}.rankinchoice strong{font-size:14px}.calc-nac .calc-answer{background:#eefaf3;border-left-color:#36a077}.cardpic img,.reanimcard img{background:#dbeaf3}button:focus-visible,.protocard:focus-visible{outline:3px solid #307fb8;outline-offset:2px}
@media(min-width:650px){.protocolgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.cardpic{height:175px}.reanimcard img{height:180px}.cardname{font-size:15px}}
@media(min-width:920px){.protocolgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* СМП-V v0.4: complete tiles, faithful hero, ECG examples, PWA app install */
.homebanner{height:auto!important;max-height:none!important;width:100%;aspect-ratio:1060/536;display:block;object-fit:contain!important;object-position:center!important;background:#eaf7ff;border-radius:21px}
.tiles{align-items:stretch}
.tile{min-height:0!important;height:100%;padding:0!important;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;border-radius:18px}
.tile img{width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover!important;object-position:center;margin:0!important;display:block;flex-shrink:0}
.tile span{display:flex;align-items:center;justify-content:center;flex:1;min-height:48px;padding:8px 7px 10px;line-height:1.2;text-align:center;overflow-wrap:anywhere;font-size:clamp(12px,2.6vw,15px)}
@media(min-width:650px){.tile img{height:auto!important}}
@media(min-width:900px){.tile span{font-size:15px}}
#splashScreen{display:none;position:fixed;z-index:99;inset:0;background:#082a50;align-items:center;justify-content:center;overflow:hidden}
#splashScreen img{height:100%;width:100%;max-height:100%;max-width:100%;object-fit:contain}
html.show-splash #splashScreen{display:flex}
.ecg-block{margin:8px 0 16px;padding:11px;border:1px solid #c5dce8;border-radius:17px;background:#fff;box-shadow:var(--shadow)}
.ecg-block h3{margin:0 0 9px;font-size:16px;color:#17445d}
.ecg-block .ecg-image{width:100%;height:auto;display:block;object-fit:contain;border-radius:9px;border:1px solid #e5dbe0}
.ecg-hint{font-size:12px;line-height:1.42;color:#4c6980;margin:9px 0}
.ecg-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.ecg-open{display:inline-flex;background:#e5f4fc;border:1px solid #bcdaeb;border-radius:12px;padding:10px 13px;color:#145c83;font-size:13px;font-weight:700;text-decoration:none;min-height:42px;align-items:center}
.cardio-notice{margin:10px 0 12px;padding:9px 12px;font-size:11px;color:#806339;background:#fff7e9;border-left:3px solid #dfa64b;border-radius:10px;line-height:1.4}
.icd-summary{padding:7px 0 8px;font-size:13px;color:#456d82}
.icd-button{border:1px solid #cbdeed;border-radius:12px;background:white;color:#1e5b7a;padding:10px 12px;margin:5px 7px 5px 0;font-size:13px;cursor:pointer}
.icd-categories{display:flex;flex-wrap:wrap;margin:7px 0 12px}
.install-area{background:#fff;border:1px solid #c5e2ed;border-radius:14px;padding:10px 12px;margin:10px 0;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.install-area small{display:block;flex:1;min-width:190px;color:#4d7287;font-size:12px;line-height:1.5}
.install-btn{border:0;border-radius:12px;color:white;background:#1b77ad;padding:12px 16px;font-size:14px;font-weight:700}
.install-guide{border:1px solid #bad8e7;border-radius:15px;background:#f0faff;padding:15px;margin:15px 0;line-height:1.55;font-size:14px}
#installHelp{display:none}#installHelp.visible{display:block}
@media(max-width:370px){.tiles{gap:9px}.tile span{font-size:12px;min-height:54px}}
