/* Раздел «Агент» (этап 4б). Токены цвета — из app.css (--ink, --surface, --line, --ok, --warn, --danger …),
   части — из этапов 3–4а: крупный заголовок .sx-hero, строка-рамка .sx-alert, группы .pgrp/.pcard,
   сегменты .seg, навигационная панель .pnav. Состояние задачи — цветным текстом, без плашек. */
.ag-page{width:100%;min-width:0;margin:0 auto}
.ag-runner{margin:0 0 18px}
.ag-runner code{padding:0 4px;border-radius:6px;background:var(--surface-2);color:var(--ink);font:500 12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}

/* Новая задача */
.ag-new{display:flex;flex-direction:column;gap:10px;padding:12px}
.ag-new>*+*{border-top:0}
.ag-proj select{width:100%;min-height:48px;padding:0 40px 0 48px;border:0;border-radius:12px;background:var(--surface-2);color:var(--ink);font:600 15px/1.3 'Manrope',sans-serif;-webkit-appearance:none;appearance:none;text-overflow:ellipsis;cursor:pointer}
.ag-proj select:disabled{color:var(--muted);cursor:not-allowed}
.ag-proj:not(:has(.sx-av)) select{padding-left:14px}
.ag-new textarea{width:100%;min-height:96px;padding:12px 14px;border:0;border-radius:12px;background:var(--surface-2);color:var(--ink);font:500 16px/1.45 'Manrope',sans-serif;resize:vertical}
.ag-new textarea::placeholder{color:var(--muted)}
.ag-new :is(select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:0}
.ag-seg .seg-b{font-size:13px}
.ag-submit{min-height:50px;border-radius:14px;font:750 15px/1 'Manrope',sans-serif;box-shadow:none}
.ag-submit:disabled{border-color:transparent;background:var(--surface-2);color:var(--muted);cursor:not-allowed}
.ag-hint{margin:0 2px;color:var(--muted);font:500 13px/1.45 'Manrope',sans-serif}
.ag-none{margin:0 4px 20px;color:var(--muted);font:500 13px/1.5 'Manrope',sans-serif}

/* Строки задач */
.ag-sec .pcard .dempty{margin:0;padding:12px 14px;color:var(--muted);font:500 14px/1.5 'Manrope',sans-serif}
.ag-row{display:flex;align-items:flex-start;gap:12px;min-height:64px;padding:11px 14px;color:var(--ink);text-decoration:none}
.ag-row:hover{background:color-mix(in srgb,var(--surface) 95%,var(--ink))}
.ag-row:focus-visible{outline-offset:-2px}
.ag-row .sx-av{margin-top:2px}
.ag-row-b{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ag-row-l1,.ag-row-l2{display:flex;align-items:baseline;gap:8px;min-width:0}
.ag-row-title{flex:1;min-width:0;font:700 15px/1.35 'Manrope',sans-serif;overflow-wrap:anywhere}
.ag-row-time{flex:none;color:var(--muted);font:500 12px/1.3 'Manrope',sans-serif;white-space:nowrap}
.ag-row-proj{flex:1;min-width:0;overflow:hidden;color:var(--muted);font:500 13px/1.4 'Manrope',sans-serif;white-space:nowrap;text-overflow:ellipsis}
.ag-row-prog{color:var(--muted);font:500 13px/1.4 'Manrope',sans-serif;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ag-row-prog.is-bad{color:var(--danger);white-space:normal;overflow-wrap:anywhere}
.ag-st{flex:none;font:650 13px/1.4 'Manrope',sans-serif;white-space:nowrap}
.ag-st.ag-wait{color:var(--muted-2)}
.ag-st.ag-run{color:var(--accent)}
.ag-st.ag-you{color:var(--warn)}
.ag-st.ag-ok{color:var(--ok)}
.ag-st.ag-off{color:var(--muted)}
.ag-st.ag-bad{color:var(--danger)}

/* Задача: навигационная панель, блоки карточками, решения в нижней панели. */
.ag-job{display:flex;flex-direction:column;max-width:none;min-height:100%}
.ag-nav{position:sticky;top:0;z-index:12;border-bottom:1px solid var(--line)}
.ag-nav .pnav-sub .ag-st{font-size:12px}
.ag-job-body{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:14px 0 18px}
.ag-job .sx-alert{margin-bottom:14px}
.sx-alert.is-warn{border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}
.sx-alert.is-warn .sx-alert-t b{color:var(--warn)}
.ag-live .gd{flex:none;width:8px;height:8px;border-radius:50%;background:var(--accent);animation:agpulse 1.4s ease-in-out infinite}
@keyframes agpulse{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.ag-live .gd{animation:none}}
.ag-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0 24px;align-items:start}
.ag-col{min-width:0}
.ag-block{margin-bottom:18px}
.ag-md{padding:12px 14px;font-size:15px;line-height:1.55;overflow-wrap:anywhere}
.ag-md>:first-child{margin-top:0}.ag-md>:last-child{margin-bottom:0}
.ag-md table{display:block;overflow-x:auto;border-collapse:collapse;font-size:13px}
.ag-commit,.ag-deny{display:flex;align-items:baseline;gap:10px;min-height:44px;padding:10px 14px;font:500 14px/1.4 'Manrope',sans-serif;overflow-wrap:anywhere}
.ag-commit code,.ag-deny code{flex:none;color:var(--muted-2);font:600 13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}
.ag-deny code{flex:1;min-width:0;color:var(--ink);font-weight:500;overflow-wrap:anywhere}
.ag-stat,.ag-diff{margin:0;padding:10px 14px;background:var(--surface);color:var(--ink);font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto;white-space:pre;max-width:100%}
.ag-diff{max-height:70vh;overflow:auto}
.ag-diff .add{color:var(--ok)}.ag-diff .del{color:var(--danger)}.ag-diff .hunk{color:var(--muted)}
.ag-note{margin:0;padding:10px 14px;color:var(--muted);font:500 13px/1.45 'Manrope',sans-serif}
.ag-note code{font-size:12px}
.ag-task{padding:12px 14px;white-space:pre-wrap;overflow-wrap:anywhere;font:500 15px/1.5 'Manrope',sans-serif}
.ag-fact{justify-content:space-between;min-height:46px;font-size:14px}
.ag-fact span{flex:none;color:var(--muted)}
.ag-fact b{min-width:0;font-weight:600;text-align:right;overflow-wrap:anywhere}
.ag-fact a{color:var(--accent);text-decoration:none}
.ag-fact a:hover{text-decoration:underline}
.ag-fact code{font:500 13px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}
.ag-log{max-height:60vh;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:12px 14px;font:500 13px/1.45 'Manrope',sans-serif}
.ag-log>*+*{border-top:0}
.ag-log-run{margin-top:4px;padding-top:8px;border-top:1px solid var(--line-soft)!important;color:var(--muted);font:750 12px/1.3 'Manrope',sans-serif;letter-spacing:.04em;text-transform:uppercase}
.ag-log-run:first-child{margin-top:0;padding-top:0;border-top:0!important}
.ag-log-tool{color:var(--muted);font:500 12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.ag-log-tool b{color:var(--ink);font-weight:650}
.ag-log-deny{color:var(--danger);font:500 12px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.ag-log-deny.soft{color:var(--warn)}
.ag-log-text{line-height:1.5;overflow-wrap:anywhere}
.ag-log-text p{margin:4px 0}

/* Нижняя панель решений: на телефоне по две кнопки в ряд, главная — заливкой. */
.ag-acts{position:sticky;bottom:0;z-index:12;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--paper)}
.ag-acts:empty{display:none}
.ag-acts .btn,.ag-rev-acts .btn{min-height:48px;border-radius:14px;font:750 15px/1.2 'Manrope',sans-serif;box-shadow:none}
.ag-acts .btn:not(.pri),.ag-rev-acts .btn:not(.pri){border-color:transparent;background:var(--surface-2);color:var(--ink)}
.ag-acts .btn.ag-danger{color:var(--danger)}
.ag-acts .btn.pri,.ag-rev-acts .btn.pri,.ag-submit:not(:disabled){border-color:var(--ink);background:var(--ink);color:var(--paper)}
.ag-acts .btn.pri:hover,.ag-rev-acts .btn.pri:hover,.ag-submit:not(:disabled):hover{border-color:var(--ink);background:color-mix(in srgb,var(--ink) 86%,var(--paper))}
.ag-acts .btn:only-child,.ag-acts .btn:last-child:nth-child(odd){grid-column:1/-1}
.ag-acts .btn:disabled{opacity:.55;cursor:progress}
.ag-job:has(#ag-rev-box:not([hidden]))>.ag-acts{display:none}
.ag-rev{position:sticky;bottom:0;z-index:12;display:flex;flex-direction:column;gap:8px;padding:10px max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--paper)}
.ag-rev[hidden]{display:none}
.ag-rev label{color:var(--muted);font:650 12px/1.3 'Manrope',sans-serif}
.ag-rev textarea{width:100%;min-height:84px;max-height:40dvh;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:500 16px/1.45 'Manrope',sans-serif;resize:vertical}
.ag-rev textarea:focus{outline:0;border-color:var(--accent)}
.ag-rev-acts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}

@media (min-width:1101px){
  .ag-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
  .ag-logbox{position:sticky;top:70px}
  .ag-log{max-height:calc(100dvh - 260px)}
}
@media (min-width:901px){
  .ag-acts,.ag-rev{padding-left:max(16px,calc((100% - 1180px)/2));padding-right:max(16px,calc((100% - 1180px)/2))}
  .ag-acts{display:flex;justify-content:flex-end}
  .ag-acts .btn{min-width:150px}
  .ag-rev-acts{display:flex;justify-content:flex-end}
  .ag-rev-acts .btn{min-width:150px}
}
/* Телефон: экран задачи во всю высоту без нижней панели вкладок, у шапки
   отступ под статус-бар. */
@media (max-width:900px){
  body.agent-job-page #view{padding:0}
  .ag-nav{padding-top:max(5px,env(safe-area-inset-top))}
  .ag-job-body{padding:12px max(16px,env(safe-area-inset-right)) 18px max(16px,env(safe-area-inset-left))}
  .ag-job{min-height:var(--tgvh,100dvh)}
}
@media (min-width:901px){
  body.agent-job-page #view{padding-top:0;padding-bottom:0}
  .ag-job-body{padding-left:0;padding-right:0}
}

/* ===== Раздел «Реклама» ===== */
.ads-list{width:100%;min-width:0;margin:0 auto}
.ads-st{flex:none;font:650 13px/1.4 'Manrope',sans-serif;white-space:nowrap}
.ads-st.ads-you{color:var(--warn)}
.ads-st.ads-wait{color:var(--accent);white-space:normal}
.ads-st.ads-ok{color:var(--ok)}
.ads-st.ads-off{color:var(--muted-2)}
.ads-aps{display:flex;flex-direction:column;gap:10px}
.ads-ap{display:flex;flex-direction:column;gap:8px;padding:12px 14px}
.ads-ap>*+*{border-top:0}
.ads-ap-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}
.ads-ap-h b{font:750 15px/1.35 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-ap-sum{margin:0;padding:10px 12px;border-radius:10px;background:var(--surface-2);color:var(--ink);font:500 13px/1.5 'Manrope',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.ads-ap-note{margin:0;color:var(--muted);font:500 13px/1.45 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-ap-max{margin:0;font:500 14px/1.4 'Manrope',sans-serif}
.ads-ap-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.ads-ap-acts .btn{min-height:44px;border-radius:12px;font-weight:700}
.ads-danger{color:var(--danger)}
.btn.ads-sure{background:var(--warn);border-color:var(--warn);color:#111}
.ads-page{display:flex;flex-direction:column;width:100%;min-width:0;margin:0 auto}
.ads-page>.pnav{width:100%;max-width:none;margin-left:0;margin-right:0}
.ads-tabs{margin:10px 0 12px}
.ads-tabs .seg-b{text-decoration:none;min-height:40px}
.ads-body{min-width:0}
.ads-aps-top{margin:0 0 14px}
.ads-aps-fold{margin:0 0 10px}
.ads-aps-fold>summary{cursor:pointer;padding:8px 2px;color:var(--warn);font:700 14px/1.3 'Manrope',sans-serif}
.ads-aps-fold .ads-aps{max-height:45dvh;overflow:auto}
.ads-chatwrap{flex:1;min-height:0;display:flex;flex-direction:column}
.ads-chatwrap .chatbox{flex:1;min-height:0;max-width:none}
.ads-form{display:flex;flex-direction:column;gap:12px;padding:14px}
.ads-form>*+*{border-top:0}
.ads-f{display:flex;flex-direction:column;gap:5px;min-width:0}
.ads-f>span{color:var(--muted);font:650 12px/1.3 'Manrope',sans-serif}
.ads-f :is(input,select,textarea){width:100%;min-height:46px;padding:10px 12px;border:0;border-radius:12px;background:var(--surface-2);color:var(--ink);font:500 16px/1.4 'Manrope',sans-serif}
.ads-f textarea{resize:vertical;min-height:80px}
.ads-f :is(input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:0}
.ads-f3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ads-save{min-height:50px;border-radius:14px;font:750 15px/1 'Manrope',sans-serif}
.ads-pad{padding:12px}
.ads-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.ads-grid>*+*{border-top:0}
.ads-tile{display:flex;flex-direction:column;gap:4px;min-width:0;color:var(--ink);text-decoration:none}
.ads-tile img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px;background:var(--surface-2)}
.ads-tile span{color:var(--muted);font:500 12px/1.35 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-up{cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.ads-st.ads-bad{color:var(--danger);white-space:normal}
/* Счётчик «требует внимания» на пункте меню и точка на кнопке «Ещё». */
.navlink{position:relative}
.nav-alert{position:absolute;top:4px;left:calc(50% + 6px);min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--danger);color:#fff;font:750 11px/18px 'Manrope',sans-serif;text-align:center;pointer-events:none}
.nav-alert[hidden]{display:none}
.mobile-bottom [data-mobile-route=more].has-alert::after{content:"";position:absolute;top:7px;left:calc(50% + 7px);width:8px;height:8px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 2px var(--surface)}
a.home-group.ads-home{text-decoration:none}
.ads-tab-n{display:inline-block;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:99px;background:var(--danger);color:#fff;font:750 11px/18px 'Manrope',sans-serif;text-align:center;vertical-align:1px}
/* Сводка проекта */
.ads-sum-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:0 0 8px}
.ads-per{margin:0;flex:1 1 260px;max-width:420px}
.ads-per .seg-b{min-height:38px}
.ads-line{margin:0 0 10px;color:var(--muted);font:500 13px/1.45 'Manrope',sans-serif}
.ads-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin:0 0 16px}
.ads-kpi{display:flex;flex-direction:column;gap:3px;min-width:0;padding:10px 12px;border-radius:12px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-soft)}
.ads-kpi span{color:var(--muted);font:600 12px/1.3 'Manrope',sans-serif}
.ads-kpi b{color:var(--ink);font:750 18px/1.25 'Manrope',sans-serif;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ads-alerts,.ads-camps,.ads-fold-aps,.ads-fold-alerts{display:flex;flex-direction:column;gap:8px}
.ads-camps{gap:12px}
.ads-fold-aps:empty,.ads-fold-alerts:empty{display:none}
.ads-alert{display:flex;flex-direction:column;gap:8px;padding:10px 12px 10px 13px;border-radius:12px;border-left:4px solid var(--line);background:var(--surface);box-shadow:inset 0 0 0 1px var(--line-soft)}
.ads-alert.is-bad{border-left-color:var(--danger);background:var(--danger-soft)}
.ads-alert.is-warn{border-left-color:var(--warn);background:var(--warn-soft)}
.ads-alert p{margin:0;color:var(--ink);font:550 14px/1.45 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-alert-lv{color:var(--danger)}
.ads-alert-acts{display:flex;flex-wrap:wrap;gap:6px}
.ads-alert-acts .btn{min-height:36px}
.ads-hide{color:var(--muted)}
.ads-camp{display:flex;flex-direction:column;gap:8px;padding:12px 14px}
.ads-camp>*+*{border-top:0}
.ads-camp-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.ads-camp-h b{font:700 15px/1.35 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-camp-m{display:flex;flex-wrap:wrap;gap:4px 14px;color:var(--muted);font:500 13px/1.4 'Manrope',sans-serif}
.ads-budget{display:flex;flex-direction:column;gap:4px;color:var(--muted);font:500 13px/1.4 'Manrope',sans-serif}
.ads-bar{height:6px;border-radius:99px;background:var(--surface-2);overflow:hidden}
.ads-bar span{display:block;height:100%;border-radius:99px;background:var(--accent)}
.ads-camp-s{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px 10px;margin:0}
.ads-camp-s div{min-width:0}
.ads-camp-s dt{color:var(--muted);font:600 12px/1.3 'Manrope',sans-serif}
.ads-camp-s dd{margin:0;color:var(--ink);font:700 15px/1.35 'Manrope',sans-serif;font-variant-numeric:tabular-nums}
/* График расхода: одна серия, столбики со скруглённым верхом и зазором 2 px. */
.ads-chart{--ads-bar:#1d7652;max-width:460px;margin:2px 0 0}
.ads-chart-bars{display:flex;align-items:flex-end;gap:2px;height:56px;border-bottom:1px solid var(--line)}
.ads-chart-col{flex:1 1 0;display:flex;align-items:flex-end;min-width:0;height:100%;margin:0;padding:0;border:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ads-chart-col i{display:block;width:100%;border-radius:4px 4px 0 0;background:var(--ads-bar)}
.ads-chart-col.is-today i{opacity:.5}
.ads-chart-col:is(:hover,.on) i{box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--ads-bar)}
.ads-chart-col:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.ads-chart figcaption{margin-top:4px;color:var(--muted);font:500 12px/1.4 'Manrope',sans-serif;min-height:17px}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ads-chart{--ads-bar:#4fa373}}
:root[data-theme=dark] .ads-chart{--ads-bar:#4fa373}
.ads-bns>summary{cursor:pointer;padding:4px 0;color:var(--lime-ink);font:700 13px/1.3 'Manrope',sans-serif}
.ads-bgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:8px}
.ads-bn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}
.ads-bn img,.ads-bn-noimg{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:10px;background:var(--surface-2)}
.ads-bn b{font:700 13px/1.35 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-bn-chips{display:flex;flex-wrap:wrap;gap:4px 8px}
.ads-bn-why{color:var(--danger);font:500 12px/1.4 'Manrope',sans-serif;overflow-wrap:anywhere}
.ads-bn-s{color:var(--muted);font:500 12px/1.4 'Manrope',sans-serif}
.ads-bn .btn{min-height:34px}
.ads-camp-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.ads-camp-acts .btn{flex:1 1 140px;max-width:260px;min-height:44px;border-radius:12px;font-weight:700}
.ads-aps-fold.is-hot>summary{color:var(--danger)}
@media (max-width:900px){
  body.ads-project-page #view{padding:0}
  .ads-nav{padding-top:max(5px,env(safe-area-inset-top))}
  .ads-tabs,.ads-aps-fold{margin-left:max(12px,env(safe-area-inset-left));margin-right:max(12px,env(safe-area-inset-right))}
  .ads-body{padding:0 max(12px,env(safe-area-inset-right)) 18px max(12px,env(safe-area-inset-left))}
  .ads-chatwrap{padding:0 max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
  .ads-chatpage{height:var(--tgvh,100dvh)}
  .ads-f3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ads-f3 .ads-f:last-child{grid-column:1/-1}
}
@media (min-width:901px){
  body.ads-project-page #view{padding-top:0;padding-bottom:0}
  .ads-page{max-width:1180px}
  .ads-page>.pnav{padding-left:0;padding-right:0}
  .ads-chatpage{height:calc(100dvh - 56px)}
  .ads-chatwrap .chatbox{max-height:none}
}
