*{box-sizing:border-box}html{background:#f4f7fb;color:#1e293b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}body{margin:0}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:grid;grid-template-columns:238px 1fr}.side{position:sticky;top:0;height:100vh;background:#0b1d54;color:#dce6ff;padding:24px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:18px;padding:2px 8px 28px}.brand>span,.login-logo{width:40px;height:40px;border-radius:13px;background:#fff;color:#12358f;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 25px #00113b66}.brand small{display:block;font-size:11px;font-weight:500;color:#8fa8e5;margin-top:2px}.side nav{display:grid;gap:5px}.side nav a,.side-bottom a{padding:11px 13px;border-radius:10px;color:#b9c9f2;font-size:14px}.side nav a:hover,.side nav a.active{background:#183a91;color:#fff}.side-bottom{margin-top:auto;border-top:1px solid #ffffff18;padding-top:14px}main{padding:0 34px 50px;min-width:0}.top{height:94px;display:flex;justify-content:space-between;align-items:center}.top h1{font-size:24px;margin:0 0 3px}.top p{margin:0;color:#7a879d;font-size:13px}.status-dot{font-size:12px;color:#23875b;background:#e7f8ef;border:1px solid #c6efda;padding:7px 11px;border-radius:30px}.hero{background:linear-gradient(125deg,#153c9d,#071d57);color:#fff;border-radius:20px;padding:30px 32px;margin-bottom:22px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 18px 38px #153c9d1f}.hero h2{font-size:26px;margin:7px 0}.hero p{max-width:700px;color:#d8e3ff;margin:0;line-height:1.5}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.12em;color:#9eb8ff;font-weight:700}.hero-num{text-align:center;border-left:1px solid #ffffff25;padding-left:35px;min-width:130px}.hero-num b{font-size:38px;display:block}.hero-num span{font-size:12px;color:#aebfea}.card,.site-stat{background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:22px;margin-bottom:20px;box-shadow:0 5px 20px #1a30630b}.card h2,.site-stat h3{margin:0 0 18px}.card h2{font-size:18px}.card h3{font-size:15px;margin-top:22px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:4px}.site-stat{margin:0}.row-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.pill,.badge{border-radius:30px;padding:5px 9px;font-size:11px;font-weight:700}.pill.wait{background:#f2f4f7;color:#7d8797}.pill.ok{background:#e7f8ef;color:#18734c}.pill.bad{background:#fff0f0;color:#b63737}.stat-values{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;border-top:1px solid #eef2f7;padding-top:14px}.stat-values b{font-size:19px;display:block}.stat-values span,.site-stat small{font-size:11px;color:#8490a4}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick a{padding:16px;border:1px solid #dfe7f4;background:#f8faff;border-radius:12px;font-weight:700;font-size:13px}.quick a:hover{border-color:#9db5ed}.two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(290px,.7fr);gap:20px}.help{background:#f8faff}.help p{color:#637087;font-size:13px;line-height:1.65}.form{display:grid;gap:15px}.form label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#3f4b5e}.form small,label small{font-weight:500;color:#8792a5;line-height:1.4}input,textarea,select,.readonly{width:100%;border:1px solid #d9e2ee;background:#fff;border-radius:10px;padding:11px 12px;font:inherit;color:#1f2a3b;outline:none}textarea{resize:vertical;line-height:1.45}input:focus,textarea:focus,select:focus{border-color:#7295e8;box-shadow:0 0 0 3px #7295e81c}.readonly{background:#f7f9fc;display:flex;align-items:center;color:#758197;height:42px}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.btn{border:0;border-radius:10px;padding:11px 16px;font-weight:750;cursor:pointer}.btn.primary{background:#123d9e;color:#fff}.btn.primary:hover{background:#0d327f}.btn.secondary{background:#eef3fb;color:#294474}.targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.target-card{border:1px solid #dfe7f2;border-radius:12px;padding:13px;background:#fbfcff}.target-card select{margin-top:8px}.target-card small{display:block;margin-top:6px;font-size:10px}.checkline{display:flex!important;align-items:center!important;grid-template-columns:none!important;gap:8px!important}.checkline input,.checkbox-big input,.schedule-line input[type=radio]{width:auto}.ok-text{color:#31835d!important}.error-text{color:#bd4444!important;display:block}.schedule-line{display:grid;grid-template-columns:auto auto minmax(230px,1fr);align-items:center;gap:15px;background:#f7f9fd;border-radius:12px;padding:12px}.schedule-line label{display:flex;align-items:center;gap:6px}.checkbox-big{display:flex!important;align-items:center;gap:8px!important;padding-top:28px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.table{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{text-align:left;color:#8390a3;font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:10px;border-bottom:1px solid #e8edf4}td{padding:11px 10px;border-bottom:1px solid #edf1f6;vertical-align:middle}tr:last-child td{border-bottom:0}td a{color:#1644a8;font-weight:700}.actions{display:flex;gap:5px;align-items:center}.actions form{margin:0}.mini{border:1px solid #dce4ef;background:#fff;padding:6px 8px;border-radius:7px;font-size:10px;cursor:pointer}.mini.danger{color:#b63737}.job-box{border-color:#cfdcf9}.progress{height:9px;background:#edf2fa;border-radius:20px;overflow:hidden}.progress span{height:100%;display:block;background:#1747b4;transition:width .2s}.metrics{display:flex;justify-content:space-between;gap:10px;padding:11px 0;font-size:12px}.metrics b{font-size:17px}.log{height:180px;overflow:auto;border:1px solid #e0e7f0;background:#0f172a;color:#d6e3ff;padding:12px;border-radius:10px;font-size:11px;line-height:1.55;white-space:pre-wrap}.badge.running{background:#e9f1ff;color:#2451b6}.badge.done{background:#e8f8ef;color:#22704c}.badge.failed{background:#ffeded;color:#ac3030}.sites-list{display:grid;gap:12px}.site-row{display:flex;align-items:center;justify-content:space-between;margin:0}.site-row h2{margin-bottom:4px}.site-row p{margin:0 0 4px;color:#627086;font-size:12px}.site-row-right{display:flex;align-items:center;gap:10px}.timeline>div{display:grid;grid-template-columns:150px 1fr auto;gap:14px;padding:11px 0;border-bottom:1px solid #edf1f5;font-size:12px}.timeline time{color:#8a96a8}.flash{padding:12px 15px;border-radius:10px;margin:0 0 18px;font-size:13px}.flash.ok{background:#e7f8ef;color:#176b48;border:1px solid #c8ebd8}.flash.err{background:#ffeded;color:#a93232;border:1px solid #ffd2d2}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#eef4ff,#f6f8fc 55%)}.login-card{width:min(390px,92vw);background:#fff;border:1px solid #e1e8f2;border-radius:19px;padding:30px;box-shadow:0 25px 70px #1735701c;display:grid;gap:15px}.login-logo{margin:auto}.login-card h1{text-align:center;margin:0}.login-card>p{text-align:center;margin:-8px 0 8px;color:#7b8799;font-size:12px}.login-card label{font-size:12px;font-weight:700;display:grid;gap:6px}
@media(max-width:1050px){.stats-grid,.targets{grid-template-columns:repeat(2,1fr)}.quick{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.shell{display:block}.side{position:relative;height:auto;padding:14px}.brand{padding:0 4px 12px}.side nav{display:flex;overflow:auto}.side nav a{white-space:nowrap}.side-bottom{display:none}main{padding:0 14px 35px}.top{height:78px}.top p{display:none}.status-dot{display:none}.hero{padding:22px}.hero-num{display:none}.two-col{grid-template-columns:1fr}.stats-grid,.targets{grid-template-columns:1fr}.split{grid-template-columns:1fr}.schedule-line{grid-template-columns:1fr}.quick{grid-template-columns:1fr 1fr}.timeline>div{grid-template-columns:1fr}.site-row{align-items:flex-start;gap:10px}.site-row-right{flex-direction:column;align-items:flex-end}}
.site-stat .stat-values{grid-template-columns:repeat(3,1fr);row-gap:14px}
.muted{color:#7d899b;font-size:12px;line-height:1.5}.wrap{flex-wrap:wrap}.compare{display:block!important;margin-top:3px;font-size:10px!important;font-weight:650}.compare.up,.day-delta.up{color:#18734c!important}.compare.down,.day-delta.down{color:#b63737!important}.compare.same,.day-delta.same{color:#7d899b!important}.stats-controls h2{margin-bottom:5px}.stats-filters{display:flex;gap:10px;align-items:end}.stats-filters label{font-size:11px;font-weight:700;color:#5b6678}.stats-filters select{margin-top:5px;min-width:150px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.summary-grid>div{background:#f7f9fd;border:1px solid #e5ebf5;border-radius:12px;padding:14px}.summary-grid span{font-size:11px;color:#7f8a9d;display:block}.summary-grid b{font-size:23px;margin-top:3px;display:block}.stats-status{font-size:12px;margin:8px 0 14px}.daily-chart{display:grid;gap:8px;padding:13px;border:1px solid #e5ebf4;border-radius:13px;background:#fbfcff}.chart-day{display:grid;grid-template-columns:52px minmax(180px,1fr) 90px;gap:10px;align-items:center;font-size:10px}.chart-day time{color:#778399}.chart-day>b{text-align:right;color:#41506a}.chart-lines{display:grid;gap:2px}.chart-lines .bar{height:5px;border-radius:20px;display:block;min-width:0}.bar.views,.chart-legend i.views{background:#315dbb}.bar.visitors,.chart-legend i.visitors{background:#6d8bd1}.bar.clicks,.chart-legend i.clicks{background:#1e8a67}.chart-legend{display:flex;gap:16px;justify-content:flex-end;margin-top:6px;font-size:10px;color:#718097}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend i{width:14px;height:5px;border-radius:8px}.day-delta{display:block;font-size:9px;margin-top:2px}.stats-breakdown{display:grid;gap:8px}.stats-breakdown article{display:grid;grid-template-columns:minmax(170px,1fr) repeat(3,minmax(120px,.55fr));gap:12px;align-items:center;border:1px solid #e6ebf3;border-radius:11px;padding:12px 14px;font-size:11px}.stats-breakdown article div{display:grid;gap:2px}.stats-breakdown article small{color:#8793a5}.stats-breakdown article strong{text-align:right;color:#173c91}.link-preview-list{display:grid;gap:13px}.link-preview{border:1px solid #e1e8f2;border-radius:14px;padding:15px;background:#fbfcff}.link-preview.bad-card{border-color:#f0caca;background:#fff8f8}.link-preview-body{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;margin-top:12px}.link-preview-image{width:150px;height:150px;border-radius:13px;overflow:hidden;background:#eef2f7;display:grid;place-items:center;color:#8994a7;font-size:11px}.link-preview-image img{width:100%;height:100%;object-fit:cover;object-position:center}.form.compact{gap:10px}.warn-text{color:#a66a14!important}.card code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#f3f6fa;padding:2px 5px;border-radius:5px}
@media(max-width:1050px){.summary-grid{grid-template-columns:repeat(2,1fr)}.stats-breakdown article{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.stats-filters{width:100%;display:grid;grid-template-columns:1fr 1fr}.summary-grid{grid-template-columns:1fr 1fr}.chart-day{grid-template-columns:44px minmax(120px,1fr) 68px}.link-preview-body{grid-template-columns:1fr}.link-preview-image{width:100%;height:220px}.stats-breakdown article{grid-template-columns:1fr}.stats-breakdown article strong{text-align:left}}

/* ===== Panel ADM v8: mobile-first reliability and responsive UI ===== */
html,body{max-width:100%;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:0;min-height:100vh}
button,input,textarea,select{max-width:100%}
button,.btn,.mini,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.mobile-bar,.mobile-backdrop,.side-close,.mobile-logout{display:none}
.table{max-width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.card,.site-stat,.target-card,.link-preview{min-width:0}
.form>*{min-width:0}
.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.mini{min-height:34px;display:inline-flex;align-items:center;justify-content:center}
input[type="checkbox"],input[type="radio"]{accent-color:#123d9e}

@media(max-width:900px){
  body.menu-open{overflow:hidden}
  .shell{display:block;min-height:100dvh}
  .side{
    display:flex!important;position:fixed!important;z-index:1002;left:0;top:0;bottom:0;
    width:min(86vw,330px);height:100dvh!important;padding:max(18px,env(safe-area-inset-top)) 14px max(18px,env(safe-area-inset-bottom));
    transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 55px #08163c3d;overflow-y:auto;overscroll-behavior:contain
  }
  body.menu-open .side{transform:translateX(0)}
  .mobile-backdrop{display:block;position:fixed;z-index:1001;inset:0;background:#08142b80;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;backdrop-filter:blur(2px)}
  body.menu-open .mobile-backdrop{opacity:1;visibility:visible}
  .side .brand{padding:0 4px 18px;min-height:52px}
  .side .brand>div{min-width:0;flex:1}
  .side-close{display:grid;margin-left:auto;width:40px;height:40px;border:1px solid #ffffff24;border-radius:12px;background:#ffffff10;color:#fff;place-items:center;font-size:25px;line-height:1;cursor:pointer}
  .side nav{display:grid!important;overflow:visible!important;gap:5px}
  .side nav a{white-space:normal!important;min-height:44px;display:flex;align-items:center;padding:11px 13px}
  .side-bottom{display:none!important}
  .mobile-logout{display:flex;margin-top:auto;min-height:46px;align-items:center;justify-content:center;border:1px solid #ffffff24;border-radius:11px;color:#fff;background:#ffffff0d;font-size:13px;font-weight:700}

  main{padding:0 12px calc(28px + env(safe-area-inset-bottom))!important;min-width:0}
  .mobile-bar{
    display:grid;grid-template-columns:44px minmax(0,1fr) 30px;align-items:center;gap:10px;
    position:sticky;top:0;z-index:900;margin:0 -12px 10px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;
    min-height:62px;background:#0b1d54;color:#fff;box-shadow:0 5px 18px #0b1d5426
  }
  .menu-toggle{width:44px;height:44px;border:0;border-radius:12px;background:#ffffff12;display:grid;place-content:center;gap:5px;cursor:pointer}
  .menu-toggle span{display:block;width:21px;height:2px;border-radius:4px;background:#fff}
  .mobile-brand{min-width:0;display:grid;gap:1px}
  .mobile-brand b{font-size:14px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-brand small{font-size:11px;color:#9eb8ef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-online{justify-self:end;color:#48d297;font-size:13px}
  .top{height:auto!important;padding:14px 2px 16px;display:flex}
  .top h1{font-size:21px;line-height:1.2;margin:0}
  .top p,.status-dot{display:none!important}

  .hero{margin-bottom:14px;padding:20px 18px!important;border-radius:16px;display:block}
  .hero h2{font-size:21px;line-height:1.2;margin:7px 0 9px}
  .hero p{font-size:12px;line-height:1.55}
  .hero-num{display:none!important}
  .eyebrow{font-size:10px}
  .card,.site-stat{padding:16px!important;border-radius:14px;margin-bottom:14px}
  .card h2{font-size:17px;margin-bottom:14px}
  .card h3{margin-top:18px}
  .stats-grid,.targets,.two-col,.split{grid-template-columns:1fr!important;gap:12px!important}
  .stats-grid{margin-bottom:14px}
  .site-stat{margin:0!important}
  .site-stat .stat-values{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px 10px}
  .stat-values b{font-size:18px}
  .row-between{align-items:flex-start;flex-wrap:wrap}
  .quick{grid-template-columns:1fr!important;gap:9px}
  .quick a{padding:14px;min-height:48px;display:flex;align-items:center}

  .form{gap:13px}
  .form label{font-size:12px;min-width:0}
  input,textarea,select,.readonly{font-size:16px!important;border-radius:11px;padding:12px 12px;min-height:46px}
  textarea{min-height:120px}
  select[multiple]{min-height:155px;padding:7px}
  select[multiple] option{padding:9px 7px;border-radius:7px}
  input[type="file"]{padding:9px;background:#f9fbff}
  input[type="checkbox"],input[type="radio"]{width:20px!important;height:20px!important;min-height:0;padding:0;flex:0 0 20px}
  .btn{width:100%;min-height:48px;font-size:14px;border-radius:11px}
  .btn.secondary{width:auto;min-width:120px}
  .schedule-line{grid-template-columns:1fr!important;gap:10px;padding:12px}
  .schedule-line label{min-height:38px}
  .schedule-line input[type="datetime-local"]{width:100%}
  .checkbox-big{padding-top:0!important;min-height:44px}
  .target-card{padding:12px}
  .target-card small{font-size:11px;line-height:1.45}
  .target-card .checkline{min-height:36px}

  .metrics{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:8px 12px}
  .metrics span{text-align:right;line-height:1.4}
  .log{height:210px;font-size:11px;word-break:break-word;overflow-wrap:anywhere}
  .progress{height:10px}
  .site-row{display:grid!important;grid-template-columns:1fr;gap:12px!important}
  .site-row>div:first-child{min-width:0}
  .site-row p,.site-row small{overflow-wrap:anywhere;word-break:break-word}
  .site-row-right{width:100%;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between;gap:10px}
  .site-row-right form{margin-left:auto}
  .site-row-right .btn{width:auto;min-width:120px}
  .timeline>div{grid-template-columns:1fr!important;gap:4px!important;padding:12px 0}
  .timeline time{font-size:11px}

  .stats-filters{width:100%;display:grid!important;grid-template-columns:1fr!important;gap:8px}
  .stats-filters label,.stats-filters select{width:100%;min-width:0!important}
  .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .summary-grid>div{padding:12px}
  .summary-grid b{font-size:20px}
  .daily-chart{padding:11px;overflow:hidden}
  .chart-day{grid-template-columns:42px minmax(0,1fr) 64px!important;gap:7px}
  .chart-day>b{font-size:9px}
  .chart-legend{justify-content:flex-start;flex-wrap:wrap;gap:10px}
  .stats-breakdown article{grid-template-columns:1fr!important;gap:6px!important;padding:12px}
  .stats-breakdown article strong{text-align:left!important}

  .link-preview-body{grid-template-columns:1fr!important;gap:12px}
  .link-preview-image{width:100%!important;height:auto!important;aspect-ratio:1/1;max-height:320px}

  /* Все большие таблицы превращаются в читабельные карточки. JS добавляет data-label. */
  .table{overflow:visible!important}
  .table table{display:block;width:100%;font-size:12px}
  .table thead,.table tr.table-header{display:none!important}
  .table tbody{display:grid;gap:10px;width:100%}
  .table table>tbody:only-child{display:grid}
  .table tr:not(.table-header){display:grid;width:100%;border:1px solid #e4eaf3;border-radius:12px;background:#fbfcff;padding:7px 11px;box-shadow:0 2px 8px #17357008}
  .table td{display:grid;grid-template-columns:minmax(94px,.8fr) minmax(0,1.3fr);gap:9px;align-items:start;padding:8px 0!important;border-bottom:1px solid #edf1f6!important;overflow-wrap:anywhere;word-break:break-word}
  .table td:last-child{border-bottom:0!important}
  .table td::before{content:attr(data-label);font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:#8490a4;font-weight:700}
  .table td[colspan]::before{display:none}
  .table td[colspan]{display:block}
  .table .actions{display:flex!important;grid-template-columns:none;flex-wrap:wrap;gap:7px}
  .table .actions::before{width:100%;content:attr(data-label)}
  .table .actions form{flex:1;min-width:88px}
  .table .actions .mini,.table .actions a.mini{width:100%;min-height:40px}
  .table td form:not(.actions form){max-width:100%}
  .mini{min-height:40px;padding:8px 10px;font-size:11px}

  .flash{position:relative;margin-bottom:14px;padding:12px 13px;line-height:1.45}
}

@media(max-width:520px){
  main{padding-left:10px!important;padding-right:10px!important}
  .mobile-bar{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}
  .top{padding-left:1px;padding-right:1px}
  .top h1{font-size:20px}
  .card,.site-stat{padding:14px!important}
  .site-stat .stat-values{grid-template-columns:1fr 1fr!important}
  .summary-grid{grid-template-columns:1fr 1fr!important}
  .summary-grid span{font-size:10px}
  .summary-grid b{font-size:19px}
  .chart-day{grid-template-columns:38px minmax(0,1fr) 58px!important}
  .table td{grid-template-columns:86px minmax(0,1fr);gap:8px}
  .login-card{padding:22px 17px!important;border-radius:17px!important}
}

/* Login on phones: no disappearing card, no iOS zoom, safe-area aware. */
.login-page{min-height:100dvh!important;padding:max(18px,env(safe-area-inset-top)) 12px max(18px,env(safe-area-inset-bottom));display:block!important}
.login-wrap{min-height:calc(100dvh - 36px);width:100%;display:grid;place-items:center;padding:0!important}
.login-card{width:min(420px,100%)!important;margin:auto;padding:28px;gap:14px}
.login-card input{font-size:16px;min-height:48px}
.login-submit{width:100%;min-height:50px;margin-top:2px}
.login-hint{text-align:center;color:#8792a5;font-size:11px;line-height:1.45}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v10: link templates + bulk target controls */
.target-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 14px}.target-toolbar small{color:#71809d}.template-folders{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:thin}.template-folders a{white-space:nowrap;padding:8px 13px;border:1px solid #d7e1f0;border-radius:999px;background:#fff;color:#193769;text-decoration:none;font-weight:700}.template-folders a.active{background:#173d92;color:#fff;border-color:#173d92}.template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.template-card{border:1px solid #dfe7f3;border-radius:16px;padding:16px;background:#fff}.template-card h3{margin:0 0 6px}.template-url{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere;color:#1d4ed8}.template-note{white-space:pre-wrap;color:#5b6982}.template-sites{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.template-sites span{font-size:12px;padding:5px 8px;border-radius:999px;background:#eef4ff;color:#244c9a}.folder-editor-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.folder-editor-list label{display:flex;gap:7px;align-items:flex-start;border:1px solid #e0e7f2;border-radius:10px;padding:8px;background:#fff}.template-sync-error{color:#b42318;font-size:12px}.template-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.template-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.template-filter label{min-width:220px}.site-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.site-check-grid label{display:flex;gap:8px;align-items:center;border:1px solid #dfe7f3;padding:9px 10px;border-radius:10px}.site-check-grid input{width:auto}.template-help{background:#f7faff;border:1px solid #dbe7fb;padding:12px;border-radius:12px;color:#50627f}
@media(max-width:800px){.template-grid{grid-template-columns:1fr}.folder-editor-list,.site-check-grid{grid-template-columns:1fr}.template-filter label{min-width:0;width:100%}.target-toolbar .btn{flex:1 1 145px}.template-folders{margin-right:-8px;padding-right:8px}}


/* Panel ADM v11 — компактное управление шаблонами и папками */
.template-head .template-main-actions{margin-top:0;align-items:center}
.template-head .template-main-actions form{margin:0}
.selected-folder-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:2px 0 14px;padding:11px 13px;border:1px solid #dce5f2;background:#f8fbff;border-radius:12px}
.selected-folder-tools>div:first-child{display:grid;gap:2px}
.selected-folder-tools small{font-size:11px;color:#7a8799}
.selected-folder-tools .template-actions{margin-top:0;align-items:center}
.selected-folder-tools form{margin:0}
.template-editor-card,.folder-editor-card{border-color:#cfdbef}
.folder-hint{display:block;margin:5px 0 9px}
.folder-delete-form{margin-top:12px}
.btn.danger{background:#fff0f0;color:#a93232;border:1px solid #ffd2d2}
.btn.small{padding:7px 10px;font-size:11px}
.template-folders a{flex:0 0 auto}
@media(max-width:800px){
  .template-main-actions{width:100%}
  .template-main-actions .btn,.template-main-actions form{flex:1 1 145px}
  .template-main-actions form .btn{width:100%}
  .selected-folder-tools{align-items:flex-start;flex-direction:column}
  .selected-folder-tools .template-actions{width:100%}
  .selected-folder-tools .template-actions .mini{min-width:42px}
}

/* Panel ADM v12 — шаблон ссылки при публикации/SQL-импорте */
.publish-template-global{margin:0 0 14px;border:1px solid #cfdcf0;border-radius:14px;background:#f8fbff;overflow:hidden}
.publish-template-global>summary,.target-template-box>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:800;color:#17366f}
.publish-template-global>summary::-webkit-details-marker,.target-template-box>summary::-webkit-details-marker{display:none}
.publish-template-global>summary{padding:13px 15px}
.publish-template-global>summary>span:first-child{display:grid;gap:2px;min-width:0}
.publish-template-global>summary small{font-weight:500;color:#71809a;font-size:11px;line-height:1.35}
.publish-template-global-body{padding:0 15px 14px;display:grid;gap:9px}
.template-summary-value{font-size:11px;font-weight:800;color:#526788;background:#eef4ff;border-radius:999px;padding:5px 9px;max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}
.has-template>.template-summary-value,.has-template>summary .template-summary-value{background:#e5f7ed;color:#177743}
.target-template-box{margin-top:10px;border:1px solid #dbe4f1;border-radius:11px;background:#fbfdff;overflow:hidden;max-width:100%}
.target-template-box>summary{padding:9px 10px;font-size:12px}
.target-template-body{padding:0 10px 10px;display:grid;gap:8px;min-width:0}
.target-template-body label,.publish-template-global-body label{display:grid;gap:5px;min-width:0;font-size:11px}
.target-template-body select,.target-template-body input,.target-template-body textarea,.publish-template-global-body select,.publish-template-global-body input,.publish-template-global-body textarea{width:100%;max-width:100%;min-width:0}
.quick-template-new{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px;border:1px dashed #c8d5e8;border-radius:10px;background:#fff;min-width:0}
.quick-template-new[hidden]{display:none!important}
.quick-template-new label:last-child{grid-column:1/-1}
.quick-template-new textarea{min-height:68px;resize:vertical}
.target-card{min-width:0;overflow:hidden}
.target-card>.target-template-box *{box-sizing:border-box}
@media(max-width:800px){
  .publish-template-global>summary{align-items:flex-start}
  .template-summary-value{max-width:45%}
  .quick-template-new{grid-template-columns:1fr}
  .quick-template-new label:last-child{grid-column:auto}
  .target-template-box>summary{min-height:42px}
}
@media(max-width:520px){
  .publish-template-global>summary{display:grid;grid-template-columns:1fr;gap:7px}
  .template-summary-value{max-width:100%;width:max-content}
  .target-template-box>summary{gap:8px}
  .target-template-box .template-summary-value{max-width:55%}
}
/* Panel ADM v19: compact adult links / banner management on phones */
.v19-nonbanners {margin-top:18px;border:1px solid #dbe5f4;border-radius:12px;padding:12px 16px;background:#f8fbff}
.v19-nonbanners summary {cursor:pointer;font-weight:650;color:#233b69}
.v19-nonbanners .table {margin-top:12px}
body[data-page="banners"] .card .table td {vertical-align:top}
body[data-page="banners"] .card input[type="url"] {width:100%;min-width:0;box-sizing:border-box}
body[data-page="adult-links"] .card textarea {width:100%;box-sizing:border-box;min-height:190px}
@media(max-width:780px){body[data-page="banners"] .card .table{overflow-x:auto;-webkit-overflow-scrolling:touch}body[data-page="banners"] .card table{min-width:660px}body[data-page="adult-links"] .card .row-between{gap:10px}body[data-page="adult-links"] .card button{max-width:100%}}

/* Panel ADM v21.1 category visibility: checkboxes must never inherit input{width:100%}. */
.tr-categories input[type="checkbox"]{width:auto!important;min-width:14px;height:14px;flex:0 0 auto;margin:0}
.tr-categories label>span{display:block;min-width:0;color:#25354d;line-height:1.3;overflow-wrap:anywhere}
