/* TapMe — публичен сайт и профил */
:root{
  --bg:#f5f6fb;--card:#fff;--ink:#0f172a;--muted:#64748b;--line:#e4e7f1;--soft:#eef0f8;
  --brand:#4f46e5;--brand-ink:#fff;--cyan:#06b6d4;
  --gold:#f5b301;--gold-d:#b45309;--gold-bg:#fff8e1;
  --ok:#16a34a;--bad:#dc2626;--r:16px;--sh:0 1px 2px rgba(15,23,42,.05),0 6px 20px rgba(15,23,42,.06);
  --sh2:0 2px 4px rgba(15,23,42,.06),0 14px 34px rgba(15,23,42,.12);
  --accent:var(--brand);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#0b1020;--card:#131a30;--ink:#e8ecf8;--muted:#9aa6c8;--line:#232d4d;--soft:#1a2340;--gold-bg:#2a2208;--sh:0 1px 2px rgba(0,0,0,.4),0 6px 20px rgba(0,0,0,.25);--sh2:0 14px 34px rgba(0,0,0,.45)}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{line-height:1.2;margin:0}
.tm-i{flex:none;vertical-align:-.2em}
.tm-skip{position:absolute;left:-999px;top:0;background:#000;color:#fff;padding:8px 12px;z-index:100}
.tm-skip:focus{left:8px;top:8px}
.tm-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.tm-wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 20px}
.tm-sec{padding:44px 0}
.tm-h1{font-size:clamp(26px,4vw,38px);letter-spacing:-.02em;margin-bottom:18px}
.tm-more{text-align:center;margin:22px 0 0}.tm-more a{color:var(--brand);font-weight:600}

/* Хедър */
.tm-hd{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--line)}
.tm-hd-in{display:flex;align-items:center;gap:20px;height:64px}
.tm-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:21px;letter-spacing:-.02em}
.tm-logo b{color:var(--brand)}
.tm-nav{display:flex;align-items:center;gap:6px;flex:1}
.tm-nav>a{padding:8px 12px;border-radius:10px;font-weight:600;font-size:15px;color:var(--muted)}
.tm-nav>a:hover,.tm-nav>a.is-on{color:var(--ink);background:var(--soft)}
.tm-nav-r{margin-left:auto;display:flex;align-items:center;gap:10px}
.tm-lang{display:flex;background:var(--soft);border-radius:10px;padding:3px}
.tm-lang a{padding:3px 9px;border-radius:8px;font-size:12px;font-weight:700;color:var(--muted)}
.tm-lang a.is-on{background:var(--card);color:var(--ink);box-shadow:var(--sh)}
.tm-burger{display:none;margin-left:auto;background:none;border:0;color:var(--ink);padding:8px;border-radius:10px;cursor:pointer}

/* Бутони */
.tm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:12px;border:1px solid transparent;font:600 15px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;cursor:pointer;transition:transform .12s,box-shadow .12s,background .12s;white-space:nowrap}
.tm-btn:active{transform:translateY(1px)}
.tm-btn-sm{padding:8px 14px;font-size:14px;border-radius:10px}
.tm-btn-lg{padding:15px 28px;font-size:16px;border-radius:14px}
.tm-btn-block{width:100%}
.tm-btn-primary{background:var(--brand);color:var(--brand-ink);box-shadow:0 6px 16px color-mix(in srgb,var(--brand) 35%,transparent)}
.tm-btn-primary:hover{background:color-mix(in srgb,var(--brand) 88%,#000)}
.tm-btn-ghost{background:var(--card);color:var(--ink);border-color:var(--line)}
.tm-btn-ghost:hover{background:var(--soft)}
.tm-btn-light{background:#fff;color:#1e1b4b}
.tm-btn-light:hover{background:#eef2ff}
.tm-btn-gold{background:linear-gradient(135deg,#ffcf3f,#f5a300);color:#3b2600;box-shadow:0 6px 16px rgba(245,163,0,.35)}
.tm-btn-gold:hover{filter:brightness(1.05)}
.tm-btn-danger{background:#fff;color:var(--bad);border-color:#fecaca}
.tm-btn[disabled]{opacity:.5;cursor:not-allowed}

/* Hero */
.tm-hero{background:radial-gradient(1200px 500px at 85% -10%,rgba(6,182,212,.35),transparent 60%),radial-gradient(900px 500px at 0% 0%,rgba(99,102,241,.55),transparent 60%),#0b1020;color:#fff;padding:64px 0 54px}
.tm-hero-in{text-align:center}
.tm-eyebrow{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);padding:6px 14px;border-radius:99px;font-size:13px;font-weight:600}
.tm-hero h1{font-size:clamp(34px,6vw,60px);letter-spacing:-.03em;margin:20px 0 14px;font-weight:800}
.tm-hero h1 span{background:linear-gradient(90deg,#a5b4fc,#67e8f9);-webkit-background-clip:text;background-clip:text;color:transparent}
.tm-lead{max-width:640px;margin:0 auto 28px;font-size:clamp(16px,2vw,19px);color:#cbd5f5}
.tm-search{display:flex;gap:10px;max-width:760px;margin:0 auto;background:#fff;padding:8px;border-radius:18px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.tm-search-f{flex:1;display:flex;align-items:center;gap:10px;padding:0 14px;color:#64748b;min-width:0}
.tm-search-f input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:16px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#0f172a;padding:12px 0}
.tm-search-city{flex:.55;border-left:1px solid #e4e7f1}
.tm-hero-cta{display:flex;gap:12px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.tm-stats{list-style:none;display:flex;gap:10px 34px;justify-content:center;margin:34px 0 0;padding:0;color:#aab4dd;flex-wrap:wrap;font-size:14px}
.tm-stats b{display:block;font-size:26px;color:#fff;letter-spacing:-.02em;line-height:1.1}
.tm-stats li{text-align:center}

/* Секции */
.tm-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}
.tm-sec-h h2{font-size:clamp(22px,3vw,30px);letter-spacing:-.02em;margin-top:6px}
.tm-sec-h>a:not(.tm-btn){color:var(--brand);font-weight:600;display:inline-flex;gap:6px;align-items:center}
.tm-sec-sub{margin:6px 0 0;color:var(--muted)}
.tm-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 11px;border-radius:99px;background:var(--soft);color:var(--muted);font-size:12.5px;font-weight:700}
.tm-pill-vip{background:linear-gradient(135deg,#ffd75e,#f5a300);color:#3b2600}
.tm-pill-demo{background:#fee2e2;color:#991b1b;font-size:10.5px;padding:2px 8px;vertical-align:middle}
.tm-pill-open{background:#dcfce7;color:#166534}.tm-pill-closed{background:#fee2e2;color:#991b1b}
.tm-pill i{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}
.tm-grp{margin:18px 0 12px}

/* Категории */
.tm-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(210px,100%),1fr));gap:10px}
.tm-cat{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;transition:.15s}
.tm-cat:hover{border-color:var(--brand);box-shadow:var(--sh);transform:translateY(-1px)}
.tm-cat-i{width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand);display:grid;place-items:center;flex:none}
.tm-cat-n{font-weight:600;font-size:14.5px;line-height:1.25;flex:1}
.tm-cat-c{font-size:12px;color:var(--muted);background:var(--soft);padding:1px 8px;border-radius:99px}

/* VIP секция */
.tm-sec-vip{background:linear-gradient(180deg,var(--gold-bg),transparent);border-top:1px solid color-mix(in srgb,var(--gold) 35%,transparent);border-bottom:1px solid color-mix(in srgb,var(--gold) 25%,transparent)}
.tm-vip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:20px}
.tm-vip{position:relative;background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:0 0 0 2px #f5b301,0 10px 30px rgba(245,163,0,.18);display:flex;flex-direction:column;transition:.18s}
.tm-vip:hover{transform:translateY(-3px);box-shadow:var(--sh2)}
.tm-vip-cover{display:block;height:128px;background:linear-gradient(135deg,var(--accent),#0b1020) center/cover;position:relative}
.tm-vip-cover .tm-pill{position:absolute;top:12px;left:12px;box-shadow:0 4px 12px rgba(0,0,0,.25)}
.tm-vip-body{padding:0 18px 18px;margin-top:-34px;position:relative;display:flex;flex-direction:column;gap:4px;flex:1}
.tm-vip-body h3{font-size:19px;letter-spacing:-.01em;margin-top:6px}
.tm-vip-desc{margin:4px 0 0;color:var(--muted);font-size:14.5px}
.tm-vip-actions{display:flex;gap:8px;margin-top:auto;padding-top:12px;flex-wrap:wrap}
.tm-sub{color:var(--muted);font-size:14.5px;margin:0}
.tm-meta{color:var(--muted);font-size:13.5px;margin:0;display:flex;align-items:center;gap:5px;flex-wrap:wrap}

/* Безплатни — списък */
.tm-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:12px}
.tm-tile{min-width:0;display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px;transition:.15s}
.tm-tile:hover{border-color:color-mix(in srgb,var(--brand) 50%,var(--line));box-shadow:var(--sh)}
.tm-tile-main{display:flex;align-items:center;gap:14px;flex:1;min-width:0}
.tm-tile-body{display:flex;flex-direction:column;min-width:0;gap:1px}
.tm-tile-body strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-tile-body .tm-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13.5px}
.tm-tile-call{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--ok) 12%,transparent);color:var(--ok);flex:none}
.tm-tile-call:hover{background:var(--ok);color:#fff}
.tm-av{width:54px;height:54px;border-radius:14px;overflow:hidden;flex:none;background:var(--soft);display:grid;place-items:center;border:1px solid var(--line)}
.tm-av img{width:100%;height:100%;object-fit:cover}
.tm-av-i{color:#fff;font-weight:800;font-size:19px;border:0;letter-spacing:.02em}
.tm-av-lg{width:68px;height:68px;border-radius:18px;border:3px solid var(--card);box-shadow:var(--sh);font-size:23px}
.tm-av-xl{width:104px;height:104px;border-radius:26px;border:4px solid var(--card);box-shadow:var(--sh2);font-size:34px;background:var(--card)}

/* Как работи */
.tm-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.tm-step{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.tm-step span{width:36px;height:36px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:12px}
.tm-step h3{font-size:18px;margin-bottom:6px}.tm-step p{margin:0;color:var(--muted)}

/* Сравнение */
.tm-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:900px;margin:0 auto}
.tm-plan{position:relative;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;gap:14px}
.tm-plan h3{font-size:20px}
.tm-plan ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;flex:1}
.tm-plan li{display:flex;gap:10px;align-items:flex-start;font-size:15px}
.tm-plan li .tm-i{color:var(--ok);margin-top:2px}
.tm-price b{font-size:36px;letter-spacing:-.03em}.tm-price span{color:var(--muted);margin-left:6px;font-size:14px}
.tm-plan-vip{border:2px solid var(--gold);background:linear-gradient(180deg,var(--gold-bg),var(--card) 40%);box-shadow:0 12px 40px rgba(245,163,0,.18)}
.tm-plan-vip li .tm-i{color:var(--gold-d)}
.tm-ribbon{position:absolute;top:-13px;right:22px;background:linear-gradient(135deg,#ffd75e,#f5a300);color:#3b2600;font-weight:800;font-size:12px;padding:4px 12px;border-radius:99px;display:inline-flex;gap:5px;align-items:center}
.tm-plans{display:grid;gap:6px;border-top:1px dashed var(--line);padding-top:12px}
.tm-plan-row{display:flex;justify-content:space-between;font-size:15px}.tm-plan-row em{font-style:normal;font-size:11.5px;background:var(--ok);color:#fff;padding:1px 8px;border-radius:99px;margin-left:6px}
.tm-paynote{display:flex;gap:8px;justify-content:center;align-items:center;color:var(--muted);font-size:14px;margin-top:20px;text-align:center}

/* Празно */
.tm-empty{text-align:center;padding:42px 20px;background:var(--card);border:1px dashed var(--line);border-radius:var(--r);color:var(--muted)}
.tm-empty h3{color:var(--ink);margin:10px 0 4px}.tm-empty p{margin:0 0 16px}

/* Филтри */
.tm-filters{display:flex;gap:10px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;margin-bottom:12px}
.tm-filters .tm-search-f{border:0;min-width:200px}.tm-filters .tm-search-f input{color:var(--ink);padding:9px 0}
.tm-filters select,.tm-filters input[type=text]{padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:15px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;min-width:140px}
.tm-count{color:var(--muted);font-size:14px;margin:6px 0 0}
.tm-pager{display:flex;justify-content:center;gap:6px;margin-top:28px}
.tm-pager a{min-width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:var(--card);border:1px solid var(--line);font-weight:600}
.tm-pager a.is-on{background:var(--brand);color:#fff;border-color:var(--brand)}

/* Визитка */
.tm-cardpage{background:var(--bg)}
.tm-cp-cover{height:200px;background:linear-gradient(135deg,var(--accent),#0b1020 130%) center/cover}
.is-vip .tm-cp-cover{height:260px}
.tm-cp-wrap{max-width:760px;margin:-56px auto 0;padding:0 16px 40px;position:relative}
.tm-cp-head{display:flex;gap:18px;align-items:flex-end;margin-bottom:18px}
.tm-cp-title{padding-bottom:4px;min-width:0}
.tm-cp-title h1{font-size:clamp(24px,4vw,32px);letter-spacing:-.02em;margin:8px 0 2px;text-shadow:none}
.tm-cp-sub{margin:0;color:var(--muted);font-size:16px}.tm-cp-co{margin:4px 0 0;color:var(--muted);font-size:14px;display:flex;gap:6px;align-items:center}
.tm-cp-badges{display:flex;gap:6px;flex-wrap:wrap}
.tm-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;margin:14px 0}
.tm-act{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:14px;background:var(--card);border:1px solid var(--line);font:600 13.5px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);cursor:pointer;transition:.15s}
.tm-act:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}
.tm-act .tm-i{color:var(--accent)}
.tm-act-main{background:var(--accent);color:#fff;border-color:var(--accent)}.tm-act-main .tm-i{color:#fff}.tm-act-main:hover{color:#fff;filter:brightness(1.08)}
.tm-actions-2{grid-template-columns:repeat(3,1fr);margin-top:0}
.tm-act-s{flex-direction:row;justify-content:center;padding:11px 8px;font-size:13px}
.tm-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin-top:14px}
.tm-box h2{font-size:17px;margin-bottom:12px;display:flex;gap:8px;align-items:center}
.tm-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tm-two .tm-box{margin-top:14px}
.tm-info{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.tm-info li{display:flex;gap:12px;align-items:flex-start;word-break:break-word}.tm-info .tm-i{color:var(--accent);margin-top:2px}
.tm-info a:hover{color:var(--accent);text-decoration:underline}
.tm-soc{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.tm-soc a{width:40px;height:40px;border-radius:12px;background:var(--soft);display:grid;place-items:center}.tm-soc a:hover{background:var(--accent);color:#fff}
.tm-hours{width:100%;border-collapse:collapse;font-size:14.5px}.tm-hours th{text-align:left;font-weight:500;color:var(--muted);padding:6px 0}.tm-hours td{text-align:right;padding:6px 0;font-weight:600}
.tm-hours tr.is-today th,.tm-hours tr.is-today td{color:var(--accent);font-weight:800}
.tm-svc{list-style:none;margin:0;padding:0}.tm-svc li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line)}.tm-svc li:last-child{border:0}.tm-svc b{color:var(--accent);white-space:nowrap}
.tm-gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.tm-gal a{display:block;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--soft)}.tm-gal img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.tm-gal a:hover img{transform:scale(1.06)}
.tm-cp-ft{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:26px}
.tm-cta-mini{display:inline-flex;gap:8px;align-items:center;padding:10px 16px;border-radius:99px;background:var(--card);border:1px solid var(--line);font-size:13.5px;font-weight:600;color:var(--brand)}
.tm-link{background:none;border:0;color:var(--muted);font-size:13px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.tm-prose{max-width:760px}.tm-prose p{margin:0 0 14px}
.tm-contact-list{list-style:none;padding:0;display:grid;gap:10px}.tm-contact-list li{display:flex;gap:10px;align-items:center}

/* Модал */
.tm-modal{position:fixed;inset:0;background:rgba(8,12,28,.6);z-index:200;display:none;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(4px)}
.tm-modal.is-open{display:flex}
.tm-modal-in{background:var(--card);border-radius:20px;padding:24px;max-width:380px;width:100%;text-align:center;position:relative}
.tm-modal-in h3{margin-bottom:12px}.tm-modal-x{position:absolute;right:10px;top:10px;background:none;border:0;color:var(--muted);cursor:pointer;padding:8px}
.tm-qr{background:#fff;padding:14px;border-radius:14px;display:inline-block;margin-bottom:12px}.tm-qr img,.tm-qr canvas{display:block;width:240px;height:240px}
.tm-modal textarea,.tm-modal select{width:100%;margin-bottom:10px}
.tm-lightbox img{max-width:min(92vw,1100px);max-height:88vh;border-radius:12px}

/* Форми */
.tm-auth{max-width:440px;margin:40px auto;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:var(--sh)}
.tm-auth h1{font-size:26px;margin-bottom:6px}.tm-auth .tm-sub{margin-bottom:20px}
.tm-form{display:grid;gap:16px}
.tm-fld{display:grid;gap:6px;min-width:0}
.tm-fld>span,.tm-lbl{font-weight:600;font-size:14px}
.tm-fld small,.tm-hint{color:var(--muted);font-size:12.5px;font-weight:400}
.tm-fld input,.tm-fld select,.tm-fld textarea,.tm-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:16px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;outline:0;transition:.12s}
.tm-fld input:focus,.tm-fld select:focus,.tm-fld textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 16%,transparent)}
.tm-fld textarea{min-height:110px;resize:vertical}
.tm-fld input[type=file]{padding:9px}
.tm-fld input:disabled,.tm-fld textarea:disabled,.tm-fld select:disabled{background:var(--soft);color:var(--muted)}
.tm-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;cursor:pointer}.tm-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--brand)}
.tm-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tm-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tm-foot-links{text-align:center;margin-top:18px;font-size:14px;color:var(--muted)}.tm-foot-links a{color:var(--brand);font-weight:600}
.tm-flashes{max-width:760px;margin:14px auto 0;padding:0 16px;display:grid;gap:8px}
.tm-flash{padding:12px 16px;border-radius:12px;font-weight:500;background:#dcfce7;color:#14532d;border:1px solid #bbf7d0}
.tm-flash-err{background:#fee2e2;color:#7f1d1d;border-color:#fecaca}

/* Профил: списък визитки */
.tm-acc{padding:34px 0}
.tm-acc-h{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.tm-mycards{display:grid;gap:14px}
.tm-my{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px;flex-wrap:wrap}
.tm-my.is-vip{border:2px solid var(--gold);background:linear-gradient(90deg,var(--gold-bg),var(--card) 40%)}
.tm-my-main{flex:1;min-width:200px}.tm-my-main h3{font-size:18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tm-my-stats{display:flex;gap:16px;color:var(--muted);font-size:13.5px;margin-top:6px;flex-wrap:wrap}.tm-my-stats b{color:var(--ink)}
.tm-my-act{display:flex;gap:8px;flex-wrap:wrap}
.tm-tabs{display:flex;gap:6px;overflow-x:auto;margin-bottom:16px;border-bottom:1px solid var(--line)}
.tm-tabs button{background:none;border:0;padding:12px 16px;font:600 15px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;white-space:nowrap}
.tm-tabs button.is-on{color:var(--brand);border-color:var(--brand)}
.tm-pane{display:none}.tm-pane.is-on{display:block}
.tm-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.tm-lock{display:inline-flex;gap:6px;align-items:center;background:var(--gold-bg);color:var(--gold-d);border:1px solid color-mix(in srgb,var(--gold) 50%,transparent);padding:6px 12px;border-radius:99px;font-size:13px;font-weight:700}
.tm-vipbox{border:2px dashed var(--gold);background:var(--gold-bg);border-radius:var(--r);padding:16px;margin-bottom:16px;display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.tm-hours-ed{display:grid;gap:8px}.tm-hours-ed>div{display:grid;grid-template-columns:120px 1fr 1fr auto auto;gap:8px;align-items:center}
.tm-hours-ed input[type=time]{padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:15px system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.tm-prev{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tm-prev img{width:72px;height:72px;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.tm-gal-ed{display:flex;gap:10px;flex-wrap:wrap}.tm-gal-ed label{position:relative;cursor:pointer}.tm-gal-ed input{position:absolute;top:4px;left:4px}
.tm-svc-ed{display:grid;gap:8px}.tm-svc-ed>div{display:grid;grid-template-columns:1fr 150px;gap:8px}
.tm-methods{display:grid;gap:10px}
.tm-method{display:flex;gap:14px;align-items:center;padding:14px 16px;border:2px solid var(--line);border-radius:14px;cursor:pointer;background:var(--card)}
.tm-method:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 6%,var(--card))}
.tm-method input{accent-color:var(--brand);width:18px;height:18px}.tm-method .tm-i{color:var(--brand)}
.tm-method b{display:block}.tm-method small{color:var(--muted)}
.tm-plan-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.tm-pp{border:2px solid var(--line);border-radius:14px;padding:16px;cursor:pointer;background:var(--card);text-align:center;position:relative}
.tm-pp:has(input:checked){border-color:var(--gold);background:var(--gold-bg)}
.tm-pp input{position:absolute;opacity:0}.tm-pp b{font-size:24px;display:block;margin-top:4px}.tm-pp em{font-style:normal;font-size:11.5px;background:var(--ok);color:#fff;padding:1px 8px;border-radius:99px}
.tm-bank{background:var(--soft);border-radius:14px;padding:16px;display:grid;gap:8px;font-size:15px}.tm-bank div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.tm-bank code{background:var(--card);padding:3px 8px;border-radius:8px;font-weight:700;user-select:all}

/* Футър */
.tm-ft{background:#0b1020;color:#b6bfdc;margin-top:40px;padding-top:44px}
.tm-ft-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding-bottom:30px}
.tm-ft .tm-logo{color:#fff}.tm-ft p{max-width:340px;font-size:14.5px}
.tm-ft h4{color:#fff;font-size:14px;margin-bottom:12px;text-transform:uppercase;letter-spacing:.06em}
.tm-ft-in a:not(.tm-logo){display:block;padding:4px 0;font-size:14.5px}.tm-ft-in a:hover{color:#fff}
.tm-ft-bot{display:flex;justify-content:space-between;border-top:1px solid #1d2646;padding-top:16px;padding-bottom:22px;font-size:13px}
.tm-pay-ico{display:flex;gap:10px;color:#8791b8}

@media (max-width:820px){
  .tm-burger{display:block}
  .tm-nav{display:none;position:absolute;left:0;right:0;top:64px;background:var(--card);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:12px 16px 18px;gap:4px;box-shadow:var(--sh2)}
  .tm-nav.is-open{display:flex}
  .tm-nav-r{margin:10px 0 0;flex-wrap:wrap}
  .tm-compare,.tm-two,.tm-row2{grid-template-columns:1fr}
  .tm-row3{grid-template-columns:1fr}
  .tm-search{flex-direction:column;padding:10px}
  .tm-search-city{border-left:0;border-top:1px solid #e4e7f1;flex:1}
  .tm-search .tm-btn{width:100%}
  .tm-ft-in{grid-template-columns:1fr}
  .tm-cp-head{flex-direction:column;align-items:flex-start}
  .tm-hours-ed>div{grid-template-columns:1fr 1fr}.tm-hours-ed>div>b{grid-column:1/-1}
  .tm-list,.tm-vip-grid{grid-template-columns:1fr}
  .tm-sec{padding:32px 0}
}
@media print{.tm-hd,.tm-ft,.tm-actions,.tm-cp-ft{display:none}}

/* QR панел */
.tm-qrbox{display:grid;grid-template-columns:auto 1fr;grid-template-areas:'qr head' 'qr body';gap:6px 22px;align-items:start;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 9%,var(--card)),var(--card));border:1px solid color-mix(in srgb,var(--brand) 30%,var(--line));border-radius:20px;padding:22px;margin-bottom:18px}
.tm-qrbox.is-new{border:2px solid var(--ok);box-shadow:0 10px 34px rgba(22,163,74,.15)}
.tm-qrbox h2{font-size:21px;margin-bottom:6px}.tm-qrbox p{margin:0 0 14px;color:var(--muted)}
.tm-qr-head{grid-area:head;align-self:end}.tm-qr-body{min-width:0}.tm-qr-body{grid-area:body}
.tm-qr-c{grid-area:qr;background:#fff;padding:12px;border-radius:16px;box-shadow:var(--sh);line-height:0}
.tm-qr-c canvas{width:200px;height:200px;display:block}
.tm-qr-btns{display:flex;gap:8px;flex-wrap:wrap}
.tm-qrlink{display:inline-block;overflow-wrap:anywhere;background:var(--soft);padding:4px 10px;border-radius:8px;font-size:13px;word-break:break-all;margin-bottom:12px}
.tm-poster{max-width:560px;margin:24px auto;background:#fff;color:#0f172a;border-radius:24px;padding:36px 28px;text-align:center;box-shadow:var(--sh2)}
.tm-poster h1{font-size:30px;margin:14px 0 4px}.tm-poster .tm-qr-c{display:inline-block;box-shadow:none;border:1px solid #e4e7f1;margin:18px 0}
.tm-poster .tm-qr-c canvas{width:min(78vw,380px);height:min(78vw,380px)}
.tm-poster-note{font-size:20px;font-weight:700}.tm-poster small{color:#64748b;display:block;margin-top:6px}
/* Лента за мобилна визитка */
.tm-bar{display:none}
@media (max-width:820px){
  .tm-qrbox{grid-template-columns:1fr;grid-template-areas:'head' 'qr' 'body';justify-items:center;text-align:center;padding:18px;gap:10px}
  .tm-qr-btns{justify-content:center}
  .tm-bar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--card) 94%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
  .tm-bar .tm-btn{flex:1;padding:14px 10px;font-size:15px;background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:none}
  .tm-bar .tm-btn-ghost{background:var(--card);color:var(--ink);border-color:var(--line)}
  .tm-cardpage{padding-bottom:78px}
  .tm-cp-cover{height:150px}.is-vip .tm-cp-cover{height:190px}
  .tm-cp-wrap{margin-top:-46px;padding:0 14px 30px}
  .tm-av-xl{width:88px;height:88px;border-radius:22px;font-size:28px}
  .tm-hero{padding:44px 0 38px}.tm-hero h1{margin-top:16px}
  .tm-hero-cta .tm-btn{flex:1 1 100%}
  .tm-stats{gap:10px 22px}
  .tm-wrap{padding:0 16px}
  .tm-sec{padding:30px 0}
  .tm-filters>*{flex:1 1 100%}
  .tm-act{padding:14px 8px}
  .tm-actions-2{grid-template-columns:repeat(3,1fr);gap:8px}.tm-act-s{flex-direction:column;gap:4px;padding:10px 4px;font-size:12px}
  .tm-my{padding:14px}.tm-my-act{width:100%}.tm-my-act .tm-btn{flex:1}
  .tm-vipbox{flex-direction:column;align-items:flex-start}
  .tm-tabs button{padding:12px 13px}
  .tm-panel{padding:16px}
  .tm-auth{margin:18px auto;padding:22px}
  .tm-btn,.tm-nav>a{min-height:44px}
  .tm-hd-in{height:60px}.tm-nav{top:60px}
  .tm-method{padding:12px}
  input,select,textarea{font-size:16px!important}
}
@media print{
  body{background:#fff}.tm-poster{box-shadow:none;margin:0 auto}.tm-noprint,.tm-bar{display:none!important}
}
