/* Добрыня — виджет ИИ-помощника (site-wide). Только .db-* правила, без глобальных html/body. */
.db-launcher{
  --agro-green:#239665;--agro-green-dark:#1e7e56;--agro-mint:#eef7f2;
  --agro-ink:#1f2a24;--agro-muted:#6d7e75;--agro-border:#d8e7df;
  position:fixed;right:22px;bottom:20px;
  width:62px;height:62px;border:0;border-radius:14px;cursor:pointer;
  z-index:2147483001;background:#239665;
  box-shadow:0 14px 32px rgba(23,84,59,.33);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
  display:inline-flex;align-items:center;justify-content:center;
  font-family:Manrope,Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
.db-launcher:hover{transform:translateY(-2px);background:#1e7e56;box-shadow:0 18px 36px rgba(23,84,59,.4)}
.db-launcher-dot{display:block;position:relative;width:26px;height:26px}
.db-launcher-dot::before,.db-launcher-dot::after{content:"";position:absolute;background:#fff}
.db-launcher-dot::before{width:15px;height:22px;border-radius:15px 2px 15px 2px;left:5px;top:2px;transform:rotate(-28deg)}
.db-launcher-dot::after{width:2px;height:18px;left:12px;top:6px;border-radius:2px;opacity:.9;transform:rotate(-28deg)}

.db-widget{
  --agro-green:#239665;--agro-green-dark:#1e7e56;--agro-mint:#eef7f2;
  --agro-ink:#1f2a24;--agro-muted:#6d7e75;--agro-border:#d8e7df;
  position:fixed;right:22px;bottom:94px;
  width:min(398px,calc(100vw - 26px));height:min(640px,calc(100vh - 118px));
  background:#fff;border:1px solid #d8e7df;border-radius:16px;
  overflow:hidden;display:none;flex-direction:column;z-index:2147483002;
  box-shadow:0 30px 68px rgba(17,46,33,.36);
  font-family:Manrope,Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:#1f2a24;line-height:1.4;text-align:left;
}
.db-widget.open{display:flex}
.db-head{background:linear-gradient(180deg,#f6fbf8,#edf8f2);border-bottom:1px solid #d8e7df;color:#1f2a24;padding:12px 14px;display:flex;align-items:center;justify-content:space-between}
.db-title{font-weight:800;font-size:17px;letter-spacing:.2px}
.db-sub{font-size:12px;color:#5f7268}
.db-close{border:0;background:transparent;color:#607268;font-size:30px;line-height:1;cursor:pointer;padding:0 4px}
.db-close:hover{color:#2f4238}
.db-body{flex:1;overflow:auto;background:#eef7f2;padding:12px}
.db-form{display:flex;gap:8px;padding:10px;border-top:1px solid #d8e7df;background:#fff}
.db-form textarea{flex:1;min-height:42px;max-height:120px;resize:vertical;border:1px solid #c8ddd2;border-radius:10px;padding:10px 12px;font:inherit;color:#1f2a24}
.db-form textarea:focus{outline:none;border-color:#239665;box-shadow:0 0 0 3px rgba(35,150,101,.13)}
.db-form button{border:0;border-radius:10px;padding:0 14px;background:#239665;color:#fff;cursor:pointer;font-size:20px;min-width:48px}
.db-form button:hover{background:#1e7e56}
.db-msg{max-width:88%;padding:10px 12px;border-radius:12px;margin-bottom:8px;white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.42}
.db-msg.user{margin-left:auto;background:#239665;color:#fff;border-bottom-right-radius:6px}
.db-msg.bot{margin-right:auto;background:#fff;color:#203127;border:1px solid #d7e8df;border-bottom-left-radius:6px}
.db-product-list{display:grid;gap:9px;margin-top:10px;white-space:normal}
.db-product-card{display:grid;grid-template-columns:74px minmax(0,1fr);gap:10px;align-items:stretch;text-decoration:none;color:#1f2a24;background:linear-gradient(180deg,#fbfefc,#f1f8f4);border:1px solid #cfe4d8;border-radius:14px;padding:11px 12px;box-shadow:0 8px 18px rgba(31,84,58,.08);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.db-product-card:hover{transform:translateY(-1px);border-color:#239665;box-shadow:0 12px 24px rgba(31,84,58,.14)}
.db-product-img{width:74px;height:74px;object-fit:cover;border-radius:11px;background:#e8f4ee;border:1px solid #d7e8df}
.db-product-content{display:block;min-width:0}
.db-product-title{display:block;font-size:14px;line-height:1.25;color:#183425;margin-bottom:6px}
.db-product-desc{display:block;font-size:12.5px;line-height:1.35;color:#5b6f64;margin-bottom:8px}
.db-product-action{display:inline-flex;align-items:center;color:#1e7e56;font-weight:800;font-size:12px}
.db-product-action::after{content:"\2192";margin-left:6px}
@media (max-width:768px){
  .db-launcher{right:14px;bottom:14px;width:58px;height:58px;border-radius:12px}
  .db-widget{right:10px;bottom:80px;width:calc(100vw - 20px);height:72vh}
  .db-product-card{grid-template-columns:62px minmax(0,1fr);gap:9px;padding:10px}
  .db-product-img{width:62px;height:62px}
}
