/* book.css — стили общего окна записи (book.js) для сайта и кабинета. Всё внутри .bkdlg, чтобы не задеть страницу.
   Цвета — токены theme.css (Carbon, светлая и тёмная). Вид — как окно записи главной (seo.css, вариант A, v2). */
.bkdlg{border:0;border-top:3px solid var(--ds-accent);padding:0;margin:auto;width:min(560px,100%);max-height:calc(100% - 32px);background:var(--pg);color:var(--ds-text);font-family:var(--ds-font)}
.bkdlg::backdrop{background:var(--ds-overlay)}
.bkdlg[open]{animation:bkpop .24s cubic-bezier(.4,.14,.3,1)}
@keyframes bkpop{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
@keyframes bksheet{from{transform:translateY(100%)}to{transform:none}}
@keyframes bkbump{0%{transform:scale(1)}40%{transform:scale(1.35)}100%{transform:scale(1)}}
@keyframes bkitem{0%{box-shadow:inset 3px 0 0 var(--green-line),0 0 0 2px var(--green-line)}100%{box-shadow:inset 3px 0 0 var(--green-line),0 0 0 0 transparent}}
.bkdlg *{box-sizing:border-box}
.bkdlg .dlg-in{padding:20px 24px 24px;overflow:auto;max-height:inherit;font-size:14px;line-height:1.4}
.bkdlg .dlg-h{display:flex;justify-content:flex-start;align-items:center;gap:12px;margin-bottom:12px}
.bkdlg .dlg-h h2{margin:0;font-size:clamp(17px,4.6vw,20px);font-weight:400;white-space:nowrap;outline:0}
.bkdlg .dlg-act{margin-left:auto;display:inline-flex;align-items:center;gap:10px;flex:none}
.bkdlg .x{font:inherit;font-size:22px;line-height:1;width:36px;height:36px;padding:0;background:none;border:0;color:var(--ds-text-2);cursor:pointer;flex:none}
.bkdlg .x:hover{background:var(--hover);color:var(--ds-text)}
.bkdlg .small{font-size:13px;line-height:1.45;color:var(--ds-text-2)}
.bkdlg .err{color:var(--red-fg);font-size:13.5px;min-height:20px;margin:0}
.bkdlg .btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:46px;padding:11px 16px;font:400 14px/1.29 var(--ds-font);letter-spacing:.16px;border:0;border-radius:0;cursor:pointer;text-decoration:none}
.bkdlg .btn:active{transform:translateY(1px)}
.bkdlg .btn-p{background:var(--ds-accent);color:var(--ds-on-accent)}
.bkdlg .btn-p:hover{background:var(--ds-accent-hover)}
.bkdlg .btn-p:disabled{opacity:.6;cursor:default}
.bkdlg .btn-g{background:transparent;color:var(--ds-link);border:1px solid var(--ds-accent)}
.bkdlg .btn-g:hover{background:var(--ds-accent);color:var(--ds-on-accent)}
.bkdlg .arr{display:inline-block;font-size:17px;line-height:1}
.bkdlg .bk-go{width:100%;margin:4px 0 8px}
.bkdlg .fld{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;font-size:13px;color:var(--ds-text-2)}
.bkdlg .fld select,.bkdlg .fld input:not([type=checkbox]),.bkdlg .fld textarea{font:inherit;font-size:15px;color:var(--ds-text);background:var(--pg-alt);border:0;border-bottom:1px solid var(--ds-border-strong);
  min-height:42px;padding:0 12px;border-radius:0;width:100%}
.bkdlg .fld textarea{padding:10px 12px;min-height:72px;resize:vertical}
.bkdlg .fld :is(input,select,textarea):focus{outline:2px solid var(--ds-focus);outline-offset:-2px}
.bkdlg .chk{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:14px;color:var(--ds-text);cursor:pointer}
.bkdlg .chk input{width:18px;height:18px;flex:none;accent-color:var(--ds-accent)}
.bkdlg .chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.bkdlg .chips button{font:inherit;font-size:13.5px;letter-spacing:.16px;background:var(--card);color:var(--ds-text);border:1px solid var(--ds-border-strong);padding:6px 12px;cursor:pointer;border-radius:0}
.bkdlg .chips button:hover{background:var(--hover)}
.bkdlg .chips button[aria-pressed="true"]{background:var(--ds-accent);border-color:var(--ds-accent);color:var(--ds-on-accent)}
.bkdlg .chips button[disabled]{opacity:.45;cursor:not-allowed}
.bkdlg .cal{margin-top:10px;background:var(--pg-alt);padding:12px;border:1px solid var(--ds-border)}
.bkdlg .cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.bkdlg .cal-h b{font-weight:600;text-transform:capitalize;color:var(--ds-text)}
.bkdlg .cal-h button,.bkdlg .cal-g button{font:inherit;background:var(--card);color:var(--ds-text);border:1px solid var(--ds-border);cursor:pointer;border-radius:0}
.bkdlg .cal-h button{width:36px;height:32px;font-size:18px}
.bkdlg .cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.bkdlg .cal-w{font-size:11.5px;color:var(--ds-text-2);text-align:center;padding-bottom:2px}
.bkdlg .cal-g button{height:36px;font-size:14px;font-variant-numeric:tabular-nums}
.bkdlg .cal-g button:hover:not([disabled]){background:var(--hover)}
.bkdlg .cal-g button.today{box-shadow:inset 0 -2px 0 var(--ds-accent)}
.bkdlg .cal-g button[aria-pressed="true"]{background:var(--ds-accent);border-color:var(--ds-accent);color:var(--ds-on-accent)}
.bkdlg .cal-g button[disabled],.bkdlg .cal-h button[disabled]{opacity:.35;cursor:not-allowed}
.bkdlg .cal .small{margin-top:8px}
.bkdlg .bk-cart{flex:none;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px;font:inherit;color:var(--ds-text);background:none;border:1px solid var(--ds-border-strong);cursor:pointer;border-radius:0}
.bkdlg .bk-cart:hover{border-color:var(--ds-accent);color:var(--ds-link)}
.bkdlg .bk-cart b{min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;line-height:1;color:var(--ds-on-accent);background:var(--ds-accent)}
.bkdlg .bk-cart b[hidden],.bkdlg .bk-cart[hidden],.bkdlg [hidden]{display:none!important}
.bkdlg .bk-cart.bump b{animation:bkbump .45s ease-out}
.bkdlg .bk-items{margin-bottom:14px}
.bkdlg .bk-item{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px;margin-inline:-8px;font-size:14px;color:var(--ds-text);
  background:var(--green-bg);background:color-mix(in srgb,var(--green-line) 16%,transparent);box-shadow:inset 3px 0 0 var(--green-line);border-bottom:1px solid var(--pg)}
.bkdlg .bk-item.new{animation:bkitem .9s ease-out}
.bkdlg .bk-item b{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.bkdlg .bk-item b s{font-weight:400;font-size:12.5px;color:var(--ds-text-2);margin-right:4px}
.bkdlg .bk-sum{background:var(--pg-alt);padding:10px 14px;margin-bottom:12px;color:var(--ds-text)}
.bkdlg .bk-sum div{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:14px}
.bkdlg .bk-sum b{font-weight:600;font-variant-numeric:tabular-nums}
.bkdlg .bk-sum .tot{margin:6px -14px 0;padding:10px 14px;font-size:16px;background:var(--green-bg);background:color-mix(in srgb,var(--green-line) 16%,transparent);color:var(--green-fg)}
.bkdlg .bk-sum .tot b{color:var(--green-fg)}
.bkdlg .bk-dnote{margin:6px 0 0;font-size:13px;color:var(--ds-text-2)}
.bkdlg .bk-note{font-size:13.5px;line-height:1.5;color:var(--ds-text);background:var(--pg-alt);padding:10px 14px;margin:4px 0 12px}
.bkdlg .consent{font-size:12px;line-height:1.45;color:var(--ds-text-2);margin:4px 0 8px}
.bkdlg .consent a{color:var(--ds-link)}
.bkdlg .bk-pick > span{color:var(--ds-text-2)}
.bkdlg .bk-pick .chips{margin-bottom:8px}
.bkdlg .bk-pick .pk-top{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.bkdlg .bk-pick .pk-at{flex:1;min-width:0;font-weight:600;font-size:14px;color:var(--ds-text)}
.bkdlg .bk-pick .pk-nav{flex:none;min-height:36px;padding:0 12px;font:inherit;font-size:13.5px;cursor:pointer}
.bkdlg .bk-pick .pk-done{order:2}
.bkdlg .lnk{font:inherit;font-size:13.5px;background:none;border:0;padding:6px 0 0;color:var(--ds-link);cursor:pointer;text-decoration:underline}
.bkdlg .decide{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.bkdlg .decide button{display:flex;align-items:center;gap:8px;font:inherit;font-size:14px;text-align:left;padding:11px 12px;background:var(--card);color:var(--ds-text);border:1px solid var(--ds-border-strong);cursor:pointer;border-radius:0}
.bkdlg .decide button:hover{background:var(--hover);border-color:var(--ds-accent)}
.bkdlg .ri{color:var(--ds-accent);display:inline-flex}
.bkdlg .decide.models{grid-template-columns:repeat(3,1fr);margin-top:4px}
.bkdlg .decide.models button{justify-content:center;font-weight:600;flex-direction:column;gap:2px}
.bkdlg .decide.models button small{display:block;font-weight:400;font-size:12px;color:var(--ds-text-2)}
.bkdlg .decide.pk3{grid-template-columns:repeat(3,1fr)}
.bkdlg .decide.pk3 button{flex-direction:column;justify-content:center;align-items:center;gap:6px;text-align:center;padding:12px 6px}
.bkdlg .decide.pk3 .ri{flex:none}
.bkdlg .decide.pk3 .ri svg{width:22px;height:22px}
.bkdlg .dev-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.bkdlg .dev-tiles button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;font:inherit;font-size:14px;text-align:left;padding:10px 12px;cursor:pointer;background:var(--card);color:var(--ds-text);border:1px solid var(--ds-border-strong);border-radius:0}
.bkdlg .dev-tiles button:hover{background:var(--hover)}
.bkdlg .dev-tiles button svg{color:var(--ds-accent)}
.bkdlg .bk-pick .decide button[aria-pressed="true"],.bkdlg .bk-pick .dev-tiles button[aria-pressed="true"]{border:2px solid var(--ds-accent);box-shadow:inset 0 0 0 1px var(--ds-accent)}
.bkdlg .bk-pick .decide.models button[aria-pressed="true"] small{color:var(--ds-text)}
.bkdlg .bk-done{color:var(--ds-text)}
.bkdlg .bk-done h3.bk-ok{display:flex;align-items:center;gap:10px;padding:12px 14px;margin:0 0 14px;font-size:20px;font-weight:600;background:var(--green-bg);color:var(--green-fg);border-left:3px solid var(--green-line)}
.bkdlg .bk-done h3.bk-ok svg{flex:none}
.bkdlg .bk-done p{margin:0 0 12px;line-height:1.5}
.bkdlg .bk-done .bk-go{display:flex;justify-content:center;margin-bottom:8px}
/* телефон: окно — шторка снизу */
@media (max-width:760px){
  .bkdlg{width:100%;max-width:100%;height:auto;max-height:90dvh;margin:auto 0 0}
  .bkdlg[open]{animation:bksheet .24s cubic-bezier(.4,.14,.3,1)}
  .bkdlg .dlg-in{padding:8px 16px calc(20px + env(safe-area-inset-bottom,0px))}
  .bkdlg .dlg-in::before{content:"";display:block;width:40px;height:4px;margin:0 auto 12px;background:var(--ds-border-strong)}
  .bkdlg .decide,.bkdlg .decide.models{grid-template-columns:1fr 1fr}
  .bkdlg .decide.pk3{grid-template-columns:repeat(3,1fr)}
}
@media (prefers-reduced-motion:reduce){.bkdlg[open],.bkdlg .bk-item.new,.bkdlg .bk-cart.bump b{animation:none}}
