/* CliXoft AI-демо: спільна база. Тема компанії-клієнта задається змінними в CSS демо. */
:root{
  --bg:#FFFFFF;--bg2:#F5F8FD;--card:#FFFFFF;--card2:#F1F4F9;--inset:#F7F9FC;--line:#E3E8EF;--line2:#CFD7E3;
  --t:#0F172A;--t2:#475569;--t3:#5B6678;--ink:#0F172A;
  --ac:#2563EB;--ac2:#3B82F6;--ac-t:#1D4ED8;--ac-ink:#FFFFFF;
  --blue:#1D4ED8;--red:#C42B2B;--green:#16803C;--amb:#B45309;--star:#F5A70A;
  --ac-soft:color-mix(in srgb,var(--ac) 8%,var(--card));--ac-line:color-mix(in srgb,var(--ac) 32%,var(--card));
  --sh:0 1px 2px rgba(15,23,42,.05),0 8px 24px rgba(15,23,42,.06);
  --gold:var(--ac-t);--r:20px;--r2:14px;--font:Manrope,system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--t);font:500 16px/1.55 var(--font);overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;color:inherit}
button{cursor:pointer;border:0;background:none}
svg.i{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.wrap{max-width:1220px;margin:0 auto;padding:0 24px}

/* тонка нейтральна шапка CliXoft */
.hdr{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid #E5E7EB;color:#111827}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;height:48px}
.by{font-size:13px;font-weight:600;color:#4B5563;white-space:nowrap}.by b{color:#111827;font-weight:800}
.by:hover b{text-decoration:underline}
.btn-hd{display:inline-flex;align-items:center;font-size:13px;font-weight:700;color:#fff;background:#111827;border-radius:99px;padding:7px 14px;white-space:nowrap;transition:background .2s}
.btn-hd:hover{background:#374151}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;color:var(--ac-ink);background:var(--ac);border-radius:99px;padding:14px 26px;transition:transform .2s,box-shadow .2s,opacity .2s,background .2s;white-space:nowrap}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--ac) 30%,transparent)}
.btn:disabled{opacity:.55;cursor:default;transform:none;box-shadow:none}
.btn-sm{padding:10px 18px;font-size:14px}
.btn-gh{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;color:var(--t);border:1px solid var(--line2);border-radius:99px;padding:9px 16px;background:var(--card);transition:border-color .2s,background .2s}
.btn-gh:hover{border-color:var(--ac);background:var(--ac-soft)}
.btn-gh svg.i{width:16px;height:16px}

/* плашка */
.note{border-bottom:1px solid var(--line);background:var(--bg2)}
.note .wrap{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:8px;padding-bottom:8px;font-size:13px;color:var(--t2);text-align:center}
.note svg.i{width:16px;height:16px;color:var(--ac-t)}

/* компанія-клієнт */
.co{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.co-m{width:44px;height:44px;flex:none;display:block}
.co-m svg{width:100%;height:100%;display:block}
.co b{display:block;font-size:19px;font-weight:800;letter-spacing:-.01em;line-height:1.15}
.co small{display:block;font-size:13px;color:var(--t3);font-weight:600}
.co-s{display:inline-flex;align-items:center;gap:7px}
.co-s svg{width:18px;height:18px;flex:none}

/* hero */
.hero{padding:52px 0 28px;position:relative;isolation:isolate}
.hero::before{content:'';position:absolute;inset:0 0 auto;height:520px;background:radial-gradient(50% 70% at 20% 0%,color-mix(in srgb,var(--ac) 9%,transparent),transparent 70%),radial-gradient(30% 50% at 88% 15%,color-mix(in srgb,var(--ac2) 8%,transparent),transparent 70%);pointer-events:none;z-index:-1}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.14em;color:var(--ac-t)}
.kicker svg.i{width:16px;height:16px}
h1{font-size:clamp(32px,4.2vw,54px);line-height:1.08;font-weight:800;letter-spacing:-.025em;margin:14px 0 18px;max-width:900px}
h1 em{font-style:normal;color:var(--ac-t)}
.sub{font-size:clamp(16px,1.6vw,19px);color:var(--t2);max-width:860px}
.sub .was{color:var(--t3);font-weight:700}.sub .now{color:var(--t);font-weight:700}
.sub .arr{color:var(--ac-t);font-weight:800;padding:0 4px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}
.hero-cta small{color:var(--t3);font-size:14px}
.hero-g{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:48px;align-items:center}
.hv{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 24px 60px rgba(15,23,42,.10),0 2px 6px rgba(15,23,42,.04)}
.hv-h{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--t2);padding:2px 4px 12px}
.hv-h svg.i{width:16px;height:16px;color:var(--ac-t)}
.hv-h .live{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:12px;color:var(--green)}
.hv-h .live::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 color-mix(in srgb,var(--green) 55%,transparent);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 7px color-mix(in srgb,var(--green) 0%,transparent)}100%{box-shadow:0 0 0 0 transparent}}
.hv-r{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;background:var(--inset);border:1px solid var(--line);opacity:0;animation:rv .5s ease forwards}
.hv-r+.hv-r{margin-top:8px}
.hv-r:nth-child(2){animation-delay:.15s}.hv-r:nth-child(3){animation-delay:.35s}.hv-r:nth-child(4){animation-delay:.55s}.hv-r:nth-child(5){animation-delay:.75s}
.hv-r .ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ac-soft);color:var(--ac-t);flex:none}
.hv-r .ic svg.i{width:17px;height:17px}
.hv-r .tx{min-width:0;flex:1}
.hv-r b{display:block;font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hv-r span.s{display:block;font-size:12px;color:var(--t3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hv-r .chip{font-size:11.5px;padding:3px 8px}
.hv-f{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--t3);padding:12px 4px 0}
.hv-f svg.i{width:15px;height:15px;color:var(--ac-t)}

/* секції */
.sec{padding:72px 0}
.sec-h{margin-bottom:30px;max-width:780px}
.sec-h .kicker{font-size:12px}
h2{font-size:clamp(26px,3vw,38px);line-height:1.15;font-weight:800;letter-spacing:-.02em;margin-top:10px}
.sec-h p{color:var(--t2);margin-top:12px}

/* робоча зона */
.demo{padding-top:36px;padding-bottom:56px;background:var(--bg2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wz{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:20px;align-items:start}
.pnl{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:24px;min-width:0;box-shadow:var(--sh)}
.pnl-h{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;margin-bottom:16px}
.pnl-h .n{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;background:var(--ac);color:var(--ac-ink);flex:none}
.pnl-h .r{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--t3);text-align:right}
.lbl{display:block;font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin:18px 0 8px}
.ex{display:grid;gap:8px}
.ex-b{display:flex;align-items:center;gap:12px;text-align:left;padding:11px 13px;border-radius:14px;border:1px solid var(--line);background:var(--card);transition:border-color .2s,background .2s,box-shadow .2s;width:100%}
.ex.lock{pointer-events:none;opacity:.6}
.ex-b:hover{border-color:var(--line2);background:var(--inset)}
.ex-b.on{border-color:var(--ac);background:var(--ac-soft);box-shadow:0 0 0 1px var(--ac) inset}
.ex-b .ic{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--ac-soft);color:var(--ac-t);flex:none}
.ex-b.on .ic{background:var(--ac);color:var(--ac-ink)}
.ex-b .ic svg.i{width:18px;height:18px}
.ex-b b{display:block;font-size:14.5px;font-weight:700;line-height:1.3}
.ex-b span{display:block;font-size:12.5px;color:var(--t3);line-height:1.35;margin-top:2px}
.src{min-height:120px;max-height:300px;overflow:auto;padding:14px 16px;border-radius:12px;border:1px solid var(--line2);background:var(--inset);font-size:15px;line-height:1.6;color:var(--t);outline:none;white-space:pre-wrap;word-break:break-word;transition:border-color .2s,box-shadow .2s}
.src:focus{border-color:var(--ac);box-shadow:0 0 0 3px color-mix(in srgb,var(--ac) 18%,transparent)}
.hint{font-size:12.5px;color:var(--t3);margin-top:8px;display:flex;gap:6px;align-items:flex-start}
.hint svg.i{width:14px;height:14px;margin-top:3px}
.inp,.sel{width:100%;padding:11px 14px;border-radius:12px;border:1px solid var(--line2);background:var(--card);outline:none;font-size:15px;transition:border-color .2s,box-shadow .2s}
.inp:focus,.sel:focus{border-color:var(--ac);box-shadow:0 0 0 3px color-mix(in srgb,var(--ac) 18%,transparent)}
.sel{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%2364748B' stroke-width='2'%3E%3Cpath d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
.sel option{background:#fff;color:#0F172A}
.run{width:100%;margin-top:18px;padding:16px 24px;font-size:16.5px}
.run svg.i{width:19px;height:19px}

mark.hl{background:color-mix(in srgb,var(--ac) 16%,transparent);color:var(--t);border-radius:4px;padding:0 2px;box-shadow:inset 0 -2px 0 var(--ac);animation:hlin .6s ease both}
mark.hl.b{background:color-mix(in srgb,var(--blue) 14%,transparent);box-shadow:inset 0 -2px 0 var(--blue)}
mark.hl.r{background:color-mix(in srgb,var(--red) 13%,transparent);box-shadow:inset 0 -2px 0 var(--red)}
@keyframes hlin{from{background:color-mix(in srgb,var(--ac) 40%,transparent)}}

/* кроки AI */
.steps{display:grid;gap:4px;list-style:none}
.step{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:8px 6px;border-radius:12px;transition:opacity .3s,background .3s}
.step .si{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line2);color:var(--t3);background:var(--card);position:relative;transition:all .3s}
.step .si svg.i{width:16px;height:16px}
.step b{display:block;font-size:14.5px;font-weight:700;line-height:1.35;padding-top:6px}
.step small{display:block;font-size:13px;color:var(--t3);line-height:1.45;margin-top:2px;min-height:0}
.step.wait{opacity:.45}
.step.act{background:var(--ac-soft)}
.step.act .si{color:var(--ac-t);border-color:transparent}
.step.act .si::after{content:'';position:absolute;inset:-1px;border-radius:50%;border:2px solid transparent;border-top-color:var(--ac);border-right-color:var(--ac);animation:spin .8s linear infinite}
.step.done .si{color:var(--ac-ink);background:var(--ac);border-color:transparent}
.step.done small{color:var(--t2)}
.step.skip .si{color:var(--t3)}
.steps.fin{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;cursor:pointer}
.steps.fin .step{grid-template-columns:24px 1fr;gap:8px;align-items:center;padding:7px 9px;background:var(--inset);border:1px solid var(--line);border-radius:11px}
.steps.fin .si{width:24px;height:24px}.steps.fin .si svg.i{width:13px;height:13px}
.steps.fin b{padding-top:0;font-size:12.5px;line-height:1.3}
.steps.fin small{display:none}
.steps-t{display:none;font-size:12px;color:var(--t3);margin:8px 2px 0;cursor:pointer}
.steps.fin+.steps-t{display:block}
.steps-t:hover{color:var(--ac-t)}
@keyframes spin{to{transform:rotate(360deg)}}
.dots::after{content:'';animation:dots 1.2s steps(4) infinite}
@keyframes dots{0%{content:''}25%{content:'.'}50%{content:'..'}75%{content:'...'}}

.idle{border:1px dashed var(--line2);border-radius:var(--r2);padding:28px 20px;text-align:center;color:var(--t3);font-size:14.5px;background:var(--inset)}
.idle svg.i{width:30px;height:30px;color:var(--ac-t);margin:0 auto 10px;display:block;stroke-width:1.5}
.res{margin-top:18px}
.res:empty{display:none}
.rv{opacity:0;transform:translateY(8px);animation:rv .5s ease forwards;animation-delay:var(--d,0ms)}
@keyframes rv{to{opacity:1;transform:none}}
.caret::after{content:'';display:inline-block;width:2px;height:1.05em;background:var(--ac);margin-left:2px;vertical-align:-2px;animation:blink .8s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.out-h{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin:22px 0 10px}
.out-h::after{content:'';flex:1;height:1px;background:var(--line)}
.out-h svg.i{width:15px;height:15px;color:var(--ac-t)}

/* бейджі */
.chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:99px;background:var(--card2);border:1px solid var(--line);color:var(--t2);white-space:nowrap}
.chip svg.i{width:13px;height:13px}
.c-gold{color:var(--ac-t);border-color:var(--ac-line);background:var(--ac-soft)}
.c-blue{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 30%,var(--card));background:color-mix(in srgb,var(--blue) 8%,var(--card))}
.c-red{color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--card));background:color-mix(in srgb,var(--red) 7%,var(--card))}
.c-green{color:var(--green);border-color:color-mix(in srgb,var(--green) 30%,var(--card));background:color-mix(in srgb,var(--green) 8%,var(--card))}

/* кільце оцінки */
.ring{position:relative;width:86px;height:86px;flex:none}
.ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke-width:8}
.ring .bgc{stroke:color-mix(in srgb,var(--ink) 8%,transparent)}
.ring .fg{stroke:url(#gg);stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.7,.2,1)}
.ring.red .fg{stroke:var(--red)}
.ring .v{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font-weight:800;font-size:24px;line-height:1}
.ring .v small{display:block;font-size:11px;color:var(--t3);font-weight:700;margin-top:3px}

/* схема інтеграції */
.flow{display:grid;grid-template-columns:1fr 64px 280px 64px 1fr;align-items:center;gap:0}
.fl-col{display:grid;gap:10px}
.fl-col h4{font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}
.fl-it{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh)}
.fl-it .ic{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--ac-soft);color:var(--ac-t);flex:none}
.fl-it b{display:block;font-size:14.5px;font-weight:700;line-height:1.3}
.fl-it span{display:block;font-size:12.5px;color:var(--t3);line-height:1.35}
.fl-ln{height:2px;position:relative;background:linear-gradient(90deg,color-mix(in srgb,var(--ac) 15%,transparent),color-mix(in srgb,var(--ac) 70%,transparent));margin:0 6px}
.fl-ln::after{content:'';position:absolute;top:-3px;left:0;width:8px;height:8px;border-radius:50%;background:var(--ac);box-shadow:0 0 0 4px color-mix(in srgb,var(--ac) 18%,transparent);animation:fly 2.2s linear infinite}
@keyframes fly{from{left:0}to{left:calc(100% - 8px)}}
.fl-ai{border-radius:24px;padding:26px 22px;text-align:center;background:var(--ac-soft);border:1px solid var(--ac-line);box-shadow:0 20px 50px color-mix(in srgb,var(--ac) 12%,transparent)}
.fl-ai .ic{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;margin:0 auto 12px;background:var(--ac);color:var(--ac-ink)}
.fl-ai .ic svg.i{width:28px;height:28px}
.fl-ai b{font-size:18px;font-weight:800;display:block}
.fl-ai ul{list-style:none;margin-top:12px;display:grid;gap:6px;text-align:left}
.fl-ai li{font-size:13.5px;color:var(--t2);display:flex;gap:8px;align-items:flex-start;line-height:1.4}
.fl-ai li svg.i{width:15px;height:15px;color:var(--ac-t);margin-top:2px}
.fl-note{margin-top:22px;color:var(--t3);font-size:14px;display:flex;gap:8px;align-items:flex-start}
.fl-note svg.i{width:16px;height:16px;color:var(--ac-t);margin-top:3px}

/* було / стало */
.chg{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.chg-c{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px 24px;box-shadow:var(--sh)}
.chg-c h3{font-size:17px;font-weight:800;margin-bottom:14px;display:flex;gap:10px;align-items:center}
.chg-c h3 svg.i{color:var(--ac-t)}
.chg-r{display:grid;grid-template-columns:62px 1fr;gap:10px;font-size:14.5px;line-height:1.5;padding:8px 0}
.chg-r+.chg-r{border-top:1px solid var(--line)}
.chg-r .k{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding-top:2px}
.chg-r.was .k{color:var(--t3)}.chg-r.was p{color:var(--t2)}
.chg-r.now .k{color:var(--ac-t)}
.chg-foot{font-size:13px;color:var(--t3);margin-top:16px}

/* як впроваджуємо */
.how{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:h}
.how-c{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px;position:relative;box-shadow:var(--sh)}
.how-c .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--ac-soft);color:var(--ac-t);margin-bottom:16px}
.how-c .num{position:absolute;top:20px;right:22px;font-weight:800;font-size:13px;color:var(--t3)}
.how-c h3{font-size:17px;font-weight:800;margin-bottom:8px}
.how-c p{font-size:14.5px;color:var(--t2)}

/* CTA і підвал */
.cta{background:var(--ac-soft);border:1px solid var(--ac-line);border-radius:24px;padding:48px 32px;text-align:center}
.cta h2{margin:0 0 12px}
.cta p{color:var(--t2);max-width:620px;margin:0 auto 26px}
.ftr{border-top:1px solid var(--line);padding:24px 0;margin-top:40px}
.ftr .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13.5px;color:var(--t3)}
.ftr a{color:var(--t2)}.ftr a b{color:var(--t)}
.ftr a:hover{color:var(--t)}

.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;z-index:99;background:#111827;border:1px solid #111827;color:#fff;padding:12px 18px;border-radius:14px;font-size:14px;font-weight:600;transition:all .3s;max-width:calc(100% - 32px);box-shadow:0 20px 40px rgba(15,23,42,.25)}
.toast.on{opacity:1;transform:translate(-50%,0)}

@media (max-width:1080px){
  .flow{grid-template-columns:1fr;gap:0}
  .fl-ln{width:2px;height:34px;margin:6px auto;background:linear-gradient(180deg,color-mix(in srgb,var(--ac) 15%,transparent),color-mix(in srgb,var(--ac) 70%,transparent))}
  .fl-ln::after{left:-3px;top:0;animation:flyv 2.2s linear infinite}
  .fl-ai{max-width:420px;width:100%;margin:0 auto}
  .how{grid-template-columns:repeat(2,1fr)}
}
@keyframes flyv{from{top:0}to{top:calc(100% - 8px)}}
@media (max-width:900px){
  .wz{grid-template-columns:1fr}
  .hero-g{grid-template-columns:1fr}
  .hv{display:none}
  .steps.fin{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chg{grid-template-columns:1fr}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .hdr .wrap{height:46px}
  .by{font-size:12px}
  .btn-hd{font-size:12px;padding:6px 12px}
  .btn-sm{padding:9px 14px;font-size:13px}
  .note .wrap{font-size:12.5px;text-align:left;align-items:flex-start}
  .note svg.i{margin-top:2px}
  .hero{padding:32px 0 16px}
  .co{margin-bottom:18px}
  .co-m{width:40px;height:40px}
  .co b{font-size:17px}
  .sec{padding:52px 0}
  .demo{padding-top:28px;padding-bottom:40px}
  .pnl{padding:18px;border-radius:18px}
  .how{grid-template-columns:1fr}
  .chg-c{padding:18px}
  .cta{padding:36px 20px;border-radius:20px}
  .hero-cta .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* демо */
/* тема компанії */
:root{--bg:#F4F5F7;--bg2:#EBEDF0;--card:#FFFFFF;--card2:#F1F2F4;--inset:#F7F8FA;--line:#E0E3E7;--line2:#C9CED6;--t:#1A1D23;--t2:#484E59;--t3:#5A616C;--ink:#1A1D23;--ac:#F97316;--ac2:#FDBA74;--ac-t:#C2410C;--ac-ink:#1F1205;--blue:#1D4ED8}
.hv-img{width:34px;height:34px;border-radius:10px;object-fit:cover;flex:none}
.ex-p .ex-b .ic{background:#d9d9d9;overflow:hidden;padding:0}
.ex-p .ex-b .ic img{width:100%;height:100%;object-fit:cover;display:block}
.ph{position:relative;border-radius:16px;overflow:hidden;background:#dcdcdc;aspect-ratio:16/10;border:1px solid var(--line)}
.ph img{width:100%;height:100%;object-fit:contain;display:block;-webkit-mask-image:linear-gradient(90deg,transparent 17%,#000 26%,#000 74%,transparent 83%);mask-image:linear-gradient(90deg,transparent 17%,#000 26%,#000 74%,transparent 83%)}
.ph .scan{position:absolute;left:0;right:0;top:0;height:30%;background:linear-gradient(180deg,color-mix(in srgb,var(--ac) 0%,transparent),color-mix(in srgb,var(--ac) 35%,transparent));border-bottom:2px solid var(--gold);opacity:0;pointer-events:none}
.ph.scanning .scan{opacity:1;animation:scan 1s linear infinite}
@keyframes scan{from{transform:translateY(-100%)}to{transform:translateY(340%)}}
.ph-tags{position:absolute;inset:0;pointer-events:none}
.pt{position:absolute;font-size:12px;font-weight:800;color:var(--ac-ink);background:var(--ac);padding:4px 9px 4px 12px;border-radius:99px;white-space:nowrap;box-shadow:0 6px 16px rgba(15,23,42,0.12);opacity:0;animation:pop .4s ease forwards}
.pt::before{content:"";position:absolute;left:-4px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--ac) 35%,transparent)}
@keyframes pop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}
.kv{display:grid;gap:6px}
.kv-r{display:grid;grid-template-columns:118px 1fr;gap:10px;align-items:center}
.kv-r span{font-size:13px;color:var(--t3);font-weight:700}
.kv .inp{padding:8px 11px;font-size:14px;border-radius:10px;transition:border-color .3s,background .3s}
.kv textarea.inp{resize:vertical;line-height:1.45;min-height:64px}
.kv .inp.seen{border-color:color-mix(in srgb,var(--ac) 45%,transparent);background:color-mix(in srgb,var(--ac) 5%,transparent)}
.bulk-b{width:100%;justify-content:center;margin-top:10px;padding:13px 16px;font-size:15px}
.bulk-b:disabled{opacity:.5;cursor:default}

.pd{border:1px solid var(--line2);border-radius:20px;background:var(--card);box-shadow:var(--sh);padding:16px}
.pd-top{display:flex;gap:14px;align-items:center}
.pd-top img{width:64px;height:64px;border-radius:14px;object-fit:cover;background:#ededed;flex:none}
.pd-top b{display:block;font-size:16.5px;font-weight:800;margin-top:6px;line-height:1.3}
.pd-top small{font-size:13px;color:var(--t3)}
.tabs{display:flex;gap:4px;margin:16px 0 14px;padding:4px;border-radius:14px;background:var(--card2);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:1;white-space:nowrap;font-size:13.5px;font-weight:700;color:var(--t2);padding:8px 12px;border-radius:10px;transition:background .2s,color .2s}
.tabs button.on{background:var(--card);color:var(--ac-t);box-shadow:0 1px 3px rgba(15,23,42,.14)}
.tabb{min-height:200px}
.pd-h{font-size:17px;font-weight:800;margin-bottom:8px}
.pd-p{font-size:14.5px;line-height:1.65;color:var(--t2);white-space:pre-line}
.pd-l{display:block;font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.07em;margin:14px 0 8px}
.adv{list-style:none;display:grid;gap:5px}
.adv li{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.45}
.adv li svg.i{width:15px;height:15px;color:var(--green);margin-top:3px}
.tg-l{display:flex;flex-wrap:wrap;gap:6px}
.tg-l .chip{white-space:normal}
.seo{display:grid;gap:12px}
.seo-r>span{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--t3);text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px}
.seo-r p{font-size:14.5px;line-height:1.55;padding:9px 12px;border-radius:10px;background:var(--inset);border:1px solid var(--line)}
.seo-r p.mono{font-family:ui-monospace,Consolas,monospace;font-size:13.5px;word-break:break-all}
.cn{font-size:11.5px;padding:2px 7px;border-radius:99px;letter-spacing:0}
.cn.ok{color:var(--green);background:color-mix(in srgb,var(--green) 8%,transparent)}.cn.bad{color:var(--red);background:color-mix(in srgb,var(--red) 8%,transparent)}
.serp{padding:14px 16px;border-radius:14px;background:#fff;color:#202124;border:1px solid var(--line)}
.serp small{display:block;font-size:11px;color:#70757a;margin-bottom:6px}
.serp b{display:block;color:#1a0dab;font-size:17px;font-weight:500;line-height:1.3}
.serp em{display:block;font-style:normal;color:#006621;font-size:13px;margin:2px 0;word-break:break-all}
.serp p{font-size:13.5px;color:#4d5156;line-height:1.5}
.mp{display:grid;gap:12px}
.mp-p{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.mp-n{font-size:12.5px;color:var(--t3);margin-left:4px}
.plat{font-size:12px;font-weight:800;padding:5px 10px;border-radius:99px;white-space:nowrap}
.plat.rz{background:#E3F4EA;color:#0A6B3A}
.plat.pr{background:#EFEAFE;color:#5B32D6}
.ch{width:100%;border-collapse:collapse;font-size:13.5px}
.ch td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.ch td:first-child{color:var(--t3);width:40%}
.mp-f{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--t3)}
.mp-f svg.i{width:15px;height:15px;color:var(--gold);margin-top:2px}
.pd-f{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.pd-f button:disabled{opacity:.6;cursor:default}

.bk{margin-top:18px;border:1px solid color-mix(in srgb,var(--blue) 26%,transparent);border-radius:20px;background:color-mix(in srgb,var(--blue) 5%,transparent);padding:16px}
.bk-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.bk-h b{display:flex;gap:8px;align-items:center;font-size:15px;font-weight:800}
.bk-h b svg.i{width:17px;height:17px;color:var(--blue)}
.bk-h span{font-size:14px;font-weight:800;color:var(--gold);font-variant-numeric:tabular-nums}
.bk-bar{height:8px;border-radius:9px;background:color-mix(in srgb,var(--ink) 6%,transparent);margin:12px 0 10px;overflow:hidden}
.bk-bar i{display:block;height:100%;width:0;border-radius:9px;background:var(--ac);transition:width .1s linear}
.bk-s{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--t3)}
.bk-s b{color:var(--t);font-variant-numeric:tabular-nums}
.bk-s span:last-child{margin-left:auto}
.bk-t{margin-top:12px;border-radius:12px;border:1px solid var(--line);overflow:auto;max-width:100%}
.bk-t table{width:100%;border-collapse:collapse;font-size:13px;min-width:520px}
.bk-t th{text-align:left;font-size:11.5px;color:var(--t3);font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:8px 10px;background:var(--inset)}
.bk-t td{padding:7px 10px;border-top:1px solid var(--line);white-space:nowrap}
.bk-t td svg.i{width:15px;height:15px;color:var(--green);vertical-align:-3px}
.bk-t tr.chk td svg.i{color:var(--red)}
.bk-t td .chip{font-size:11.5px;padding:2px 8px}
.bk-t td.d{color:var(--t3)}
.bk-t tr.gen{background:color-mix(in srgb,var(--ac) 5%,transparent)}
.bk-f{margin-top:14px}
.bk-f p{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--t2)}
.bk-f p svg.i{color:var(--green);margin-top:2px}
.bk-f div{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 10px}
.bk-f small{font-size:12.5px;color:var(--t3)}
@media (max-width:640px){
  .kv-r{grid-template-columns:1fr;gap:4px}
  .pd{padding:14px}
  .pt{font-size:11px;padding:3px 8px 3px 11px}
  .bk{padding:14px}
  .bk-s span:last-child{margin-left:0}
  .tabs{display:grid;grid-template-columns:1fr 1fr}
  .bk-t table{min-width:0}
  .bk-t th:nth-child(n+3):nth-child(-n+5),.bk-t td:nth-child(n+3):nth-child(-n+5){display:none}
  .bk-t td:nth-child(2){white-space:normal}
  .bk-t th,.bk-t td{padding:7px 8px}
}
