/* tb-build kubatura-doski 68dafdb02ed7 */
/* kubatura-doski — ToolBoss deployment build. Source of truth: delivery/apps/kubatura-doski/app.css (cycle 2, accepted). */
/* Fonts: same-origin WOFF2 uploaded through the WP Font Library (/wp-content/uploads/fonts). */
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('/wp-content/uploads/fonts/manrope-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('/wp-content/uploads/fonts/manrope-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('/wp-content/uploads/fonts/playfair-display-cyrillic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('/wp-content/uploads/fonts/playfair-display-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('/wp-content/uploads/fonts/playfair-display-cyrillic-italic.woff2') format('woff2');unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('/wp-content/uploads/fonts/playfair-display-latin-italic.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

#js-tool-container-kubatura-doski .kd { --kd-bg: #f6f1e8; --kd-bg-2: #ede4d5; --kd-ink: #221a12; --kd-mute: #7a6a57; --kd-line: #ddd0bb; --kd-wood: #c98b4b; --kd-wood-2: #a86a2f; --kd-wood-3: #7d4a1b; --kd-wood-light: #e3b57f; --kd-accent: #b4552b; --kd-bad: #a7301e; --kd-card: #fffaf2; --kd-serif: 'Playfair Display', Georgia, 'Times New Roman', serif; --kd-sans: 'Manrope', system-ui, sans-serif; color: var(--kd-ink); font-family: var(--kd-sans); display: grid; gap: 22px; min-width: 0; }
html[data-theme="dark"] #js-tool-container-kubatura-doski .kd { --kd-bg: #1a1510; --kd-bg-2: #231c14; --kd-ink: #f3eadc; --kd-mute: #b3a28a; --kd-line: #3d3225; --kd-wood: #cf9354; --kd-wood-2: #a86a2f; --kd-wood-3: #6e4218; --kd-wood-light: #e8bf8c; --kd-accent: #f0975f; --kd-bad: #ff8f7a; --kd-card: #241d15; }
#js-tool-container-kubatura-doski .kd [hidden] { display: none !important; }
#js-tool-container-kubatura-doski .kd-stage { position: relative; overflow: hidden; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); align-items: center; gap: 24px; min-height: 420px; padding: 28px 36px; border-radius: 28px; background: linear-gradient(135deg, var(--kd-bg) 0%, var(--kd-bg-2) 100%); box-shadow: inset 0 0 0 1px var(--kd-line), 0 30px 60px -40px rgba(60, 35, 10, .45); }
#js-tool-container-kubatura-doski .kd-stage__glow { position: absolute; inset: auto -10% -40% auto; width: 60%; aspect-ratio: 1; border-radius: 50%; z-index: -1; background: radial-gradient(closest-side, color-mix(in srgb, var(--kd-wood) 45%, transparent), transparent 70%); filter: blur(10px); }
#js-tool-container-kubatura-doski .kd-hero { margin: 0; min-width: 0; }
#js-tool-container-kubatura-doski .kd-hero svg { display: block; width: 100%; height: auto; max-height: 380px; }
#js-tool-container-kubatura-doski .kd-hero .kd-face-top { fill: var(--kd-wood-light); }
#js-tool-container-kubatura-doski .kd-hero .kd-face-front { fill: var(--kd-wood); }
#js-tool-container-kubatura-doski .kd-hero .kd-face-side { fill: var(--kd-wood-2); }
#js-tool-container-kubatura-doski .kd-hero .kd-grain { stroke: var(--kd-wood-3); stroke-width: 1.1; fill: none; opacity: .45; }
#js-tool-container-kubatura-doski .kd-hero .kd-edge { fill: none; stroke: var(--kd-wood-3); stroke-width: 1; opacity: .6; stroke-linejoin: round; }
#js-tool-container-kubatura-doski .kd-hero .kd-shadow { fill: rgba(40, 20, 0, .28); filter: blur(6px); }
#js-tool-container-kubatura-doski .kd-hero .kd-dim { fill: none; stroke: var(--kd-mute); stroke-width: 1.2; }
#js-tool-container-kubatura-doski .kd-hero .kd-dim-t { fill: var(--kd-ink); font: 700 14px var(--kd-sans); }
#js-tool-container-kubatura-doski .kd-hero .kd-dim-t small { font-weight: 500; }
#js-tool-container-kubatura-doski .kd-hero .kd-ghost { opacity: .7; }
#js-tool-container-kubatura-doski .kd-stage--empty .kd-hero { opacity: .9; }
#js-tool-container-kubatura-doski .kd-stage--empty .kd-total__num, #js-tool-container-kubatura-doski .kd-stage--empty .kd-total__sub { display: none; }
#js-tool-container-kubatura-doski .kd-total { display: grid; gap: 8px; align-content: center; min-width: 0; }
#js-tool-container-kubatura-doski .kd-total__label { margin: 0; font: italic 500 1.05rem/1 var(--kd-serif); color: var(--kd-mute); letter-spacing: .01em; }
#js-tool-container-kubatura-doski .kd-total__num { margin: 0; display: flex; align-items: baseline; gap: 10px; font: 800 clamp(3.2rem, 7vw, 6rem)/.95 var(--kd-sans); letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
#js-tool-container-kubatura-doski .kd-total__num small { font: 500 1.2rem/1 var(--kd-sans); color: var(--kd-mute); letter-spacing: 0; }
#js-tool-container-kubatura-doski .kd-total__sub { margin: 0; color: var(--kd-mute); font-size: .98rem; }
#js-tool-container-kubatura-doski .kd-total__sub b { color: var(--kd-ink); font-weight: 800; }
#js-tool-container-kubatura-doski .kd-total__cost { margin: 8px 0 0; display: grid; gap: 2px; font: 800 2rem/1 var(--kd-sans); color: var(--kd-accent); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
#js-tool-container-kubatura-doski .kd-total__cost small { font: 500 .88rem/1.3 var(--kd-sans); color: var(--kd-mute); letter-spacing: 0; }
#js-tool-container-kubatura-doski .kd-total__hint { margin: 0; font: italic 400 clamp(1.3rem, 2.4vw, 1.9rem)/1.25 var(--kd-serif); color: var(--kd-ink); max-width: 22ch; }
#js-tool-container-kubatura-doski .kd-ruler { display: grid; gap: 14px; }
#js-tool-container-kubatura-doski .kd-presets { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
#js-tool-container-kubatura-doski .kd-presets button { min-height: 40px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--kd-line); background: var(--kd-card); color: var(--kd-ink); font: 700 .88rem/1 var(--kd-sans); letter-spacing: .01em; cursor: pointer; transition: transform .15s ease, border-color .15s ease, background .15s ease; }
#js-tool-container-kubatura-doski .kd-presets button:hover { transform: translateY(-1px); border-color: var(--kd-wood); }
#js-tool-container-kubatura-doski .kd-presets button[aria-pressed="true"] { background: var(--kd-ink); color: var(--kd-bg); border-color: var(--kd-ink); }
#js-tool-container-kubatura-doski .kd-presets__note { color: var(--kd-mute); font-size: .85rem; margin-left: 4px; }
#js-tool-container-kubatura-doski .kd-line { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr 1.25fr 1fr; align-items: end; gap: 6px 10px; padding: 18px 22px 20px; border-radius: 22px; background: var(--kd-card); box-shadow: inset 0 0 0 1px var(--kd-line); }
#js-tool-container-kubatura-doski .kd-cell { display: grid; gap: 6px; min-width: 0; }
#js-tool-container-kubatura-doski .kd-cell__k { font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; color: var(--kd-mute); font-weight: 700; }
#js-tool-container-kubatura-doski .kd-cell__k i { font-style: normal; text-transform: none; letter-spacing: 0; font-weight: 500; opacity: .8; }
#js-tool-container-kubatura-doski .kd-cell__v { display: flex; align-items: baseline; gap: 6px; border-bottom: 2px solid var(--kd-line); transition: border-color .15s; min-width: 0; }
#js-tool-container-kubatura-doski .kd-cell__v:focus-within { border-bottom-color: var(--kd-wood); }
#js-tool-container-kubatura-doski .kd-cell__v input { width: 100% !important; min-width: 0 !important; min-height: 48px !important; padding: 4px 0 !important; border: 0 !important; background: transparent !important; color: var(--kd-ink) !important; font: 800 2rem/1 var(--kd-sans) !important; letter-spacing: -.03em !important; font-variant-numeric: tabular-nums !important }
#js-tool-container-kubatura-doski .kd-cell__v input::placeholder { color: color-mix(in srgb, var(--kd-mute) 45%, transparent) !important; font-weight: 600 !important }
#js-tool-container-kubatura-doski .kd-cell__v input:focus { outline: none !important }
#js-tool-container-kubatura-doski .kd-cell__v em { font-style: normal; color: var(--kd-mute); font-size: .95rem; white-space: nowrap; }
#js-tool-container-kubatura-doski .kd-cell--bad .kd-cell__v { border-bottom-color: var(--kd-bad); }
#js-tool-container-kubatura-doski .kd-cell--bad .kd-cell__v input { color: var(--kd-bad) !important }
#js-tool-container-kubatura-doski .kd-x { font: 300 2.2rem/1 var(--kd-sans); color: var(--kd-mute); padding-bottom: 10px; }
#js-tool-container-kubatura-doski .kd-mode { display: inline-flex; gap: 2px; padding: 3px; border-radius: 999px; background: var(--kd-bg-2); width: max-content; }
#js-tool-container-kubatura-doski .kd-mode button { min-height: 40px; padding: 6px 16px; border: 0; border-radius: 999px; background: transparent; color: var(--kd-mute); font: 700 .78rem/1 var(--kd-sans); letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
#js-tool-container-kubatura-doski .kd-mode button[aria-pressed="true"] { background: var(--kd-ink); color: var(--kd-bg); }
#js-tool-container-kubatura-doski .kd-error { margin: 0; padding: 12px 16px; border-radius: 14px; background: color-mix(in srgb, var(--kd-bad) 10%, transparent); color: var(--kd-bad); font-weight: 600; }
#js-tool-container-kubatura-doski .kd-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
#js-tool-container-kubatura-doski .kd-fact { position: relative; margin: 0; padding: 18px 20px; border-radius: 20px; background: var(--kd-card); box-shadow: inset 0 0 0 1px var(--kd-line); display: grid; gap: 4px; align-content: start; min-width: 0; overflow: hidden; }
#js-tool-container-kubatura-doski .kd-fact__k { margin: 0; font: italic 500 .98rem/1.2 var(--kd-serif); color: var(--kd-mute); }
#js-tool-container-kubatura-doski .kd-fact__v { margin: 4px 0 0; display: flex; align-items: baseline; gap: 6px; font: 800 2rem/1 var(--kd-sans); letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
#js-tool-container-kubatura-doski .kd-fact__v small { font: 500 .9rem/1 var(--kd-sans); color: var(--kd-mute); letter-spacing: 0; }
#js-tool-container-kubatura-doski .kd-fact__v--txt { font-size: 1.3rem; letter-spacing: -.01em; }
#js-tool-container-kubatura-doski .kd-fact__d { margin: 2px 0 0; font-size: .82rem; color: var(--kd-mute); line-height: 1.35; }
#js-tool-container-kubatura-doski .kd-fact--cube { padding-right: 116px; }
#js-tool-container-kubatura-doski .kd-cube { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 88px; height: 88px; }
#js-tool-container-kubatura-doski .kd-cube .kd-cube-frame { fill: none; stroke: var(--kd-line); stroke-width: 1.5; stroke-dasharray: 3 3; }
#js-tool-container-kubatura-doski .kd-cube .kd-cube-board { fill: var(--kd-wood); stroke: var(--kd-card); stroke-width: .6; }
#js-tool-container-kubatura-doski .kd-method { margin: 0; max-width: 900px; color: var(--kd-mute); font-size: .88rem; line-height: 1.5; }
@media (max-width: 1000px) {
  #js-tool-container-kubatura-doski .kd-stage { grid-template-columns: 1fr; padding: 22px; min-height: 0; }
  #js-tool-container-kubatura-doski .kd-hero svg { max-height: 300px; }
  #js-tool-container-kubatura-doski .kd-line { grid-template-columns: 1fr auto 1fr auto 1fr; }
  #js-tool-container-kubatura-doski .kd-cell--switch, #js-tool-container-kubatura-doski .kd-cell--price { grid-column: span 2; }
  #js-tool-container-kubatura-doski .kd-cell--price { grid-column: span 3; }
  #js-tool-container-kubatura-doski .kd-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  #js-tool-container-kubatura-doski .kd { gap: 16px; }
  #js-tool-container-kubatura-doski .kd-stage { padding: 18px 18px 22px; border-radius: 22px; gap: 10px; }
  #js-tool-container-kubatura-doski .kd-hero svg { max-height: 220px; }
  #js-tool-container-kubatura-doski .kd-total__num { font-size: 3.4rem; }
  #js-tool-container-kubatura-doski .kd-presets { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  #js-tool-container-kubatura-doski .kd-presets button { flex: 0 0 auto; }
  #js-tool-container-kubatura-doski .kd-presets__note { display: none; }
  #js-tool-container-kubatura-doski .kd-line { grid-template-columns: 1fr 1fr; padding: 14px 16px 16px; gap: 10px 12px; }
  #js-tool-container-kubatura-doski .kd-x { display: none; }
  #js-tool-container-kubatura-doski .kd-cell--switch, #js-tool-container-kubatura-doski .kd-cell--price { grid-column: 1 / -1; }
  #js-tool-container-kubatura-doski .kd-cell__v input { font-size: 1.6rem !important; min-height: 44px !important }
  #js-tool-container-kubatura-doski .kd-facts { grid-template-columns: 1fr; }
}

/* ===== ToolBoss host integration (id-scoped) ===== */
/* 1. Wrapper neutralised: our block is the tool itself, no theme card around it. Focus mode («На весь экран») keeps its own padding. */
#js-tool-container-kubatura-doski:not(.tb-focus-mode) { border: 0 !important; background: transparent !important; box-shadow: none !important; padding: 0 !important; border-radius: 0 !important; overflow: visible !important; contain: layout style !important; }
#js-tool-container-kubatura-doski > .js-premium-app-html-content { display: contents; padding: 0 !important; background: transparent !important; }
/* 1b. Focus mode: core.min.css forces `background:0 0!important` on `:has(.tb-zone)` wrappers (wins in dark), so the page would show through the fixed overlay — paint it with the page background. */
#js-tool-container-kubatura-doski.tb-focus-mode { background: var(--bg0, #f4f5f7) !important; }
html[data-theme="dark"] #js-tool-container-kubatura-doski.tb-focus-mode { background: var(--bg0, #0b0c10) !important; }
/* 2. .tb-zone on the app root switches the wrapper into zone layout (action links become the rounded end); the zone card itself is zeroed. */
#js-tool-container-kubatura-doski .tb-zone.kd { background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; box-shadow: none !important; margin: 0 !important; font-size: 1rem; line-height: 1.55; }
/* 3. Theme control resets (tools-engine / semantic-dark force these with !important). Kept at (1,0,x) specificity so app rules win. */
#js-tool-container-kubatura-doski input:where(:not([type="range"], [type="checkbox"], [type="radio"])), #js-tool-container-kubatura-doski :where(select, textarea) { height: auto !important; border-radius: 0 !important; padding: 1px 2px !important; font-weight: inherit !important; }
#js-tool-container-kubatura-doski :where(select) { border-radius: 8px !important; }
#js-tool-container-kubatura-doski :where(input, select, textarea):focus { background-color: transparent !important; box-shadow: none !important; }
#js-tool-container-kubatura-doski :where(label) { color: inherit !important; }
#js-tool-container-kubatura-doski :where(table, thead, tbody, tr, th, td) { color: inherit; background: transparent; }
#js-tool-container-kubatura-doski :where([class*="val"], [class*="result"], [id*="res"]) { line-height: inherit !important; max-width: none !important; overflow-wrap: normal !important; word-break: normal !important; font-variant-numeric: inherit !important; }

