:root{--green:#1d6b37;--ink:#161d18;--muted:#5c685f;--line:#e7ede8}
*{box-sizing:border-box}
html{width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none;-webkit-text-size-adjust:100%;touch-action:pan-y;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body{margin:0;width:100%;max-width:100%;overflow-x:clip;overscroll-behavior-x:none;background:#fff;color:var(--ink);font-family:'Inter',-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,sans-serif;font-feature-settings:'cv02','cv03','cv04','cv11';-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;touch-action:pan-y}
.wrap{width:100%;max-width:680px;margin:0 auto;padding:0 15px;min-width:0}
header{border-bottom:1px solid var(--line);background:#fff;width:100%}
body.has-q header{position:sticky;top:0;z-index:25;padding:9px 0}
body.home header{border-bottom:0;padding:16px 0}
.headrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
body.has-q .headrow{flex-wrap:nowrap;gap:8px}
.logo{font-size:24px;font-weight:800;letter-spacing:-1.5px;color:#246736;text-decoration:none;flex-shrink:0;line-height:1}
.logo img{display:block;height:24px;width:auto}
body.has-q .logo img{height:20px}                 /* липкая шапка со строкой поиска — знак ниже строки */
.logo b{color:#bf2d32}
body.home header form{display:none}
form{display:flex;gap:7px;flex:1 1 auto;min-width:0}
input{flex:1;min-width:0;border:1.5px solid #cdd2cd;border-radius:24px;padding:10px 15px;font-size:16px;background:#fff;color:var(--ink);touch-action:manipulation}
input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #eaf3ec}
button{border:0;background:var(--green);color:#fff;border-radius:24px;padding:10px 15px;font-size:15px;font-weight:600;cursor:pointer;flex-shrink:0;white-space:nowrap;touch-action:manipulation}
main,#res,.grid,.card,.admain,.ntxt{max-width:100%;min-width:0}
h1.home{font-size:44px;line-height:1.08;font-weight:900;letter-spacing:-2.2px;color:#246736;-webkit-text-stroke:.022em currentcolor;margin:0 0 9px;text-align:center}
/* главная: содержимое держится по центру экрана, а не липнет к верху */
body.home{min-height:100vh;display:flex;flex-direction:column}
body.home .wrap{display:flex;flex-direction:column;flex:1;width:100%}
body.home footer{margin-top:auto;padding:18px 0 24px;border-top:1px solid var(--line);line-height:1.9;font-size:13.5px}
body.home .flinks a{display:inline-block;padding:6px 1px}
body.home .nwrap{width:100%;max-width:520px;margin:6px auto 0;text-align:left}
body.home .nhead{margin-top:26px}
.svcbox{border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14.5px}
.svcbox .st{font-weight:700}
.svcbox .st.on{color:#216c39}
.svcbox .st.off{color:#9c2f2f}
.svcbox a{font-size:13.5px;padding:9px 14px;border-radius:11px;background:#e9f3eb;color:#216c39;text-decoration:none;font-weight:700}
.svcbox a.off{background:#fdecea;color:#9c2f2f}
.install{margin:16px 0 8px;text-align:center}
.ibtn{background:#216c39;color:#fff;border:0;border-radius:14px;padding:11px 16px;font:inherit;font-size:14.5px;font-weight:700}
.ihint{display:block;font-size:12px;color:#778079;margin-top:8px;line-height:1.6;padding:0 10px}
/* --- новый кабинет (раунд 31) --- */
.cabtop{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 12px}
.cabtop .logo{font-size:21px}
.cabtop .logo img{height:24px}
.cabtop span{font-size:13px;color:var(--muted)}
.cabme{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:16px;padding:13px 14px}
.cav{width:44px;height:44px;border-radius:14px;background:#216c39;color:#fff;font-weight:700;font-size:19px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.cname{font-size:16px;font-weight:700;line-height:1.25}
.cmail{font-size:12.5px;color:var(--muted);word-break:break-all}
.cbadge{margin-left:auto;background:#e9f3eb;color:#216c39;font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px;white-space:nowrap}
.csub .cnt{font-size:12.5px;color:var(--muted);font-weight:400;margin-left:8px}
.ritem{border:1px solid var(--line);border-radius:16px;padding:13px 14px;margin:0 0 10px}
.rhead{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.rhead>div:nth-child(2){min-width:0}
.rfav{width:22px;height:22px;border-radius:6px;background:#e9f3eb;color:#216c39;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.rname{font-size:15px;font-weight:700;line-height:1.3;word-break:break-word}
.rdom{font-size:12.5px;color:var(--muted);word-break:break-all}
.rpill{font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap;margin-left:auto;max-width:100%}
.rpill.ok{background:#e9f3eb;color:#216c39}
.rpill.wait{background:#fdf3e2;color:#8a6320}
.rpill.no{background:#fdecea;color:#9c2f2f}
.rstats{display:flex;gap:14px;flex-wrap:wrap;margin:9px 0 0;font-size:12.5px;color:#5f6a62}
.rstats b{color:var(--ink)}
.ractions{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.ractions a{font-size:13px;padding:8px 13px;border-radius:11px;background:#e9f3eb;color:#216c39;text-decoration:none;font-weight:700}
.ractions a.g{background:#fff;border:1px solid #cfe0d4;font-weight:400}
[hidden]{display:none !important}   /* без этого hidden не работал: .nbtn/.ibtn перебивали его своим display */
.nbtn{display:inline-block;margin:2px 0 4px;border:1.5px solid #cfe0d4;background:#fff;color:#216c39;
      border-radius:12px;padding:9px 14px;font-size:13.5px;font-weight:700;cursor:pointer}
.nbtn:active{background:#eef6f0}
.nbtn.g{background:#216c39;border-color:#216c39;color:#fff}
.nbtn.g:active{background:#1a5b2f}
/* уведомления: одна тихая строка в блоке «Связь» (раунд 47.7) */
.secbox{margin:22px 0 6px;border:1px solid #cfe0d4;border-radius:14px;background:#fff;overflow:hidden}
.secbox>summary{display:flex;align-items:center;gap:9px;padding:15px 16px;cursor:pointer;list-style:none;min-height:44px;-webkit-tap-highlight-color:transparent}
.secbox>summary::-webkit-details-marker{display:none}
.secbox>summary b{color:#216c39;font-size:16px}
.secsub{color:#8a978c;font-size:12.5px;margin-left:2px}
.chev{margin-left:auto;color:#8aa294;display:flex;transition:transform .22s ease}
.secbox[open] .chev{transform:rotate(180deg)}
.secbox[open]>summary{border-bottom:1px solid #e8ece8}
.secbody{padding:10px 16px 18px;animation:secslide .24s ease-out}
/* Р.94: складной кабинет — карточки-конверты в том же стиле, что «Безопасность» */
details.ritem>summary{cursor:pointer;list-style:none;-webkit-tap-highlight-color:transparent}
details.ritem>summary::-webkit-details-marker{display:none}
details.ritem[open]>summary{margin:-13px -14px 9px;padding:13px 14px;border-bottom:1px solid var(--line);border-radius:16px 16px 0 0;background:#fbfcfb}
details.ritem .chev{margin-left:6px;color:#8aa294;display:flex;transition:transform .22s ease;flex:0 0 auto}
details.ritem[open] .chev{transform:rotate(180deg)}
details.ritem .rbody{animation:secslide .24s ease-out}
.sic{width:30px;height:30px;border-radius:9px;background:#eef5ef;display:flex;align-items:center;justify-content:center;font-size:15px;flex:0 0 auto}
.secsub.red{color:#9c2f2f;font-weight:600}
@keyframes secslide{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.nrow{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0 2px;color:#6f7a70}
.nrow .nic{display:flex;width:18px;height:18px;flex:0 0 auto;align-items:center;justify-content:center}
.nrow .ntt{font-size:13px;color:#5d6a60}
.nrow.on .ntt{color:#216c39;font-weight:700}
.nrow.no .ntt{color:#8a6320;font-weight:700}
.nrow .nhow{flex:1 1 100%;font-size:12px;color:#8a6320;margin-top:1px}
.nbtn.sm{padding:5px 11px;font-size:12.5px}
.empty{border:1px dashed #cdd2cd;border-radius:16px;padding:16px;text-align:center;margin:0 0 12px}
.empty .et{font-size:15px;font-weight:700;margin-bottom:4px}
.empty .es{font-size:13px;color:var(--muted);margin-bottom:12px}
.empty .ibtn{display:inline-block;text-decoration:none}
.cform{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.cform input,.cform select,.cform textarea{font:inherit;font-size:14.5px;padding:11px 12px;border:1px solid #d8ded9;border-radius:12px;width:100%;background:#fff;color:var(--ink)}
.cform textarea{grid-column:1 / -1;min-height:78px;resize:vertical;line-height:1.45;box-sizing:border-box}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:2px solid #eaf3ec;border-color:var(--green)}
.cform button{grid-column:1 / -1;background:#216c39;color:#fff;border:0;border-radius:12px;padding:12px;font:inherit;font-size:15px;font-weight:700}
body.hasnav{padding-bottom:74px}
.bnav{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:center;gap:34px;padding:8px 0 10px;z-index:20}
.bnav a{font-size:11.5px;color:var(--muted);text-decoration:none;text-align:center;min-width:62px}
.bnav a.on{color:#216c39;font-weight:700}
.bnav .bi{display:block;font-size:17px;line-height:1.25}
.nbadge{display:inline-block;min-width:17px;height:17px;line-height:17px;background:#bf2d32;color:#fff;border-radius:9px;
        font-size:10.5px;font-weight:700;padding:0 5px;margin-left:6px;text-align:center;vertical-align:1px}
.fdot{position:fixed;right:12px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:22;width:40px;height:40px;
      line-height:40px;border-radius:50%;background:#bf2d32;color:#fff;font-size:16px;font-weight:700;text-align:center;
      text-decoration:none;border:2px solid #fff;box-shadow:0 3px 12px rgba(0,0,0,.32)}
.fdot:active{background:#a5262b}
.bchk{display:inline-flex;align-items:center;gap:8px}
.adm .bchk input{width:auto;margin:0}
@media(max-height:720px){.fstrip{margin-top:10px;font-size:13.5px}.nrow{padding:9px 0}.nttl{font-size:15px}body.home .nhead{margin-top:16px;padding-top:12px}}
.homewrap{flex:1;display:flex;flex-direction:column;justify-content:center;padding:10px 0 20px}
h1.home b{color:#bf2d32}
.sub{font-size:15px;color:#7a7b78;line-height:1.5;margin:0 0 18px;text-align:center}
.qwrap{position:relative;flex:1;min-width:0;display:flex;align-items:center}
.qwrap input{width:100%;padding-right:44px}
.mic{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;background:transparent;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.mic svg{width:20px;height:20px;fill:#5d6c60}
.mic:hover{background:#f0f5f1}
.mic.rec{background:#e7f3ea}
.mic.rec svg{fill:#1d7a3c}
form.big .mic{width:42px;height:42px}
form.big .mic svg{width:22px;height:22px}
.qsug{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 28px rgba(20,40,25,.13);overflow:hidden;z-index:40}
.qsug a{display:block;padding:11px 15px;font-size:15px;color:var(--ink);text-decoration:none;border-top:1px solid #f1f4f1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qsug a:first-child{border-top:0}
.qsug a:hover,.qsug a.sel{background:#f2f7f3}
.qsug a b{color:#1d7a3c;font-weight:700}
.qsug .qnone{padding:11px 15px;font-size:14.5px;color:var(--muted)}
.fixedbar{margin:0 0 14px;font-size:14.5px;line-height:1.55;color:#5c6a5e;background:#fffdf3;border:1px solid #f1e7ca;border-radius:12px;padding:11px 14px}
.fixedbar b{color:var(--ink)}
.fixedbar a{color:#1d7a3c;text-decoration:none;border-bottom:1px dotted #9dc4a8}
.also{margin:28px 0 0;border-top:1px solid var(--line);padding-top:16px}
.also .ttl{font-size:15px;font-weight:700;color:#246736;margin:0 0 10px}
.also a{display:inline-block;border:1px solid #d8e3d9;border-radius:20px;padding:8px 14px;font-size:14px;color:#1d7a3c;text-decoration:none;margin:0 8px 8px 0}
.also a:hover{background:#f4f9f5}
form.big{min-width:0;margin:0 0 14px}
.hint{font-size:14px;color:var(--muted);line-height:1.6;margin:14px 0 0;text-align:center}
.quick{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:18px 0 0}
.quick a{border:1px solid #d8e3d9;border-radius:20px;padding:9px 14px;font-size:14px;color:var(--green);text-decoration:none}
.sec{font-size:13px;color:var(--muted);margin:24px 0 0;border-top:1px solid var(--line);padding-top:14px}
.card{padding:18px 0;border-bottom:1px solid var(--line)}
.card.up{padding:15px 14px;margin:0 0 10px;border:2px solid #74c394;border-radius:16px;
         background:rgba(116,195,148,.13);box-shadow:0 1px 6px rgba(33,108,57,.10)}
.card.up a.t{color:#125c2e}
.card.up .host{color:#4c6a55}
.card.up:active{border-color:#1f8a4a;background:rgba(116,195,148,.20)}
/* плашка услуги в кабинете: имя, цена, пояснение */
.plate{border:1.5px solid #cfe0d4;border-radius:14px;padding:11px 13px;background:#f7fbf8;margin:0 0 12px}
.plate .prow{display:flex;align-items:baseline;gap:10px}
.plate .pn{font-size:14.5px;font-weight:700}
.plate .pp{margin-left:auto;font-size:17px;font-weight:700;color:#216c39;white-space:nowrap}
.plate .pp small{font-size:11px;font-weight:400;color:var(--muted)}
.plate .pn2{display:block;font-size:12px;color:#8a6320;margin-top:2px}
.plate .pd{font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:6px}
.socrow{font-size:13px;color:#6f7a70;margin:6px 0 0;overflow-wrap:anywhere;word-break:break-word}
.soclink{color:var(--green);text-decoration:none}
.host{font-size:12px;color:#6f7a70;margin-bottom:5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0;overflow-wrap:anywhere;word-break:break-word}
.fav{width:18px;height:18px;min-width:18px;max-width:18px;border-radius:4px;flex:0 0 auto;background:#f1f4f1;object-fit:contain}
a.t{font-size:17.5px;color:var(--green);text-decoration:none;display:block;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.snip{font-size:14px;line-height:1.58;color:#5a635b;margin:6px 0 0;overflow-wrap:anywhere;word-break:break-word}
.price{font-size:17.5px;font-weight:700;color:#1d241f}
.when{font-size:12px;color:var(--muted);margin-left:8px}
.meta{font-size:12px;color:#6f7a70;margin-top:6px;overflow-wrap:anywhere;word-break:break-word}
.sempty{padding:30px 0;color:#778079;line-height:1.65}
.resmiss{margin:18px 0 8px;padding:24px 22px;border:1.5px solid #cfe3d5;border-radius:18px;background:linear-gradient(180deg,#f6fbf7 0%,#ffffff 100%);box-shadow:0 8px 26px rgba(33,108,57,.07);overflow-wrap:anywhere;word-break:break-word}
.resmiss h2{font-size:20px;line-height:1.38;font-weight:700;color:var(--ink);margin:0 0 10px;letter-spacing:-.3px}
.resmiss-u{color:var(--green);background:#eaf5ee;padding:2px 8px;border-radius:8px;font-weight:700}
.resmiss p{font-size:15px;line-height:1.6;color:#4e5850;margin:0 0 18px}
.resmiss-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 22px;border-radius:12px;background:var(--green);color:#fff !important;font-size:15px;font-weight:600;text-decoration:none;box-shadow:0 4px 14px rgba(33,108,57,.22);transition:transform .12s ease,opacity .12s ease;max-width:100%;text-align:center}
.resmiss-btn:active{transform:scale(.98);opacity:.92}
.skelbox{text-align:center;padding:38px 8px 44px}
.skelbox .spin{width:34px;height:34px;margin:0 auto 16px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:bysspin .85s linear infinite}
@keyframes bysspin{to{transform:rotate(360deg)}}
.skelbox .skelt{font-size:17px;font-weight:600;color:var(--ink)}
.skelbox .skelp{font-size:13px;color:var(--muted);margin-top:6px}
.skelbox .skela{display:inline-block;margin-top:16px;font-size:13px;color:var(--green)}
.sempty h2{font-size:22px;font-weight:600;color:var(--ink);margin:0 0 10px}
.sempty a{color:var(--green)}
.note{font-size:13px;color:var(--muted);margin:26px 0 0;border-top:1px solid var(--line);padding-top:14px;line-height:1.6}
footer{padding:26px 0 40px;color:#888e88;font-size:12px;text-align:center;line-height:2}
footer a{color:#216c39;text-decoration:none;margin:0 7px}
@media(min-width:700px){
 .wrap{max-width:760px}
 .logo{font-size:30px}
 .logo img{height:28px}
 body.has-q .logo img{height:24px}
 h1.home{font-size:54px}
 body.home footer{padding:26px 0 30px;font-size:13px}
 body.home .flinks a{margin:0 12px}
 @media(min-width:1100px){.wrap{max-width:820px}}
 .sub{font-size:16px}
 a.t{font-size:19px}
 .card{padding:20px 0}
}
.ptitle{font-size:30px;font-weight:800;letter-spacing:-1.2px;margin:22px 0 10px}
.plead{font-size:16px;color:#5a635b;line-height:1.6;margin:0 0 18px}
.ptext{font-size:15px;color:#515b53;line-height:1.7;margin:0 0 14px}
.psub{font-size:17px;font-weight:700;color:#246736;margin:22px 0 8px;letter-spacing:-.4px}
.plist{margin:0 0 16px;padding:0;list-style:none}
.plist li{font-size:15px;color:#515b53;line-height:1.6;margin:0 0 9px;padding-left:16px;position:relative}
.plist li:before{content:"•";position:absolute;left:0;color:#216c39;font-weight:700}
.pform{display:grid;gap:14px;margin:18px 0 0}
.pform label{font-size:13px;color:#6f7a70;display:grid;gap:6px}
.pform input,.pform select,.pform textarea{width:100%;border:1.5px solid #cdd2cd;border-radius:12px;padding:12px 14px;font-size:16px;font-family:inherit;background:#fff;color:var(--ink)}
.pform textarea{resize:vertical}
.pform button{justify-self:start;padding:13px 22px}
.csub{font-size:19px;font-weight:700;color:#246736;margin:26px 0 8px;letter-spacing:-.4px}
.cbox{border:1px solid var(--line);border-radius:14px;padding:16px 16px 18px;margin:0 0 14px;background:#fbfcfb}
.cbox .pform{margin-top:10px}
.who{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 4px}
.who a{color:#6f7a70;font-size:13.5px}
.bitem{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:0 0 12px}
.bitem.off{background:#fbfbfb}
.bhead{font-size:15px;font-weight:700;word-break:break-all;line-height:1.35}
.bmeta{font-size:13px;color:#6f7a70;margin:7px 0 0;line-height:1.6}
.blist{margin:8px 0 0;padding:0;list-style:none}
.blist li{font-size:14px;color:#515b53;line-height:1.8;padding-left:14px;position:relative}
.blist li:before{content:"•";position:absolute;left:2px;color:#216c39;font-weight:700}
.bacts{margin:11px 0 0;font-size:13.5px}
.bacts a{color:#216c39;text-decoration:none;margin-right:14px;white-space:nowrap}
.pill{display:inline-block;border-radius:20px;padding:3px 11px;font-size:12px;background:#eaf3ec;color:#1e6b38;font-weight:700}
.pill.off{background:#f2f2f0;color:#7c867d}
.pill.wait{background:#fdf3e2;color:#8a6320}
.nhead{font-size:13px;color:#7c867d;margin:30px 0 6px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.nhead span{font-size:12px;color:#9aa39b}
.nrow{display:flex;gap:12px;align-items:flex-start;text-decoration:none;padding:11px 0;border-bottom:1px solid #f2f4f2}
.ntxt{flex:1;min-width:0}
.nthumb{flex:0 0 auto;width:88px;height:64px;border-radius:10px;overflow:hidden;background:#f1f4f1;display:block}
.adwrap{display:flex;gap:12px;align-items:flex-start;min-width:0;max-width:100%}
.admain{flex:1 1 auto;min-width:0}
.card.ad .nthumb{width:84px;height:84px;border-radius:12px;border:1px solid #e5ece6;background:#f4f7f4;position:relative;margin-top:2px;flex:0 0 84px}
@media(min-width:700px){.card.ad .nthumb{width:96px;height:96px;flex:0 0 96px}}
.kbadge{display:inline-flex;align-items:center;gap:4px;padding:1.5px 8px;border-radius:99px;font-size:11.5px;font-weight:600;vertical-align:middle;line-height:1.45}
.kbadge.disc{background:#eaf4ee;color:#1e6b38}
.kbadge.hint{background:#f7f3e6;color:#7a6020}
.nthumb img{width:100%;height:100%;object-fit:cover;display:block}
.nsrc{display:block;font-size:11.5px;color:#9aa39b;margin:0 0 3px}
.nttl{display:block;font-size:15.5px;color:#246736;line-height:1.4}
.nrow:hover .nttl{text-decoration:underline}
.nall{display:inline-block;margin:14px 0 0;font-size:14px;color:#216c39;text-decoration:none}
.newsbox{max-width:560px;margin:0 auto;text-align:left}
.fstrip{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin:14px 0 0;
 font-size:14px;color:#7c867d;line-height:1.8;text-align:center}
.fstrip b{color:#222a25;font-weight:700}
.fstrip .fweather{color:#5f6a62}
.fstrip .fweather b{font-size:15.5px}
.fstrip .fweather .wico{font-size:16.5px}
.fstrip .ffx b{color:#246736}
body.home .fstrip{margin-top:18px}
.err{background:#fdecea;color:#9c2f2f;border-radius:12px;padding:14px 16px;font-size:15px;margin:0 0 16px}
.warn{background:#fdf3e2;color:#8a6320;border-radius:12px;padding:14px 16px;font-size:14.5px;margin:0 0 16px;line-height:1.6}
.probe{border:1px dashed #cdd2cd;border-radius:12px;padding:14px 16px;margin:0 0 18px;background:#fcfdfc}
.probe .pform{margin:0}
.probe .pform label{flex:1 1 150px}
.chatbox{border:1px solid var(--line);border-radius:14px;padding:6px 14px;background:#fbfcfb;max-height:340px;overflow:auto}
.cmsg{border-left:3px solid #dfe6e0;padding:2px 0 2px 11px;margin:11px 0;font-size:14.5px;line-height:1.55;color:#3c453e}
.cmsg b{display:block;font-size:11.5px;color:#9aa39b;font-weight:600;margin:0 0 2px}
.cmsg.mine{border-left-color:#216c39;color:#1d2a22}
/* ---------------- админка: экраны, карточки, нижнее меню (раунд 45) ----------------
   Телефон — главный экран: цифры карточками, таблиц в 6 колонок нет, кнопки под палец. */
body.admin{padding-bottom:78px}
body.admin main{padding-bottom:0}
.awho{display:flex;align-items:center;gap:10px;margin:8px 0 10px}
.awho h1{font-size:25px;line-height:1.15;margin:0;letter-spacing:-.7px}
.awho .agear{margin-left:auto;font-size:19px;line-height:1;text-decoration:none;opacity:.6}
.awho .aback{font-size:13.5px;color:var(--green);text-decoration:none;font-weight:700}
.aatt{background:#fdf3e3;border:1px solid #f0dcb8;color:#6b4b13;border-radius:14px;padding:11px 13px;font-size:14px;line-height:1.5;margin:0 0 12px}
.aatt a{color:#6b4b13;font-weight:700}
.aatt.good{background:#e9f3eb;border-color:#cfe3d4;color:#1e6b38}
.akpi{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 12px}
.ak{flex:1 1 128px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 12px;min-width:0}
.ak .v{font-size:23px;font-weight:800;letter-spacing:-.9px;line-height:1.1}
.ak .l{color:var(--muted);font-size:12.5px;margin-top:3px;line-height:1.35}
.ak .d{font-size:11.5px;font-weight:700;margin-top:3px}
.ak .d.up{color:#216c39}.ak .d.down{color:#bf2d32}.ak .d.flat{color:var(--muted)}
.acard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 14px;margin:0 0 12px}
.acard h3{margin:0 0 8px;font-size:15px;font-weight:800}
.acard h3 .hint{font-weight:400;color:var(--muted);font-size:12.5px}
.acard.rq{margin:10px 0 0;background:#fbfcfb}
.arow{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f3f6f3;font-size:14px}
.arow:last-child{border-bottom:0}
.achips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}
.achips .achip{background:#f4f7f4;border:1px solid #e0e8e1;border-radius:10px;padding:5px 10px;
  font-size:13px;color:#4c6a55;text-decoration:none}
.achips .achip.on{background:#216c39;border-color:#216c39;color:#fff;font-weight:700}
.asearch{display:flex;gap:8px;margin:0 0 10px;flex-wrap:wrap}
.asearch input{flex:1 1 120px;min-width:0;border:1.5px solid #cdd2cd;border-radius:12px;
  padding:11px 13px;font:inherit;font-size:15px;background:#fff;color:var(--ink)}
.asearch button{flex:0 0 auto;background:#eef6f0;border:1.5px solid #cfe0d4;border-radius:12px;padding:0 16px;
  font:inherit;font-size:14px;font-weight:700;color:#216c39;cursor:pointer}
.apager{display:flex;align-items:center;gap:10px;justify-content:space-between;margin:12px 0 2px}
.apager .apinfo{font-size:13px;color:#6f7a70}
.pform label.asw{display:grid;grid-template-columns:22px 1fr;gap:9px;align-items:start;
  padding:7px 0;border-bottom:1px dashed #eef2ee;font-size:14px;color:var(--ink)}
.pform label.asw input{width:18px;height:18px;padding:0;border:0;border-radius:0;accent-color:#216c39;margin-top:2px}
.pform label.asw:last-child{border-bottom:0}
.asw input{width:18px;height:18px;accent-color:#216c39;margin-top:1px;flex:0 0 auto}
.pform label.asw small{display:block;color:#6f7a70;font-size:12px;margin-top:2px;font-weight:400}
.arng{margin:9px 0 4px}
.arng label{display:flex;justify-content:space-between;font-size:13px;color:#3c4a40;margin-bottom:3px}
.arng label b{color:#216c39}
.arng input[type=range]{width:100%;accent-color:#216c39}
h4{font-size:14px;color:#2c3a30}
.arow .nm{flex:1;min-width:0;line-height:1.35;word-break:break-word}
.arow .nm small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.arow .n{font-weight:800;font-variant-numeric:tabular-nums}
.arow .nm.muted{color:var(--muted);font-size:13px}
.abar{width:66px;flex:0 0 66px;background:#f1f4f1;border-radius:4px;height:7px;overflow:hidden}
.abar i{display:block;height:7px;background:#216c39;border-radius:4px}
.abtns{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.abtn{display:inline-block;border-radius:12px;padding:10px 14px;font-size:13.5px;font-weight:700;text-decoration:none;background:#e9f3eb;color:#216c39}
.abtn.main{background:#216c39;color:#fff}
.abtn.off{background:#fbecec;color:#bf2d32}
.abtn.s{background:#f2f4f2;color:#222a25}
.abtns.sm{gap:6px;margin-top:7px}
.abtns.sm .abtn{padding:7px 10px;font-size:12.5px;border-radius:10px}
.lvurl{color:#216c39;font-weight:700;text-decoration:none;display:inline-block;max-width:100%;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
.lvurl:active{opacity:.65}
.adl{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 0}
/* выбор городов и карточки админки */
.cbx{margin:0 0 8px}
.cbx summary{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;
      padding:9px 12px;font-weight:700;cursor:pointer;background:#fff;list-style:none;max-width:100%}
.cbx summary::-webkit-details-marker{display:none}
.cbx summary .cbs{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:64vw}
.cbx summary .arr{color:var(--muted);font-weight:400}
.cbx[open] summary .arr::before{content:"▴"}
.cbx:not([open]) summary .arr::before{content:"▾"}
.cbwrap{margin-top:8px}
.cbfind{margin:0 0 8px}
.ocities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:216px;overflow:auto;
      border:1px solid var(--line);border-radius:12px;padding:8px;background:#fbfdfb;margin:0 0 8px}
.pform label.ochk{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;
      padding:6px 8px;font-size:13px;background:#fff;cursor:pointer;width:auto;min-width:0}
.pform label.ochk span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pform label.ochk input{width:auto;height:auto;margin:0;padding:0;border:0;accent-color:#216c39;flex:none}
.pform label.ochk:has(input:checked){border-color:#216c39;background:#eef7f1;font-weight:700}
@media(max-width:430px){.ocities{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ocard{flex-wrap:wrap;align-items:flex-start}
.oacts{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}
.oacts .abtn{padding:7px 11px;font-size:12.5px}
@media(max-width:520px){.oacts{margin-left:0;width:100%}}
.adl .anote{margin:0;flex:1 1 220px}
.rqhead{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:15px}
.rqmeta{color:var(--muted);font-size:12.5px;margin-top:4px;line-height:1.55;word-break:break-word}
.rqmeta a{color:#216c39;text-decoration:none}
.anote{font-size:12.5px;color:var(--muted);line-height:1.55;margin:8px 0 0}
.asw{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:14px}
.asw .st{font-weight:700}
.asw .st.on{color:#216c39}.asw .st.off{color:#9c2f2f}
.asw .abtn{margin-left:auto}
.blist{margin:10px 0 4px;max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:4px 10px}
.brow{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid #f5f7f5;font-size:13.5px}
.brow:last-child{border-bottom:0}
.brow input{width:18px;height:18px;flex:0 0 auto}
.brow .nm small{display:block;color:var(--muted);font-size:11.5px}
.achips{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 12px}
.achip{border:1px solid var(--line);background:#fff;border-radius:20px;padding:8px 13px;font-size:13.5px;color:var(--ink);text-decoration:none;white-space:nowrap}
.achip.on{background:#216c39;border-color:#216c39;color:#fff;font-weight:700}
.asvg{display:block;width:100%;height:104px}
.alabels{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-top:5px}
.aday{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-bottom:1px solid #f3f6f3;font-size:13.5px}
.aday:last-child{border-bottom:0}
.aday .dt{width:62px;color:var(--muted);flex:0 0 62px}
.aday .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3c463d}
.aday .n{font-weight:800;font-variant-numeric:tabular-nums;min-width:34px;text-align:right}
.anav{position:fixed;left:0;right:0;bottom:0;margin:0 auto;max-width:680px;background:#fff;border-top:1px solid var(--line);display:flex;z-index:30;padding-bottom:env(safe-area-inset-bottom)}
.anav a{flex:1;text-align:center;padding:8px 2px 7px;font-size:10.5px;color:var(--muted);text-decoration:none;position:relative;line-height:1.25}
.anav a b{display:block;font-size:19px;font-weight:400;line-height:1.25}
.anav a.on{color:#216c39;font-weight:700}
.anav a .dot{position:absolute;top:4px;left:50%;margin-left:5px;background:#bf2d32;color:#fff;border-radius:9px;font-size:9.5px;font-weight:700;padding:1px 5px}
@media(min-width:700px){.ak{flex:1 1 150px}.ak .v{font-size:26px}.anav a{font-size:11.5px}.aatt{font-size:14.5px}}
.adm{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0 0}
.adm th,.adm td{text-align:left;border-bottom:1px solid var(--line);padding:9px 6px;vertical-align:top}
.adm th{font-size:12px;color:#7c867d;font-weight:600}
.adm td a{color:#216c39;text-decoration:none;margin-right:8px;white-space:nowrap}
.ok{background:#e9f3eb;color:#216c39;border-radius:12px;padding:14px 16px;font-size:15px;margin:0 0 16px}
.pnote{font-size:12px;color:#7c867d;line-height:1.6;margin:16px 0 0}
.morebox{margin:18px 0 0;text-align:center}
.morebox a{display:inline-block;border:1.5px solid #cdd2cd;border-radius:22px;padding:11px 22px;color:#216c39;text-decoration:none;font-size:15px}

@media(min-width:1020px){
 .wrap{max-width:980px}
 .grid{display:grid;grid-template-columns:1fr 1fr;gap:0 34px;align-items:start}
 .grid .card{padding:20px 0}
 h1.home{font-size:62px}
 main{padding-bottom:20px}
}
/* Р.63: праздничная картинка в шапке. Место слева пустует и никак не выделяется, когда её нет. */
.doodwrap{margin-left:auto;position:relative;display:inline-flex;align-items:center;justify-content:flex-end;min-width:0}
.dood{display:block;height:44px;width:auto;max-width:46vw;-webkit-user-select:none;user-select:none}
.dood.shadow{filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.10))}
.dood.big{height:64px}
@media(min-width:560px){.dood.big{height:72px}}
.dood.max{height:84px}
@media(min-width:560px){.dood.max{height:96px}}
.doodbtn{border:0;background:none;padding:0;margin:0;cursor:pointer;line-height:0;border-radius:10px}
.doodbtn:focus-visible{outline:3px solid #24673666}
.sway{animation:bys-sway 4.2s ease-in-out infinite;transform-origin:50% 92%}
@keyframes bys-sway{0%,100%{transform:rotate(-2deg) translateY(0)}50%{transform:rotate(2deg) translateY(-3px)}}
.dood-snow{position:absolute;inset:-4px 0 -10px 0;overflow:hidden;pointer-events:none}
.dood-snow i{position:absolute;top:-6px;width:5px;height:5px;border-radius:50%;background:#cfe3ff;opacity:.9;animation:bys-fall 7s linear infinite}
@keyframes bys-fall{0%{transform:translateY(-8px)}100%{transform:translateY(96px)}}
.dood-snow i:nth-child(1){left:52%;animation-duration:6.4s}
.dood-snow i:nth-child(2){left:64%;animation-duration:8s;animation-delay:1.1s}
.dood-snow i:nth-child(3){left:76%;animation-duration:7.2s;animation-delay:2.3s}
.dood-snow i:nth-child(4){left:88%;animation-duration:8.6s;animation-delay:.5s}
.dood-snow i:nth-child(5){left:97%;animation-duration:7.8s;animation-delay:3.1s}
@media (prefers-reduced-motion: reduce){.sway,.dood-snow i{animation:none}}
.dood-bub{position:absolute;right:6px;top:calc(100% + 6px);z-index:6;background:#1f4d2e;color:#fff;font-size:12.5px;
 padding:7px 11px;border-radius:10px;box-shadow:0 3px 10px rgba(0,0,0,.18);display:none;white-space:nowrap;max-width:74vw;overflow:hidden;text-overflow:ellipsis}
.doodwrap.on .dood-bub{display:block}
/* ================ КРИСТАЛЛ 4K: СКВОЗНАЯ ЧЁТКОСТЬ ВСЕХ ЭКРАНОВ ================ */
h1.home{font-weight:900;letter-spacing:-.042em;color:#195e2e;-webkit-text-stroke:.022em currentcolor;text-shadow:0 1px 0 rgba(255,255,255,.8)}
.logo{font-weight:800;letter-spacing:-.04em;color:#195e2e}
.sub{color:#4f5b52;font-weight:450;letter-spacing:-.008em}
body.home{background:radial-gradient(ellipse 95% 260px at 50% -40px,rgba(33,108,57,.075),transparent 72%),#ffffff}
body.has-q header{background:rgba(255,255,255,.88);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-bottom:1px solid rgba(20,48,28,.08);box-shadow:0 4px 20px rgba(15,35,20,.04)}
/* Монолитная ювелирная капсула поиска (только поисковые строки — анкеты не трогает!) */
form[role="search"],form.big{position:relative;gap:0;align-items:center;background:#fff;border:1px solid rgba(22,52,31,.16);border-radius:999px;padding:4px 5px 4px 18px;box-shadow:0 2px 6px rgba(15,38,22,.045),0 12px 32px rgba(18,54,29,.075);transition:border-color .18s ease,box-shadow .18s ease}
form[role="search"]:focus-within,form.big:focus-within{border-color:#1d7438;box-shadow:0 4px 14px rgba(25,94,46,.10),0 0 0 4px rgba(33,108,57,.11)}
form[role="search"] input,form.big input{border:0;box-shadow:none;background:transparent;padding:10px 40px 10px 0;font-size:16px;font-weight:450;color:#141b16}
form.big{padding:5px 6px 5px 20px}
form.big input{padding:12px 42px 12px 0;font-size:16.5px}
form[role="search"]>button,form.big>button{background:linear-gradient(180deg,#257a40 0%,#1b6131 100%);border-radius:999px;padding:10px 20px;font-size:14.5px;font-weight:600;letter-spacing:-.01em;box-shadow:0 2px 8px rgba(27,97,49,.26),inset 0 1px 0 rgba(255,255,255,.22)}
form.big>button{padding:11.5px 22px}
form[role="search"] .mic,form.big .mic{right:4px}
/* Пилюли подсказок, погоды и курсов */
.quick a,.also a{background:#fff;border:1px solid rgba(24,58,34,.13);color:#195e2e;font-weight:550;font-size:13.5px;padding:8px 15px;border-radius:999px;box-shadow:0 1px 3px rgba(15,35,20,.04)}
.quick a:hover,.also a:hover{background:#f3f9f5;border-color:rgba(25,94,46,.28)}
.fstrip{display:inline-flex;align-self:center;background:#f6faf7;border:1px solid rgba(25,94,46,.10);border-radius:999px;padding:6px 16px;color:#48564b;font-size:13.5px}
/* Выдача, новости и карточки: Retina-оправа иконок и контрастная типографика */
.card{padding:19px 2px;border-bottom:1px solid #edf1ee}
.card.up{padding:16px 15px;border:1.5px solid #5bb87d;border-radius:18px;background:linear-gradient(180deg,#f3fbf5 0%,#ffffff 70%);box-shadow:0 4px 18px rgba(33,108,57,.09)}
.fav{width:24px;height:24px;min-width:24px;max-width:24px;padding:3px;border-radius:7px;background:#f3f7f4;border:1px solid rgba(20,48,28,.09);box-shadow:0 1px 2px rgba(0,0,0,.03)}
.host{font-size:12.5px;font-weight:500;color:#465449;margin-bottom:6px;gap:8px}
a.t{font-size:18px;font-weight:650;letter-spacing:-.018em;line-height:1.32;color:#16592b}
@media(min-width:700px){a.t{font-size:19.5px}}
.snip{font-size:14.2px;line-height:1.56;color:#2b342d;margin-top:6px}
.price{font-weight:750;letter-spacing:-.02em;color:#111813;background:#eef7f0;padding:2px 9px;border-radius:8px;font-size:15.5px}
.nthumb{border-radius:12px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08),0 2px 8px rgba(0,0,0,.05)}
.nttl{font-weight:560;letter-spacing:-.012em;color:#18231b}
.nsrc{font-weight:600;color:#236c39;font-size:11.5px}
/* Страницы, Кабинет, Анкеты и вся Админка в едином Кристалле 4K */
.ptitle{letter-spacing:-.035em;color:#162219}
.pform input:not([type=checkbox]):not([type=radio]),.pform select,.pform textarea,.cform input:not([type=checkbox]):not([type=radio]),.cform select,.cform textarea,.asearch input{border:1px solid #ced9d0;border-radius:12px;background:#fff;color:#161d18;box-shadow:0 1px 2px rgba(15,35,20,.03);transition:border-color .16s ease,box-shadow .16s ease}
.pform input:not([type=checkbox]):not([type=radio]):focus,.pform select:focus,.pform textarea:focus,.cform input:not([type=checkbox]):not([type=radio]):focus,.cform select:focus,.cform textarea:focus,.asearch input:focus{outline:none;border-color:#1d7438;box-shadow:0 0 0 3.5px rgba(33,108,57,.12)}
.pform button,.cform button,.ibtn{background:linear-gradient(180deg,#257a40 0%,#1b6131 100%);border-radius:12px;font-weight:650;letter-spacing:-.01em;box-shadow:0 2px 8px rgba(27,97,49,.22),inset 0 1px 0 rgba(255,255,255,.22)}
/* 26.10: кнопки-кнопки (не ссылки) внутри форм получают тёмный градиент выше — текст только белый, иначе тёмное по тёмному (нашлась пустая кнопка «Сохранить» у курса BYN) */
.pform button.abtn,.pform button.abtn.s,.pform button.abtn.off{color:#fff}
.cabme,.ritem,.secbox,.cbox,.bitem,.acard,.ak,.svcbox,.plan{border-color:rgba(20,48,28,.10);box-shadow:0 1px 3px rgba(15,35,20,.025),0 6px 18px rgba(15,38,22,.035)}
.ak .v,.rstats b,.price{font-variant-numeric:tabular-nums}
.bnav{background:rgba(255,255,255,.90);backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);border-top:1px solid rgba(20,48,28,.09)}
