/* Scoped additions to the supplied OsmosMarket theme. */
:root {/* --osmx-blue:#153b85;*/ --osmx-blue:#0c7bdf; --osmx-ink:#172338; --osmx-muted:#607087; --osmx-line:#dfe5ee; --osmx-soft:#f3f6fb; }
.osmx-btn,.osmx-direction,.osmx-task,.osmx-filter,.osmx-channel { text-decoration:none!important; box-sizing:border-box; }
.osmx-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:48px; padding:13px 18px; border:1px solid transparent; border-radius:12px; font:inherit; font-size:14px; font-weight:700; line-height:1.4; text-align:center; cursor:pointer; }
.osmx-btn--primary { background:var(--osmx-blue); color:#fff!important; }
.osmx-btn--primary:hover { background:#0e2d68; box-shadow:0 5px 16px #153b851b; }
.osmx-btn:focus-visible,.osmx-buy:focus-visible,.osmx-channel:focus-visible,.osmx-direction:focus-visible,.osmx-task:focus-visible,.osmx-dialog__close:focus-visible,.osmx-quantity button:focus-visible,.osmx-filter:focus-visible { outline:3px solid #67a3ed; outline-offset:3px; }
.osmx-purposes { margin:3px 0 12px; color:var(--osmx-blue); font-size:13px; font-weight:600; line-height:1.55; overflow-wrap:anywhere; }
.osmx-purposes span[aria-hidden] { color:#94a2b8; padding:0 2px; }
.osmx-features { list-style:none; padding:0; margin:0 0 16px; color:#3d4b5f; font-size:13px; line-height:1.55; }
.osmx-features li { display:flex; align-items:baseline; gap:8px; margin:0 0 6px; }
.osmx-feature-mark { color:#21824e; flex:0 0 13px; font-weight:700; }
.osmx-features li>span:last-child { min-width:0; overflow-wrap:anywhere; }
.osmx-cards .wm-card { width:100%; max-width:none; min-width:0; border:1px solid var(--osmx-line); border-radius:16px; padding:18px; }
.osmx-cards .wm-card:hover { border-radius:16px; box-shadow:0 8px 26px #1723380b; z-index:auto; }
.osmx-cards .wm-card__title { height:auto; min-height:0; font-size:16px; line-height:1.4; margin:0 0 9px; }
.osmx-cards .wm-card__rating { margin-bottom:10px; }
.osmx-cards .wm-card__meta { margin-bottom:12px; }
.osmx-card-bottom { margin-top:auto; padding-top:14px; width:100%; }
.osmx-card-price { min-height:50px; margin-bottom:12px; display:flex; flex-direction:column; justify-content:flex-end; }
.osmx-card-price strong { color:#142236; font-size:24px; font-weight:750; line-height:1.25; }
.osmx-card-price del { color:#8b95a6; font-size:13px; }
.osmx-card-bottom>.osmx-btn { width:100%; }
.osmx-direct-buy { display:flex; align-items:center; gap:10px; margin-top:12px; padding-top:12px; border-top:1px solid #edf0f5; }
.osmx-quantity { display:flex; height:38px; border:1px solid var(--osmx-line); border-radius:8px; flex:0 0 86px; overflow:hidden; }
.osmx-quantity button { border:0; background:#f6f8fb; width:25px; padding:0; color:#41516a; cursor:pointer; }
.osmx-quantity input { width:34px; padding:0; border:0; min-width:0; text-align:center; font-size:13px; -moz-appearance:textfield; background:white; }
.osmx-quantity input::-webkit-inner-spin-button,.osmx-quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.osmx-buy { flex:1; background:transparent; border:0; color:#4d5d73; font:inherit; font-size:12px; font-weight:600; line-height:1.35; padding:8px 0; text-align:left; cursor:pointer; }
.osmx-buy:hover { color:var(--osmx-blue); text-decoration:underline; }
.osmx-cards.is-list .wm-card { display:grid; grid-template-columns:190px minmax(0,1fr) 265px; gap:0 22px; align-items:start; }
.osmx-cards.is-list .wm-card__top { grid-column:1; grid-row:1 / span 8; align-self:center; }
.osmx-cards.is-list .wm-card>:not(.wm-card__top):not(.osmx-card-bottom) { grid-column:2; }
.osmx-cards.is-list .osmx-card-bottom { grid-column:3; grid-row:1 / span 8; align-self:center; margin:0; }
.osmx-product-enabled .osmx-purposes { font-size:16px; margin:12px 0 18px; }
.osmx-product-brief { padding:20px; margin:16px 0 22px; background:var(--osmx-soft); border:1px solid #e6ebf4; border-radius:16px; }
.osmx-product-brief h2 { font-size:18px!important; font-weight:700; margin:0 0 13px!important; }
.osmx-product-brief .osmx-features { margin:0; font-size:14px; }
.osmx-product-consult { margin:18px 0 24px; scroll-margin-top:90px; }
.osmx-product-consult .osmx-btn { width:100%; min-height:56px; font-size:16px; }
.osmx-product-consult p { color:var(--osmx-muted); font-size:13px; line-height:1.55; text-align:center; margin:11px auto 0; max-width:440px; }
.osmx-product-enabled .wm-purchase-box__cart { background:#f0f4fa!important; color:var(--osmx-blue)!important; border:1px solid var(--osmx-line)!important; box-shadow:none; font-size:14px; line-height:1.35; }
.osmx-product-enabled .wm-purchase-box__top { padding-top:10px; }
.osmx-mobile-consult { display:none; }
.osmx-eyebrow { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:#6d82a0; }
.osmx-home-section { max-width:1440px; margin:0 auto; padding:32px 0 16px; }
.osmx-section-head { display:flex; justify-content:space-between; margin-bottom:24px; }
.osmx-section-head h2 { font-size:clamp(24px,3vw,34px); font-weight:750; letter-spacing:-.025em; line-height:1.2; margin:10px 0; color:var(--osmx-ink); }
.osmx-section-head p { color:var(--osmx-muted); font-size:15px; margin:0; line-height:1.5; }
.osmx-directions { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:12px; }
.osmx-direction { position:relative; display:flex; flex-direction:column; min-height:154px; gap:24px; padding:20px; background:#fff; border:1px solid var(--osmx-line); border-radius:16px; color:var(--osmx-ink)!important; }
.osmx-direction__number { font-size:12px; color:#8c9ab0; }
.osmx-direction strong { font-size:17px; line-height:1.35; padding-right:16px; font-weight:650; }
.osmx-direction__arrow { position:absolute; top:16px; right:18px; color:var(--osmx-blue); font-size:21px; }
.osmx-direction:hover,.osmx-task:hover { border-color:#9db4d8; box-shadow:0 8px 24px #153b850a; }
.osmx-tasks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.osmx-task { display:flex; align-items:flex-start; gap:15px; padding:24px 20px; min-height:135px; border-radius:16px; background:white; border:1px solid var(--osmx-line); color:var(--osmx-ink)!important; font:inherit; text-align:left; cursor:pointer; }
.osmx-task__icon { display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:12px; background:#edf3fd; color:var(--osmx-blue); font-size:24px; flex-shrink:0; }
.osmx-task__copy { flex:1; display:flex; flex-direction:column; gap:8px; min-width:0; }
.osmx-task__copy strong { font-size:16px; font-weight:650; line-height:1.35; }
.osmx-task__copy>span { color:var(--osmx-muted); font-size:13px; line-height:1.5; }
.osmx-task--expert { background:#153b85; border-color:#153b85; color:white!important; }
.osmx-task--expert .osmx-task__copy>span { color:#d8e5fc; }
.osmx-task--expert .osmx-task__icon { background:#ffffff20; color:white; }
.osmx-dialog { border:0; padding:0; width:calc(100% - 32px); max-width:480px; max-height:calc(100dvh - 32px); overflow:auto; border-radius:24px; background:white; color:var(--osmx-ink); box-shadow:0 24px 100px #0b203c44; }
.osmx-dialog:not([open]) { display:none; }
.osmx-dialog::backdrop { background:#0b162c88; backdrop-filter:blur(3px); }
.osmx-dialog__body { position:relative; padding:34px; }
.osmx-dialog__close { position:absolute; right:14px; top:12px; border:0; background:#f0f3f8; border-radius:50%; width:34px; height:34px; font-size:24px; line-height:1; color:#465976; cursor:pointer; }
.osmx-dialog h2 { font-size:26px; line-height:1.2; font-weight:750; margin:14px 0 12px; padding-right:10px; letter-spacing:-.025em; }
.osmx-dialog p { color:var(--osmx-muted); font-size:14px; line-height:1.6; margin:0 0 22px; }
.osmx-dialog .osmx-dialog__product { color:var(--osmx-blue); font-weight:600; font-size:13px; margin:0 0 12px; }
.osmx-dialog__product:empty { display:none; }
.osmx-dialog__channels { display:grid; gap:10px; }
.osmx-channel { display:flex; align-items:center; gap:12px; min-height:58px; padding:12px 15px; color:var(--osmx-ink)!important; border:1px solid var(--osmx-line); border-radius:12px; font-size:14px; font-weight:600; }
.osmx-channel[hidden] { display:none!important; }
.osmx-channel>span:nth-child(2) { flex:1; }
.osmx-channel__icon { font-size:20px; width:26px; color:var(--osmx-blue); }
.osmx-channel--viber .osmx-channel__icon { color:#7655b6; }
.osmx-channel--telegram .osmx-channel__icon { color:#168ac2; }
.osmx-channel:hover { background:#f7f9fd; border-color:#a8bbd8; }
.osmx-dialog__all { display:block; text-align:center; font-size:13px; color:#687b98; margin-top:20px; }
.osmx-modal-open { overflow:hidden; }
.osmx-filters { border:1px solid var(--osmx-line); border-radius:12px; margin:16px 0; background:white; }
.osmx-filters summary { padding:14px 18px; font-size:14px; font-weight:600; cursor:pointer; }
.osmx-filters summary>span { float:right; }
.osmx-filters__body { padding:0 18px 18px; }
.osmx-filter-group { margin:16px 0; }
.osmx-filter-group>strong { display:block; font-size:13px; margin-bottom:8px; }
.osmx-filter-options { display:flex; flex-wrap:wrap; gap:8px; }
.osmx-filter { display:inline-flex; padding:8px 12px; background:#f5f7fb; color:#4a5d77; border:1px solid #e1e7f0; border-radius:8px; font-size:12px; line-height:1.4; }
.osmx-filter:hover,.osmx-filter.is-active { background:var(--osmx-blue); color:white!important; border-color:var(--osmx-blue); }
.osmx-landing { max-width:1440px; margin:0 auto; padding:25px 18px 60px; }
.osmx-breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:26px; font-size:12px; }
.osmx-breadcrumbs a { color:var(--osmx-muted); }
.osmx-landing-head { max-width:760px; margin:0 0 30px; }
.osmx-landing-head h1 { font-size:clamp(30px,4vw,44px); font-weight:750; margin:12px 0; }
.osmx-landing-head p { color:var(--osmx-muted); line-height:1.6; margin:0 0 20px; }
.osmx-landing-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:28px 0 18px; font-size:14px; }
.osmx-landing-toolbar select { padding:10px; border:1px solid var(--osmx-line); border-radius:8px; background:#fff; }
.osmx-landing-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.osmx-landing-card { display:flex; flex-direction:column; background:white; }
.osmx-landing-image { display:block; text-align:center; margin-bottom:12px; }
.osmx-landing-image img { object-fit:contain; width:100%; height:220px; }
.osmx-landing-card h2 a { color:var(--osmx-ink); text-decoration:none; }
.osmx-stock { color:#2b8757; display:block; margin-bottom:10px; }
.osmx-stock.is-outstock { color:#7c8797; }
.osmx-pagination { text-align:center; margin-top:30px; }
.osmx-empty { padding:35px 0; font-size:17px; color:var(--osmx-muted); }
@media(max-width:1100px) { .osmx-landing-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .osmx-tasks { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:991px) {
  .osmx-mobile-consult { display:flex; width:100%; grid-column:1 / -1; min-height:42px; padding:9px 12px; }
  .wm-mobile-buybar.osmx-buybar { display:grid; grid-template-columns:1fr 1.2fr; gap:8px 12px; padding:10px 14px calc(10px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid var(--osmx-line); }
  .osmx-buybar .wm-mobile-buybar__qty { display:none; }
  .osmx-buybar .wm-mobile-buybar__price { font-size:21px; }
  .osmx-buybar .wm-mobile-buybar__button { background:#eef3fa; color:var(--osmx-blue); border:1px solid #dfe7f2; padding:10px; font-size:12px; height:auto; min-height:40px; }
  body.osmx-has-buybar { padding-bottom:var(--osmx-buybar-height,140px)!important; }
}
@media(max-width:767px) {
  .osmx-cards { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  .osmx-cards .wm-card { padding:12px; border-radius:12px; }
  .osmx-cards .wm-card__title { font-size:14px; height:auto!important; min-height:0!important; -webkit-line-clamp:unset; overflow:visible; }
  .osmx-cards .wm-card__img { height:155px; }
  .osmx-cards .osmx-purposes { font-size:11px; }
  .osmx-cards .osmx-features { font-size:11px; }
  .osmx-cards .osmx-card-price strong { font-size:21px; }
  .osmx-cards .osmx-btn { font-size:12px; padding:10px 8px; min-height:52px; }
  .osmx-cards.is-list { grid-template-columns:1fr!important; }
  .osmx-cards.is-list .wm-card { display:flex; }
  .osmx-direct-buy { flex-wrap:wrap; gap:6px; }
  .osmx-quantity { flex-basis:86px; height:34px; }
  .osmx-buy { flex-basis:100%; font-size:11px; }
  .osmx-product-brief { padding:16px; }
  .osmx-home-section { padding:22px 0 12px; }
  .osmx-directions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .osmx-direction { padding:16px; min-height:135px; gap:20px; }
  .osmx-direction strong { font-size:15px; }
  .osmx-tasks { grid-template-columns:1fr; gap:10px; }
  .osmx-task { min-height:104px; padding:20px 16px; }
  .osmx-landing-toolbar { align-items:flex-start; flex-direction:column; }
  .osmx-landing { padding:20px 12px 40px; }
  .osmx-dialog__body { padding:30px 24px; }
  .osmx-dialog h2 { font-size:24px; }
}
@media(prefers-reduced-motion:reduce) { .osmx-btn,.osmx-direction,.osmx-task,.osmx-cards .wm-card { transition:none!important; } }
