:root{--bg:#f6f9ff;--card:#fff;--text:#0f172a;--muted:#64748b;--line:#e2e8f0;--primary:#ff7a1a;--primary-dark:#ea580c;--primary-soft:#fff3e8;--success:#16a34a;--danger:#dc2626;--shadow:0 12px 36px rgba(15,23,42,.08);--shadow-lg:0 24px 80px rgba(249,115,22,.14);--radius:20px;--container:1240px;--header-h:76px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 0 0,rgba(249,115,22,.08),transparent 24%),linear-gradient(180deg,#fff 0%,var(--bg) 100%)}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{max-width:var(--container);margin:0 auto;padding:0 16px}.hidden{display:none!important}.muted{color:var(--muted)}.sticky-header{position:sticky;top:0;z-index:1000;height:var(--header-h);border-bottom:1px solid transparent;transition:.25s}.sticky-header.scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(14px);box-shadow:0 12px 36px rgba(15,23,42,.08);border-color:rgba(226,232,240,.95)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:900;letter-spacing:-.04em}.brand-badge{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--primary),#ffb066);box-shadow:0 10px 24px rgba(249,115,22,.24)}.desktop-nav{display:none;align-items:center;gap:22px}.desktop-nav a{font-weight:700;color:#334155}.desktop-nav a:hover{color:var(--primary)}.header-actions{display:flex;gap:10px;align-items:center}.btn{border:none;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px rgba(249,115,22,.24)}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:#fff;color:var(--primary-dark);border:1px solid #fed7aa;box-shadow:var(--shadow)}.btn-light{background:var(--primary-soft);color:var(--primary-dark)}.btn-ghost{background:transparent;border:1px solid var(--line);color:#334155}.btn-full{width:100%}.burger-btn{width:44px;height:44px;border:none;border-radius:12px;background:#fff;box-shadow:var(--shadow);display:grid;place-items:center;cursor:pointer}.burger-lines{width:20px;height:14px;position:relative}.burger-lines span{position:absolute;left:0;width:100%;height:2px;background:#111827;border-radius:8px;transition:.25s}.burger-lines span:nth-child(1){top:0}.burger-lines span:nth-child(2){top:6px}.burger-lines span:nth-child(3){top:12px}.burger-btn.active .burger-lines span:nth-child(1){transform:translateY(6px) rotate(45deg)}.burger-btn.active .burger-lines span:nth-child(2){opacity:0}.burger-btn.active .burger-lines span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu{display:none;background:rgba(255,255,255,.98);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 20px 40px rgba(17,24,39,.08)}.mobile-menu.open{display:block}.mobile-menu-inner{padding:12px 16px 18px;display:flex;flex-direction:column;gap:10px}.section{padding:68px 0;scroll-margin-top:96px}.section-head{margin-bottom:24px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.section-head h2{margin:0;font-size:34px;line-height:1.04;letter-spacing:-.04em}.section-head p{margin:8px 0 0;color:var(--muted);max-width:760px;line-height:1.7}.card{background:var(--card);border:1px solid rgba(226,232,240,.95);border-radius:22px;padding:20px;box-shadow:var(--shadow)}.hero{padding:30px 0 24px}.hero-card{position:relative;overflow:hidden;border-radius:34px;padding:22px;background:radial-gradient(circle at 100% 0,rgba(255,176,102,.25),transparent 30%),radial-gradient(circle at 0 100%,rgba(249,115,22,.13),transparent 24%),linear-gradient(135deg,#fff,#fff8f0);border:1px solid #fed7aa;box-shadow:var(--shadow-lg)}.hero-grid{display:grid;gap:22px}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:900;padding:9px 13px;border-radius:999px;background:var(--primary-soft);color:var(--primary-dark);border:1px solid #fed7aa;margin-bottom:14px}.hero h1{margin:0;font-size:40px;line-height:1.02;letter-spacing:-.05em;max-width:760px}.hero p{color:#475569;font-size:16px;line-height:1.8;margin:16px 0 0;max-width:700px}.hero-actions{display:flex;flex-direction:column;gap:12px;margin-top:22px}.hero-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.trust-chip{display:inline-flex;gap:8px;padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid #fed7aa;font-size:13px;font-weight:800;color:#334155}.hero-aside{display:grid;gap:14px;align-content:start}.hero-visual{min-height:300px;border-radius:26px;overflow:hidden;position:relative;border:1px solid #fed7aa;box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#ff7a1a,#111827)}.hero-visual img{width:100%;height:100%;object-fit:cover;opacity:.78}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.05),rgba(15,23,42,.52));display:flex;flex-direction:column;justify-content:space-between;padding:18px}.hero-preview-badge{display:inline-flex;gap:8px;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.88);font-size:12px;font-weight:900;color:#9a3412}.hero-floating-card{align-self:flex-end;min-width:210px;padding:14px;border-radius:20px;background:rgba(255,255,255,.94);border:1px solid #fed7aa}.hero-floating-card strong{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}.hero-floating-price{font-size:28px;font-weight:900;letter-spacing:-.04em}.hero-stats{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:14px;min-height:104px;background:#fff;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow)}.stat-label{font-size:12px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.stat-value{font-size:28px;font-weight:900;letter-spacing:-.03em;margin-top:10px}.stat-sub{color:var(--muted);font-size:13px;line-height:1.55;margin-top:8px}.grid,.steps-grid,.about-grid,.masters-grid,.cabinet-stats,.cabinet-layout,.calc-layout,.blog-grid,.admin-grid{display:grid;gap:16px}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field span,.field label{font-size:13px;font-weight:800;color:#374151}input,select,textarea{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--line);outline:none;background:#fff;color:var(--text);transition:.2s}input:focus,select:focus,textarea:focus{border-color:#fdba74;box-shadow:0 0 0 4px rgba(249,115,22,.1)}textarea{min-height:130px;resize:vertical}.calc-actions,.master-actions,.cabinet-actions,.auth-actions{display:flex;flex-direction:column;gap:12px;margin-top:18px}.result-box{background:linear-gradient(135deg,#fff,#fff8f0)}.result-grid{display:grid;gap:12px}.result-item{border:1px solid #fed7aa;background:#fff;border-radius:16px;padding:14px 16px}.result-item strong{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.result-item span{font-size:18px;font-weight:900}.pricing-list{display:grid;gap:10px}.pricing-row{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #edf2f7}.pricing-row span{text-align:right;color:var(--muted)}.masters-toolbar{display:flex;flex-direction:column;gap:12px}.masters-grid{grid-template-columns:1fr}.master-card{padding:0;overflow:hidden}.master-cover{position:relative;height:200px;background:#fed7aa;border-bottom:1px solid #fed7aa}.master-cover img{width:100%;height:100%;object-fit:cover}.master-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.45))}.master-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;gap:10px;z-index:1}.master-badge,.rating-pill,.status-pill,.price-pill,.skill-pill,.tab-pill,.info-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900;white-space:nowrap}.master-badge{background:rgba(255,255,255,.92);color:#0f172a}.master-cover-text{position:absolute;left:14px;bottom:14px;z-index:1;color:#fff}.master-cover-text strong{display:block;font-size:19px}.master-cover-text span{font-size:13px;opacity:.95}.master-body{padding:18px}.master-meta{margin-top:8px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:14px}.rating-pill{background:#fffbeb;color:#b45309}.status-pill{background:#ecfdf5;color:#15803d}.price-pill{background:#fff3e8;color:#c2410c}.skill-pill,.tab-pill,.info-pill{background:#f8fafc;color:#334155;border:1px solid var(--line)}.master-desc{margin:14px 0 0;color:#4b5563;line-height:1.7}.master-skills{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.master-stats{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.mini-stat{padding:12px;border-radius:14px;background:#fbfdff;border:1px solid #edf2f7}.mini-stat strong{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.mini-stat span{font-size:16px;font-weight:900}.empty-state{padding:22px;border-radius:18px;background:#fff;border:1px dashed #cbd5e1;color:#64748b;text-align:center}.reviews-scroller{overflow-x:auto;padding-bottom:6px}.reviews-list{display:grid;gap:14px;grid-auto-flow:column;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-columns:minmax(290px,320px)}.review-card{padding:18px}.review-card b{display:block;margin-bottom:8px}.review-card p{margin:0;color:#4b5563;line-height:1.65}.review-card small{display:block;margin-top:8px;color:var(--muted)}.blog-grid{grid-template-columns:1fr}.blog-card{padding:0;overflow:hidden}.blog-cover{height:190px;background:#fed7aa;overflow:hidden;border-bottom:1px solid #fed7aa}.blog-cover img{width:100%;height:100%;object-fit:cover}.blog-body{padding:18px}.blog-body h3{margin:0 0 10px;font-size:20px;line-height:1.25}.blog-excerpt{margin:0;color:#4b5563;line-height:1.7}.blog-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px;color:var(--muted);font-size:13px}.blog-read{margin-top:14px;display:inline-flex;color:var(--primary-dark);font-weight:900}.site-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:2300;padding:16px;backdrop-filter:blur(8px)}.site-modal.open{display:flex}.site-modal-box{width:min(900px,100%);max-height:86vh;overflow:auto;background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:24px;box-shadow:0 24px 80px rgba(15,23,42,.24);padding:24px}.toast-box{position:fixed;right:18px;top:90px;z-index:3000;display:grid;gap:10px}.toast{background:#111827;color:#fff;padding:13px 16px;border-radius:14px;box-shadow:var(--shadow);font-weight:800}.toast.error{background:var(--danger)}.toast.success{background:var(--success)}footer{padding:28px 0 80px;color:#64748b;text-align:center;font-size:14px}.footer-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:10px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.tab-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}.table-card{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.page-hero{padding:34px 0 8px}.article-content{line-height:1.8;color:#334155}.article-content h2,.article-content h3{color:#0f172a}.portfolio-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.portfolio-grid img{height:160px;width:100%;object-fit:cover;border-radius:18px}.legal-box{line-height:1.8}.cabinet-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cabinet-layout{grid-template-columns:1fr}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media (min-width:768px){.desktop-nav{display:flex}.burger-btn{display:none}.hero-card{padding:28px}.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)}.hero h1{font-size:62px}.hero-actions,.calc-actions,.cabinet-actions{flex-direction:row}.steps-grid,.about-grid{grid-template-columns:repeat(3,1fr)}.masters-toolbar{flex-direction:row;align-items:center}.masters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.calc-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.cabinet-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.cabinet-layout{grid-template-columns:.95fr 1.05fr}} 
/* V103 fixes */
.conditional.hidden{display:none!important}.cabinet-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.price-tabs{margin-bottom:10px}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.site-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:3000;padding:16px;backdrop-filter:blur(8px)}.site-modal.open{display:flex}.site-modal-box{width:min(860px,100%);max-height:86vh;overflow:auto;background:#fff;border-radius:24px;box-shadow:0 24px 80px rgba(15,23,42,.28);padding:24px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.table-card{overflow:auto}.toast-box{position:fixed;top:20px;right:20px;z-index:9999;display:grid;gap:10px}.toast{padding:14px 16px;border-radius:14px;background:#111827;color:#fff;box-shadow:var(--shadow);font-weight:800}.toast.error{background:#dc2626}.toast.success{background:#16a34a}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.portfolio-grid img{width:100%;height:220px;object-fit:cover;border-radius:20px;box-shadow:var(--shadow)}

/* V106 PRO detail fixes */
.check-card{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff}.check-card input{width:18px;height:18px}.info{padding:12px 14px;border-radius:14px;background:#fff7ed;border:1px solid #fed7aa;color:#334155;line-height:1.6}.pricing-list{margin-top:12px}.site-modal-box h3{margin-top:0}pre.info{white-space:pre-wrap}.blog-card{display:block}.field input[type=file]{padding:10px;background:#fff}.field-grid+ .field{margin-top:12px}@media print{.sticky-header,footer,.btn,.cabinet-tabs{display:none!important}.card{box-shadow:none;border-color:#ddd}.section,.page-hero{padding:0}}

/* V116 refinements */
.calc-section{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.calc-section h4{margin:0 0 10px;font-size:16px;font-weight:900;color:#0f172a}
.calc-section .field-grid + .field-grid{margin-top:12px}
.check-card.full{grid-column:1/-1;display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}
.verify-preview img{width:100%;height:220px;object-fit:cover;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow)}
.cabinet-mode .sticky-header,.cabinet-mode footer{display:block!important}
.cabinet-mode main{min-height:100vh;background:linear-gradient(180deg,#fff7ed,#f8fafc)}
.cabinet-tabs .tab-pill.active,.tabs .tab-pill.active{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important;box-shadow:0 10px 24px rgba(249,115,22,.18)}
.hidden{display:none!important}
@media(max-width:560px){.calc-section{padding:12px}.field-grid{grid-template-columns:1fr!important}}

/* V120 tile dynamic UI */
.full-grid{grid-column:1/-1}.dynamic-list{display:grid;gap:12px}.dynamic-row{align-items:end;border:1px dashed var(--line);border-radius:16px;padding:12px;background:#fbfdff}.calc-section{margin-top:16px}.calc-section h4{margin:0 0 12px;font-size:17px}.check-card.full{grid-column:1/-1}

/* V121 calculator UI/state fixes */
.calc-section .field-grid{align-items:start;}
.calc-section .field{align-self:start;}
.calc-section .field > span{display:block;min-height:18px;line-height:1.25;margin-bottom:4px;}
.calc-section select,.calc-section input{min-height:46px;}
.living-card.full{display:flex!important;flex-direction:column;align-items:flex-start;gap:6px;}
.living-card.full span{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800;color:#1f2937;}
.living-card.full small{display:block;margin-left:28px;font-size:12px;line-height:1.35;color:var(--muted);font-weight:700;}


/* V122 TILE UX FIX */
.calc-section .field-grid{
  row-gap:10px !important;
  column-gap:14px !important;
  align-items:start;
}
.calc-section .field{
  gap:4px !important;
}
.calc-section .field > span{
  margin-bottom:2px !important;
}
.living-card.full{
  padding:10px 12px !important;
  gap:2px !important;
}
.living-card.full span{
  line-height:1.2 !important;
}
.living-card.full small{
  margin-left:28px !important;
  margin-top:0 !important;
  font-size:11px !important;
  line-height:1.18 !important;
  color:var(--muted) !important;
}
.field-error.tile-area-error{
  display:block;
  padding:10px 12px;
  border-radius:12px;
  background:#fee2e2;
  border:1px solid #fecaca;
  color:#b91c1c;
  font-size:13px;
  font-weight:800;
  margin-bottom:4px;
}
.btn:disabled{
  opacity:.55;
  cursor:not-allowed;
  transform:none !important;
}
@media(max-width:560px){
  .calc-section .field-grid{row-gap:8px !important;}
}


/* V124 FINAL REAL FIXES */
#tileTechnologySection .tile-technology-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px 14px !important;
  align-items:start !important;
}
#tileTechnologySection .field{
  margin:0 !important;
  gap:4px !important;
}
#tileTechnologySection .field > span{
  display:block !important;
  min-height:18px !important;
  line-height:1.2 !important;
  margin:0 0 4px !important;
}
#tileTechnologySection select{
  min-height:46px !important;
  height:46px !important;
}
#tileTechnologySection #customTileSize{
  margin:0 !important;
  gap:10px 14px !important;
}
.living-card.full{
  padding:9px 12px !important;
  gap:1px !important;
  min-height:0 !important;
}
.living-card.full span{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
  line-height:1.15 !important;
}
.living-card.full small{
  display:block !important;
  margin:0 0 0 26px !important;
  padding:0 !important;
  font-size:11px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  color:var(--muted,#64748b) !important;
}
.field-error.calc-area-error,
.field-error.tile-area-error{
  display:block !important;
  grid-column:1/-1 !important;
  padding:10px 12px !important;
  border-radius:12px !important;
  background:#fee2e2 !important;
  border:1px solid #fecaca !important;
  color:#b91c1c !important;
  font-size:13px !important;
  font-weight:800 !important;
  margin:0 0 6px !important;
}
#printBtn:disabled{
  opacity:.5 !important;
  cursor:not-allowed !important;
  box-shadow:none !important;
  transform:none !important;
}
@media(max-width:900px){
  #tileTechnologySection .tile-technology-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:560px){
  #tileTechnologySection .tile-technology-grid{grid-template-columns:1fr !important;gap:8px !important;}
}

/* V125 FINAL: tile geometry error + persistence helpers */
#tileGeometrySection .calc-area-error{
  grid-column:1/-1 !important;
  margin:0 0 8px !important;
}

/* V126 final fixes */
.master-desc.clamp-3{
  display:-webkit-box !important;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.field small.muted{font-size:12px;line-height:1.25;margin-top:2px}

/* V127 html estimate + request persistence */
.pricing-row strong{word-break:break-word}

/* V128 cabinet/admin requests */
.tab-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 6px;
  margin-left:6px;
  border-radius:999px;
  background:#ffedd5;
  color:#c2410c;
  font-size:12px;
  font-weight:900;
}
.status-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:900;
}
.status-new{background:#eff6ff;color:#1d4ed8}
.status-accepted{background:#ecfdf5;color:#15803d}
.status-rejected{background:#fee2e2;color:#b91c1c}
.status-pending{background:#fff7ed;color:#c2410c}

/* V129 admin/review/request fixes */
.btn-danger{background:#dc2626;color:#fff}

/* V130 privacy/diagnostics */
.request-card .btn-danger{display:inline-flex}

/* V131 optimized media + banners + legal */
.pro-banner{
  overflow:hidden;
  min-height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
}
.pro-banner img{
  max-height:160px;
  width:auto;
  object-fit:contain;
  border-radius:16px;
}
.pro-banner small{
  display:block;
  margin-top:6px;
  color:var(--muted,#64748b);
  font-size:12px;
}
.form-legal{
  margin:12px 0 0;
  color:var(--muted,#64748b);
  font-size:13px;
  line-height:1.55;
}
.form-legal a{
  color:var(--primary,#2563eb);
  font-weight:800;
  text-decoration:underline;
}
.master-cover img,.blog-cover img,.hero-visual img,.portfolio-grid img,.verify-preview img{
  image-rendering:auto;
}

/* V132 AI recommendation + email rows + blog editor */
.ai-card-pro{
  background:linear-gradient(135deg,#fff7ed,#ffffff);
  border:1px solid #fed7aa;
  border-radius:18px;
  padding:16px;
}
.ai-head-pro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.ai-head-pro strong{
  font-size:26px;
  color:#ea580c;
}
.ai-score{
  height:12px;
  background:#ffedd5;
  border-radius:999px;
  overflow:hidden;
  margin:12px 0;
}
.ai-score span{
  display:block;
  height:100%;
  background:linear-gradient(90deg,#fb923c,#ea580c);
  border-radius:999px;
}
.ai-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border:1px solid #fed7aa;
  border-radius:14px;
  background:#fff;
  margin:10px 0;
}
.ai-mini-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.ai-mini-master{
  display:flex;
  justify-content:space-between;
  gap:8px;
  border:1px solid #fed7aa;
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
}
.blog-editor-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.blog-editor-pro .field small{
  display:block;
  color:var(--muted,#64748b);
  font-size:12px;
  line-height:1.35;
  margin-top:4px;
}
.blog-editor-pro input,
.blog-editor-pro select{
  min-height:46px;
}
.blog-content-html{
  min-height:300px !important;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  line-height:1.5;
}
.html-help{
  padding:10px 12px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:12px;
}
.calc-layout{
  align-items:start;
}
#detailResultCard{
  align-self:start;
}
@media(max-width:760px){
  .blog-editor-grid,.ai-mini-grid{grid-template-columns:1fr}
  .ai-row,.ai-mini-master{display:block}
}

.ai-confidence{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  font-size:13px;
  color:#475569;
  font-weight:800;
}

/* V133 pagination, reviews grid, tile dynamic rows */
.reviews-grid-five{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.pagination{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
@media(max-width:1100px){
  .reviews-grid-five{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:700px){
  .reviews-grid-five{grid-template-columns:1fr;}
}

/* V134 horizontal reviews + schema-safe status update */
.reviews-grid-five{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(210px,1fr)) !important;
  gap:14px !important;
  align-items:stretch;
}
.reviews-grid-five .review-card{
  height:100%;
}
@media(max-width:1100px){
  .reviews-grid-five{
    display:flex !important;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    padding-bottom:8px;
  }
  .reviews-grid-five .review-card{
    flex:0 0 260px;
    scroll-snap-align:start;
  }
}

/* V135 fixes */
.reviews-grid-five{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
}
.reviews-grid-five .review-card{
  width:100% !important;
  min-height:0 !important;
}

/* V136 cabinet media + roles fixes */
.cabinet-exit-btn{
  position:absolute;
  right:24px;
  top:24px;
  z-index:5;
}
.page-hero .container{
  position:relative;
}
/* Cabinet-only media sizing; do not affect landing hero */
.cabinet-layout #avatarPreview{
  width:100%;
  height:280px;
  object-fit:cover;
  border-radius:22px;
}
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.portfolio-grid img{
  width:100%;
  aspect-ratio:1/1;
  height:auto !important;
  object-fit:cover;
  border-radius:14px;
  border:1px solid #e2e8f0;
}
.verify-preview img,
#docPreview{
  width:100%;
  max-height:220px;
  object-fit:cover;
  border-radius:16px;
  border:1px solid #e2e8f0;
}
@media(max-width:700px){
  .cabinet-exit-btn{
    position:static;
    margin:12px 0;
  }
  .portfolio-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* V139 visual + cabinet boot fix */
.hero .hero-visual{
  min-height:420px !important;
}
.hero .hero-visual img{
  width:100% !important;
  height:100% !important;
  min-height:420px !important;
  object-fit:cover !important;
  border-radius:0 !important;
}
.master-cover{
  height:220px !important;
  overflow:hidden !important;
}
.master-cover img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.cabinet-layout .hero-visual{
  min-height:280px !important;
  height:280px !important;
}
.cabinet-layout .hero-visual img,
.cabinet-layout #avatarPreview{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  border-radius:22px !important;
}

/* V140 request display + blog images + master page reviews */
.blog-cover{
  height:210px !important;
  overflow:hidden !important;
  background:linear-gradient(135deg,#ffedd5,#fff7ed) !important;
  border-radius:18px 18px 0 0;
}
.blog-cover img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
.master-reviews-row{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
}
.master-reviews-row .review-card{
  width:100% !important;
}

/* V141 blog images, requests visibility, admin review statuses */
.blog-card .blog-cover,
.article-content + .blog-cover,
.blog-cover{
  display:block !important;
  min-height:210px !important;
  background:linear-gradient(135deg,#ffedd5,#fff7ed) !important;
}
.blog-cover img{
  display:block !important;
  width:100% !important;
  height:210px !important;
  object-fit:cover !important;
}
.master-page-photo{
  height:360px !important;
  min-height:360px !important;
}
.master-page-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
.admin-review-card .status-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 12px;
}
.admin-review-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  flex-wrap:wrap;
}

/* V142 compact admin reviews + robust blog covers + request diagnostics */
.compact-review-card{
  padding:16px !important;
}
.compact-review-card h3{
  font-size:18px !important;
  margin:0 !important;
}
.review-meta-compact{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:10px 0;
}
.review-meta-compact div{
  border:1px solid #fed7aa;
  background:#fffaf5;
  border-radius:12px;
  padding:8px 10px;
  min-width:0;
}
.review-meta-compact b{
  display:block;
  font-size:10px;
  line-height:1.1;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.03em;
  margin-bottom:3px;
}
.review-meta-compact span{
  display:block;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  color:#0f172a;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.review-text-compact{
  font-size:14px;
  line-height:1.45;
  margin:8px 0;
}
.compact-reply{
  font-size:13px;
  padding:10px 12px !important;
  margin:8px 0 !important;
}
.compact-actions{
  margin-top:10px !important;
}
.compact-muted{
  font-size:13px;
  margin:6px 0;
}
.blog-cover{
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.blog-cover img{
  opacity:1;
}
.error-info{
  border-color:#fecaca !important;
  background:#fff1f2 !important;
}
@media(max-width:900px){
  .review-meta-compact{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .review-meta-compact{grid-template-columns:1fr;}
}

/* V143 requests REST fallback + smaller review cards */
.request-debug{
  font-size:13px;
  line-height:1.45;
}
.compact-review-card{
  padding:12px !important;
}
.review-meta-compact{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:6px !important;
}
.review-meta-compact div{
  padding:6px 8px !important;
}
.review-meta-compact b{
  font-size:9px !important;
}
.review-meta-compact span{
  font-size:11px !important;
}
.compact-review-card .status-badge{
  padding:5px 8px !important;
  font-size:11px !important;
}
.review-text-compact{
  font-size:13px !important;
}

/* V145 raw requests visibility */
.raw-request-card{
  padding:16px !important;
}
.raw-request-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.raw-request-head h3{
  margin:0;
  font-size:18px;
}
.request-raw-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:12px 0;
}
.request-raw-grid div{
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:8px 10px;
  background:#fff;
  min-width:0;
}
.request-raw-grid b{
  display:block;
  font-size:10px;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.03em;
  margin-bottom:4px;
}
.request-raw-grid span{
  display:block;
  font-size:12px;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.raw-details{
  margin-top:10px;
  font-size:13px;
}
.raw-details pre{
  max-height:260px;
  overflow:auto;
  background:#0f172a;
  color:#e2e8f0;
  padding:12px;
  border-radius:12px;
  font-size:11px;
}
@media(max-width:900px){
  .request-raw-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .request-raw-grid{grid-template-columns:1fr;}
}

/* V147 force visible requests */
.raw-request-card{padding:16px !important}
.raw-request-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.raw-request-head h3{margin:0;font-size:18px}
.request-raw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.request-raw-grid div{border:1px solid #e2e8f0;border-radius:12px;padding:8px 10px;background:#fff;min-width:0}
.request-raw-grid b{display:block;font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}
.request-raw-grid span{display:block;font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.raw-details{margin-top:10px;font-size:13px}
.raw-details pre{max-height:260px;overflow:auto;background:#0f172a;color:#e2e8f0;padding:12px;border-radius:12px;font-size:11px}
.request-force-note{font-size:13px;line-height:1.45}
@media(max-width:900px){.request-raw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.request-raw-grid{grid-template-columns:1fr}}

/* V149 compact request UI */
.compact-request-list{
  display:grid;
  gap:12px;
}
.compact-request-card{
  padding:14px !important;
}
.compact-request-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  flex-wrap:wrap;
}
.compact-request-head h3{
  margin:0 0 4px;
  font-size:18px;
  line-height:1.2;
}
.compact-request-head p{
  margin:0;
  font-size:12px;
}
.request-meta-compact{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:10px 0;
}
.request-meta-compact div{
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:7px 9px;
  background:#fff;
  min-width:0;
}
.request-meta-compact b{
  display:block;
  font-size:9px;
  color:#64748b;
  text-transform:uppercase;
  letter-spacing:.03em;
  margin-bottom:3px;
}
.request-meta-compact span{
  display:block;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.compact-request-details{
  display:grid;
  gap:5px;
  margin:8px 0;
}
.compact-price-row{
  display:grid;
  grid-template-columns:minmax(180px,35%) 1fr;
  gap:8px;
  border:1px solid #f1f5f9;
  border-radius:10px;
  padding:6px 8px;
  font-size:12px;
}
.compact-price-row b{
  color:#475569;
}
.compact-json{
  margin:8px 0;
  font-size:13px;
}
.compact-json .pricing-row{
  font-size:12px;
  padding:7px 9px;
}
.compact-actions{
  margin-top:8px !important;
}
.compact-actions .btn{
  padding:10px 13px;
  font-size:13px;
}
@media(max-width:1000px){
  .request-meta-compact{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .request-meta-compact,.compact-price-row{grid-template-columns:1fr;}
}

/* V150 cabinet request readable UI */
.compact-details{
  margin:8px 0;
  border:1px solid #e2e8f0;
  border-radius:12px;
  padding:8px 10px;
  background:#fff;
}
.compact-details summary{
  cursor:pointer;
  font-size:13px;
  font-weight:900;
  color:#334155;
}
.request-readable-details{
  margin-top:10px;
}
.request-readable-details h4{
  margin:10px 0 6px;
  font-size:14px;
}
.request-readable-details .pricing-row{
  padding:7px 9px;
  font-size:12px;
  border-radius:10px;
}

/* V151 stats, pagination, compact request refinements */
.stat-card .stat-sub{
  font-size:13px;
  line-height:1.55;
  color:#475569;
  margin-top:6px;
}
.compact-request-card{
  margin-bottom:0 !important;
}
.compact-request-list + .pagination,
.pagination{
  margin-top:14px;
}
.master-stats:empty{
  display:none;
}

/* V152 counters + status emails */
.admin-tabs-live .tab-count,
.cabinet-tabs-live .tab-count{
  vertical-align:middle;
}

/* V154 calculator/form/content refinements */
.content-field small{
  display:block;
  color:#64748b;
  font-size:12px;
  line-height:1.35;
  margin:4px 0 8px;
}
.content-field textarea{
  min-height:110px;
}

/* V155 cabinet counters + content banner hints */
.field small{
  display:block;
  color:#64748b;
  font-size:12px;
  line-height:1.35;
  margin:4px 0 8px;
}
.tab-pill .tab-count{
  margin-left:8px;
}

/* V156 cabinet auth + stronger tab badges */
.cabinet-tabs-live .tab-count,
.tab-pill .tab-count{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-width:24px;
  height:24px;
  padding:0 7px;
  border-radius:999px;
  background:#fff3e8;
  color:#c2410c;
  font-weight:900;
  font-size:13px;
  margin-left:8px;
  box-shadow:inset 0 0 0 1px #fed7aa;
}
.tab-pill.active .tab-count{
  background:#fff;
  color:#ea580c;
}
.auth-container{
  max-width:980px;
}
.auth-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:24px 0;
}
.auth-card h3{
  margin-top:0;
}
@media(max-width:760px){
  .auth-grid{grid-template-columns:1fr;}
}

/* V157 Supabase Auth polish */
.auth-card .muted{min-height:44px}.auth-container .info{margin-bottom:18px}

/* V158 email+phone auth */
.auth-card input[type=email]{text-transform:none}
.auth-grid .info{grid-column:1/-1}

/* V159 admin delete master */
.admin-master-wrap{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.admin-master-extra{
  margin-top:-4px;
  padding:0 6px 8px;
}
.admin-master-extra .btn{
  width:100%;
}
.admin-master-extra .muted{
  font-size:12px;
  margin:8px 0 0;
}

/* V160 content banner clarity */
.content-field-wide{
  grid-column:1 / -1;
}
.content-field-wide textarea{
  min-height:260px;
}

/* V161 hero banner + blog uploads */
.hero-banner-managed img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.blog-inline-images{
  margin:16px 0;
  grid-column:1 / -1;
}
.blog-inline-images h4{
  margin:0 0 8px;
}
.blog-inline-images .field-grid{
  margin-top:12px;
}

/* V162 hero banner fix */
.hero-banner-managed{
  overflow:hidden;
}
.hero-banner-managed img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* V163 hero persistence + logo/favicon */
.site-logo-img{
  max-width:180px;
  max-height:48px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
.hero-banner-managed{
  overflow:hidden;
}
.hero-banner-managed img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* V164 content toggles + hero enabled persistence */
.content-toggle{
  display:inline-flex;
  gap:6px;
  padding:5px;
  border:1px solid #e2e8f0;
  border-radius:999px;
  background:#f8fafc;
}
.toggle-btn{
  border:0;
  border-radius:999px;
  padding:9px 16px;
  font-weight:900;
  cursor:pointer;
  color:#475569;
  background:transparent;
}
.toggle-btn.active{
  color:#fff;
  background:#ff7a1a;
  box-shadow:0 6px 14px rgba(255,122,26,.22);
}
.content-toggle-field{
  justify-content:flex-start;
}

/* V165 Storage uploads */
.storage-hint{
  font-size:12px;
  color:#64748b;
}

/* V168 hero debug */
.hero-debug code{
  display:inline-block;
  max-width:100%;
  overflow-wrap:anywhere;
  font-size:12px;
}

/* V169 force hero Storage URL render */
.hero-banner-managed{
  position:relative;
  overflow:hidden;
  min-height:420px;
  background:#111827;
}
.hero-banner-managed > img,
.hero-banner-managed .hero-storage-img{
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:0;
}
.hero-banner-managed .hero-overlay{
  position:relative;
  z-index:2;
}
.hero-overlay-managed{
  pointer-events:none;
}

/* V171 Storage images audit */
.portfolio-admin{
  grid-column:1 / -1;
}
.portfolio-admin-item{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.portfolio-admin-item img,
.portfolio-grid img,
.blog-photo-gallery img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:18px;
  border:1px solid #e2e8f0;
}
.blog-photo-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
}
@media(max-width:760px){.blog-photo-gallery{grid-template-columns:1fr;}}

/* V172 blog article, cabinet footer, review limits */
.blog-article-card{
  padding:32px;
}
.blog-cover-large{
  height:clamp(320px,48vw,560px);
  overflow:hidden;
  margin:18px 0 28px;
  border-radius:24px;
}
.blog-cover-large img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:24px;
}
.blog-actions-top,
.blog-actions-bottom{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 18px;
}
.blog-actions-bottom{
  margin:28px 0 0;
}
.site-footer{
  border-top:1px solid #e2e8f0;
  background:#fff;
  padding:32px 0;
  margin-top:48px;
}
.footer-inner{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
}
.footer-links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.footer-links a{
  color:#334155;
  font-weight:700;
}
@media(max-width:760px){
  .blog-article-card{padding:18px;}
  .blog-cover-large{height:280px;}
  .footer-inner{flex-direction:column;}
}

/* V173 forced fixes */
.cabinet-mode .sticky-header,
.cabinet-mode footer,
.cabinet-mode .site-footer{
  display:block!important;
}
.blog-article-card .blog-cover-large,
.blog-cover-large{
  height:clamp(360px,52vw,620px)!important;
  max-height:620px;
  overflow:hidden;
  border-radius:24px;
}
.blog-article-card .blog-cover-large img,
.blog-cover-large img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
.blog-actions-top,.blog-actions-bottom{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 18px}
.blog-actions-bottom{margin:28px 0 0}

/* V174 auth reset + single footer */
.reset-card{
  border-style:dashed;
}
.auth-grid .reset-card{
  grid-column:1 / -1;
}
.cabinet-mode .sticky-header,
.cabinet-mode footer{
  display:block!important;
}

/* V176 unified auth */
.auth-unified{max-width:980px;margin:0 auto;}
.auth-mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;}
.auth-mode-tabs .btn.active{background:#ff7a1a;color:#fff;border-color:#ff7a1a;}
.auth-mode-panel.hidden{display:none!important;}
.auth-mode-panel h3{margin-top:0;}

/* V177 auth cleanup */
.auth-actions{align-items:center;}
.reset-inline{border-top:1px solid #e2e8f0;padding-top:18px;}
.auth-legal{font-size:14px;margin:14px 0 18px;}
.auth-legal a{color:#d95f0e;font-weight:800;text-decoration:underline;}
.auth-mode-tabs .btn.active{background:#ff7a1a;color:#fff;border-color:#ff7a1a;}

/* V178 auth UI PRO */
.auth-container{
  max-width:1080px;
}
.auth-unified{
  max-width:820px;
  margin:0 auto;
  border-radius:18px;
  padding:28px;
  box-shadow:0 18px 55px rgba(15,23,42,.08);
}
.auth-mode-tabs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:6px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#f8fafc;
  margin-bottom:22px;
}
.auth-mode-tabs .auth-tab{
  width:100%;
  justify-content:center;
  background:transparent;
  color:#334155;
  border:0;
  box-shadow:none;
}
.auth-mode-tabs .auth-tab.active{
  background:#ff7a1a!important;
  color:#fff!important;
  border-color:#ff7a1a!important;
  box-shadow:0 8px 20px rgba(255,122,26,.25);
}
.auth-mode-tabs .auth-tab:not(.active){
  background:transparent!important;
  color:#334155!important;
}
.auth-mode-panel{
  animation:authFade .18s ease-out;
}
@keyframes authFade{
  from{opacity:.4;transform:translateY(4px)}
  to{opacity:1;transform:none}
}
.auth-register-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.auth-actions .btn-primary,
.auth-mode-panel > .btn-primary{
  background:#ff7a1a;
  border-color:#ff7a1a;
  color:#fff;
}
.auth-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:10px;
}
.auth-legal{
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-radius:14px;
  padding:12px 14px;
}
.auth-mode-panel .field small{
  display:block;
  margin-top:6px;
  color:#64748b;
  font-size:12px;
}
@media(min-width:980px){
  .auth-unified{
    min-height:430px;
  }
}
@media(max-width:760px){
  .auth-unified{
    padding:18px;
    border-radius:16px;
  }
  .auth-register-grid{
    grid-template-columns:1fr;
  }
}

/* V179 dark theme for public pages + cabinet, admin stays light */
:root{
  color-scheme:light;
}
html.theme-dark{
  color-scheme:dark;
}
.theme-toggle-footer{
  border:1px solid #cbd5e1;
  background:#fff;
  color:#334155;
  border-radius:999px;
  padding:9px 14px;
  font-weight:800;
  cursor:pointer;
}
.theme-dark body:not(.admin-mode),
body.theme-dark:not(.admin-mode){
  background:#0b1120;
  color:#e5e7eb;
}
.theme-dark body:not(.admin-mode) .sticky-header,
body.theme-dark:not(.admin-mode) .sticky-header{
  background:rgba(11,17,32,.88);
  border-bottom-color:#1e293b;
  backdrop-filter:blur(18px);
}
.theme-dark body:not(.admin-mode) .brand,
body.theme-dark:not(.admin-mode) .brand,
.theme-dark body:not(.admin-mode) .nav a,
body.theme-dark:not(.admin-mode) .nav a{
  color:#f8fafc;
}
.theme-dark body:not(.admin-mode) .burger span,
body.theme-dark:not(.admin-mode) .burger span{
  background:#f8fafc;
}
.theme-dark body:not(.admin-mode) .page-hero,
body.theme-dark:not(.admin-mode) .page-hero,
.theme-dark body:not(.admin-mode) .section,
body.theme-dark:not(.admin-mode) .section{
  background:#0b1120;
}
.theme-dark body:not(.admin-mode) .card,
body.theme-dark:not(.admin-mode) .card,
.theme-dark body:not(.admin-mode) .calc-card,
body.theme-dark:not(.admin-mode) .calc-card,
.theme-dark body:not(.admin-mode) .master-card,
body.theme-dark:not(.admin-mode) .master-card,
.theme-dark body:not(.admin-mode) .auth-card,
body.theme-dark:not(.admin-mode) .auth-card,
.theme-dark body:not(.admin-mode) .info,
body.theme-dark:not(.admin-mode) .info,
.theme-dark body:not(.admin-mode) .empty-state,
body.theme-dark:not(.admin-mode) .empty-state{
  background:#111827;
  color:#e5e7eb;
  border-color:#1f2937;
  box-shadow:0 18px 50px rgba(0,0,0,.28);
}
.theme-dark body:not(.admin-mode) .muted,
body.theme-dark:not(.admin-mode) .muted,
.theme-dark body:not(.admin-mode) small,
body.theme-dark:not(.admin-mode) small{
  color:#94a3b8;
}
.theme-dark body:not(.admin-mode) h1,
body.theme-dark:not(.admin-mode) h1,
.theme-dark body:not(.admin-mode) h2,
body.theme-dark:not(.admin-mode) h2,
.theme-dark body:not(.admin-mode) h3,
body.theme-dark:not(.admin-mode) h3,
.theme-dark body:not(.admin-mode) h4,
body.theme-dark:not(.admin-mode) h4{
  color:#f8fafc;
}
.theme-dark body:not(.admin-mode) input,
body.theme-dark:not(.admin-mode) input,
.theme-dark body:not(.admin-mode) select,
body.theme-dark:not(.admin-mode) select,
.theme-dark body:not(.admin-mode) textarea,
body.theme-dark:not(.admin-mode) textarea{
  background:#0f172a;
  color:#e5e7eb;
  border-color:#334155;
}
.theme-dark body:not(.admin-mode) input::placeholder,
body.theme-dark:not(.admin-mode) input::placeholder,
.theme-dark body:not(.admin-mode) textarea::placeholder,
body.theme-dark:not(.admin-mode) textarea::placeholder{
  color:#64748b;
}
.theme-dark body:not(.admin-mode) .field span,
body.theme-dark:not(.admin-mode) .field span{
  color:#cbd5e1;
}
.theme-dark body:not(.admin-mode) .btn-ghost,
body.theme-dark:not(.admin-mode) .btn-ghost,
.theme-dark body:not(.admin-mode) .btn-secondary,
body.theme-dark:not(.admin-mode) .btn-secondary{
  background:#1e293b;
  color:#f8fafc;
  border-color:#334155;
}
.theme-dark body:not(.admin-mode) .hero-card,
body.theme-dark:not(.admin-mode) .hero-card{
  background:linear-gradient(135deg,#111827,#0f172a);
}
.theme-dark body:not(.admin-mode) .tabs,
body.theme-dark:not(.admin-mode) .tabs,
.theme-dark body:not(.admin-mode) .service-tabs,
body.theme-dark:not(.admin-mode) .service-tabs,
.theme-dark body:not(.admin-mode) .auth-mode-tabs,
body.theme-dark:not(.admin-mode) .auth-mode-tabs{
  background:#0f172a;
  border-color:#1f2937;
}
.theme-dark body:not(.admin-mode) .tab,
body.theme-dark:not(.admin-mode) .tab,
.theme-dark body:not(.admin-mode) .auth-tab,
body.theme-dark:not(.admin-mode) .auth-tab{
  color:#cbd5e1!important;
}
.theme-dark body:not(.admin-mode) .auth-tab.active,
body.theme-dark:not(.admin-mode) .auth-tab.active,
.theme-dark body:not(.admin-mode) .tab.active,
body.theme-dark:not(.admin-mode) .tab.active{
  background:#ff7a1a!important;
  color:#fff!important;
}
.theme-dark body:not(.admin-mode) .auth-legal,
body.theme-dark:not(.admin-mode) .auth-legal{
  background:#1c1917;
  border-color:#7c2d12;
}
.theme-dark body:not(.admin-mode) .blog-card,
body.theme-dark:not(.admin-mode) .blog-card,
.theme-dark body:not(.admin-mode) .review-card,
body.theme-dark:not(.admin-mode) .review-card{
  background:#111827;
}
.theme-dark body:not(.admin-mode) .site-footer,
body.theme-dark:not(.admin-mode) .site-footer,
.theme-dark body:not(.admin-mode) footer,
body.theme-dark:not(.admin-mode) footer{
  background:#0f172a;
  border-top-color:#1e293b;
  color:#cbd5e1;
}
.theme-dark body:not(.admin-mode) .footer-links a,
body.theme-dark:not(.admin-mode) .footer-links a{
  color:#e5e7eb;
}
.theme-dark body:not(.admin-mode) .theme-toggle-footer,
body.theme-dark:not(.admin-mode) .theme-toggle-footer{
  background:#111827;
  color:#f8fafc;
  border-color:#334155;
}
.theme-dark body:not(.admin-mode) table,
body.theme-dark:not(.admin-mode) table{
  color:#e5e7eb;
}
.theme-dark body:not(.admin-mode) tr,
body.theme-dark:not(.admin-mode) tr{
  border-color:#1f2937;
}
body.admin-mode,
html.theme-dark body.admin-mode{
  background:#f8fafc!important;
  color:#0f172a!important;
}

/* V180 footer theme + top buttons */
.footer-links .theme-toggle-footer,
.theme-toggle-footer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #cbd5e1;
  background:#fff;
  color:#334155;
  border-radius:999px;
  padding:9px 14px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  font-family:inherit;
  text-decoration:none;
}
.footer-links{
  align-items:center;
}
.theme-dark body:not(.admin-mode) .theme-toggle-footer,
body.theme-dark:not(.admin-mode) .theme-toggle-footer{
  background:#111827;
  color:#f8fafc;
  border-color:#334155;
}
.theme-toggle-footer:hover{
  transform:translateY(-1px);
}

/* V181 dark theme tile calculator + auth footer gap fix */
.theme-dark body:not(.admin-mode) #tileCalc,
body.theme-dark:not(.admin-mode) #tileCalc,
.theme-dark body:not(.admin-mode) .tile-calc,
body.theme-dark:not(.admin-mode) .tile-calc,
.theme-dark body:not(.admin-mode) [data-service-panel="tiler"],
body.theme-dark:not(.admin-mode) [data-service-panel="tiler"],
.theme-dark body:not(.admin-mode) [data-calc-service="tiler"],
body.theme-dark:not(.admin-mode) [data-calc-service="tiler"],
.theme-dark body:not(.admin-mode) .calc-panel,
body.theme-dark:not(.admin-mode) .calc-panel,
.theme-dark body:not(.admin-mode) .calc-section,
body.theme-dark:not(.admin-mode) .calc-section,
.theme-dark body:not(.admin-mode) .calc-block,
body.theme-dark:not(.admin-mode) .calc-block,
.theme-dark body:not(.admin-mode) .tile-section,
body.theme-dark:not(.admin-mode) .tile-section,
.theme-dark body:not(.admin-mode) .form-section,
body.theme-dark:not(.admin-mode) .form-section{
  background:#111827!important;
  color:#e5e7eb!important;
  border-color:#1f2937!important;
}
.theme-dark body:not(.admin-mode) #tileCalc *,
body.theme-dark:not(.admin-mode) #tileCalc *,
.theme-dark body:not(.admin-mode) .tile-calc *,
body.theme-dark:not(.admin-mode) .tile-calc *{
  border-color:#334155;
}
.theme-dark body:not(.admin-mode) #tileCalc .field,
body.theme-dark:not(.admin-mode) #tileCalc .field,
.theme-dark body:not(.admin-mode) .tile-calc .field,
body.theme-dark:not(.admin-mode) .tile-calc .field,
.theme-dark body:not(.admin-mode) #tileCalc label,
body.theme-dark:not(.admin-mode) #tileCalc label{
  color:#cbd5e1!important;
}
.theme-dark body:not(.admin-mode) #tileCalc input,
body.theme-dark:not(.admin-mode) #tileCalc input,
.theme-dark body:not(.admin-mode) #tileCalc select,
body.theme-dark:not(.admin-mode) #tileCalc select,
.theme-dark body:not(.admin-mode) #tileCalc textarea,
body.theme-dark:not(.admin-mode) #tileCalc textarea,
.theme-dark body:not(.admin-mode) .tile-calc input,
body.theme-dark:not(.admin-mode) .tile-calc input,
.theme-dark body:not(.admin-mode) .tile-calc select,
body.theme-dark:not(.admin-mode) .tile-calc select,
.theme-dark body:not(.admin-mode) .tile-calc textarea,
body.theme-dark:not(.admin-mode) .tile-calc textarea{
  background:#0f172a!important;
  color:#e5e7eb!important;
  border-color:#334155!important;
}
.theme-dark body:not(.admin-mode) #tileCalc .section-title,
body.theme-dark:not(.admin-mode) #tileCalc .section-title,
.theme-dark body:not(.admin-mode) #tileCalc h3,
body.theme-dark:not(.admin-mode) #tileCalc h3,
.theme-dark body:not(.admin-mode) #tileCalc h4,
body.theme-dark:not(.admin-mode) #tileCalc h4{
  color:#f8fafc!important;
}
.theme-dark body.cabinet-mode,
body.theme-dark.cabinet-mode{
  background:#0b1120!important;
}
.theme-dark body.cabinet-mode main,
body.theme-dark.cabinet-mode main,
.theme-dark body.cabinet-mode .page-hero,
body.theme-dark.cabinet-mode .page-hero,
.theme-dark body.cabinet-mode .auth-container,
body.theme-dark.cabinet-mode .auth-container{
  background:#0b1120!important;
}
.theme-dark body.cabinet-mode .page-hero{
  margin-bottom:0!important;
  padding-bottom:32px!important;
}
.theme-dark body.cabinet-mode footer,
body.theme-dark.cabinet-mode footer,
.theme-dark body.cabinet-mode .site-footer,
body.theme-dark.cabinet-mode .site-footer{
  margin-top:0!important;
  background:#0f172a!important;
  border-top-color:#1e293b!important;
}

/* V183 notification channels */
.notification-card{
  margin:18px 0;
  background:#fff7ed;
  border-color:#fed7aa;
}
.notification-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:14px 0;
}
.notification-option{
  align-items:flex-start;
}
.notification-option small{
  display:block;
  margin-top:6px;
}
.telegram-settings{
  margin-top:12px;
}
.theme-dark body:not(.admin-mode) .notification-card,
body.theme-dark:not(.admin-mode) .notification-card{
  background:#1c1917;
  border-color:#7c2d12;
}
@media(max-width:760px){
  .notification-options{grid-template-columns:1fr;}
}

/* V184 notification toggle buttons */
.notification-toggle-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:16px 0;
}
.notification-toggle{
  border:1px solid #fed7aa;
  background:#fff;
  color:#9a3412;
  border-radius:16px;
  padding:14px 16px;
  font-weight:900;
  cursor:pointer;
  text-align:center;
  transition:.18s ease;
}
.notification-toggle.active{
  background:#ff7a1a;
  border-color:#ff7a1a;
  color:#fff;
  box-shadow:0 10px 22px rgba(255,122,26,.24);
}
.notification-toggle:hover{
  transform:translateY(-1px);
}
.theme-dark body:not(.admin-mode) .notification-toggle,
body.theme-dark:not(.admin-mode) .notification-toggle{
  background:#111827;
  border-color:#7c2d12;
  color:#fed7aa;
}
.theme-dark body:not(.admin-mode) .notification-toggle.active,
body.theme-dark:not(.admin-mode) .notification-toggle.active{
  background:#ff7a1a;
  color:#fff;
  border-color:#ff7a1a;
}
@media(max-width:760px){
  .notification-toggle-row{grid-template-columns:1fr;}
}

/* V185 telegram status + request expiry */
.telegram-status-line{
  margin:12px 0;
  font-weight:800;
}
.telegram-connected{
  color:#15803d;
  background:#dcfce7;
  border-radius:999px;
  padding:8px 12px;
  display:inline-flex;
}
.telegram-missing{
  color:#9a3412;
  background:#ffedd5;
  border-radius:999px;
  padding:8px 12px;
  display:inline-flex;
}
.theme-dark body:not(.admin-mode) .telegram-connected,
body.theme-dark:not(.admin-mode) .telegram-connected{
  color:#bbf7d0;
  background:#14532d;
}
.theme-dark body:not(.admin-mode) .telegram-missing,
body.theme-dark:not(.admin-mode) .telegram-missing{
  color:#fed7aa;
  background:#7c2d12;
}

/* V186 request status meta */
.status-meta{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.status-badge.pending{
  background:#fef3c7;
  color:#92400e;
}
.status-badge.rejected{
  background:#fee2e2;
  color:#991b1b;
}
.theme-dark body:not(.admin-mode) .status-badge.pending,
body.theme-dark:not(.admin-mode) .status-badge.pending{
  background:#78350f;
  color:#fde68a;
}
.theme-dark body:not(.admin-mode) .status-badge.rejected,
body.theme-dark:not(.admin-mode) .status-badge.rejected{
  background:#7f1d1d;
  color:#fecaca;
}

/* V187 admin verification + storage diagnostics */
.admin-verification-box{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:14px;
  margin:10px 0;
  background:#f8fafc;
}
.admin-verification-box a{
  font-weight:800;
  color:#d95f0e;
}
.theme-dark body:not(.admin-mode) .admin-verification-box,
body.theme-dark:not(.admin-mode) .admin-verification-box{
  background:#111827;
  border-color:#334155;
}

/* V188 admin verification layout fix */
.admin-master-extra{
  overflow:hidden;
}
.admin-verification-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px!important;
  width:100%;
}
.admin-verification-actions .btn{
  width:100%;
  min-width:0;
  padding:12px 10px;
  font-size:14px;
  line-height:1.15;
  white-space:normal;
  word-break:normal;
}
.admin-verification-box{
  width:100%;
  box-sizing:border-box;
}
.btn-sm{
  padding:8px 12px!important;
  font-size:14px!important;
}
.storage-diagnostics-card{
  margin:18px 0;
}
@media(max-width:980px){
  .admin-verification-actions{
    grid-template-columns:1fr!important;
  }
}

/* V191 request reject reason + status cleanup */
.status-meta{
  gap:8px;
}
.compact-request-card .status-meta{
  justify-content:flex-end;
}
.status-badge.rejected{
  white-space:normal;
  max-width:100%;
}

/* V192 admin reject reason + document preview */
.reject-reason-badge,
.reject-reason-row span,
.reject-reason-info{
  word-break:break-word;
}
.reject-reason-row{
  border-color:#fecaca!important;
  background:#fff7f7;
}
.doc-preview-file{
  min-height:120px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  padding:16px;
  background:#f8fafc;
}
.theme-dark body:not(.admin-mode) .doc-preview-file,
body.theme-dark:not(.admin-mode) .doc-preview-file{
  background:#0f172a;
  border-color:#334155;
}

/* V193 reject reason + upload feedback */
.reject-reason-badge{
  display:inline-flex;
  max-width:100%;
  white-space:normal;
}
.reject-reason-row{
  grid-column:1/-1;
}

/* V196 portfolio limit/remove */
.portfolio-item{
  position:relative;
  border-radius:16px;
  overflow:hidden;
  background:#f8fafc;
}
.portfolio-item img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.portfolio-remove{
  position:absolute;
  top:8px;
  right:8px;
  width:30px;
  height:30px;
  border-radius:999px;
  border:0;
  background:rgba(15,23,42,.82);
  color:#fff;
  font-size:22px;
  line-height:28px;
  cursor:pointer;
  font-weight:900;
}
.portfolio-remove:hover{
  background:#dc2626;
}
.theme-dark body:not(.admin-mode) .portfolio-item,
body.theme-dark:not(.admin-mode) .portfolio-item{
  background:#0f172a;
}

/* V203 notify switches + reply status */
.notify-pro-card{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}
.notify-switch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.notify-switch{border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:14px 16px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px;font-weight:800;color:#0f172a}
.notify-switch.active{border-color:#16a34a;background:#ecfdf5;box-shadow:0 8px 24px rgba(22,163,74,.12)}
.notify-switch.pending{border-color:#fb923c;background:#fff7ed}
.notify-switch-title{font-size:17px}
.notify-switch-status{font-size:13px;color:#64748b;font-weight:700}
.notify-switch-hint{font-size:12px;color:#ea580c;font-weight:800;margin-top:2px}
@media(max-width:720px){.notify-switch-grid{grid-template-columns:1fr}}
body.theme-dark:not(.admin-mode) .notify-pro-card,.theme-dark body:not(.admin-mode) .notify-pro-card{background:#111827;border-color:#334155}
body.theme-dark:not(.admin-mode) .notify-switch,.theme-dark body:not(.admin-mode) .notify-switch{background:#0f172a;border-color:#334155;color:#f8fafc}
body.theme-dark:not(.admin-mode) .notify-switch.active,.theme-dark body:not(.admin-mode) .notify-switch.active{background:#052e16;border-color:#16a34a}

/* V204 notification block + responsive banners */
.notify-pro-card{
  padding-top:20px!important;
}
.notify-pro-card h4{
  margin-top:0!important;
}
.notify-switch-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.notify-switch{
  text-align:left;
  border:1px solid #fed7aa;
  border-radius:16px;
  background:#fff7ed;
  padding:14px 16px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:5px;
  min-height:82px;
}
.notify-switch.active{
  border-color:#22c55e;
  background:#ecfdf5;
}
.notify-switch.pending{
  border-color:#f59e0b;
  background:#fffbeb;
}
.notify-switch-title{
  font-weight:900;
  color:#0f172a;
}
.notify-switch-status{
  font-weight:800;
  color:#64748b;
}
.notify-switch-hint{
  color:#ea580c;
  font-weight:800;
}
.promo-banner picture{
  width:100%;
  max-width:420px;
  display:block;
}
.promo-banner-img{
  width:100%;
  height:auto;
  aspect-ratio:16/7;
  object-fit:cover;
  border-radius:16px;
  display:block;
}
.pro-banner.has-banner-img{
  align-items:center;
}
.hero-visual picture,
.hero-visual .hero-storage-img{
  width:100%;
  height:100%;
  display:block;
}
.hero-visual picture img.hero-storage-img{
  width:100%;
  height:100%;
  object-fit:cover;
}
@media(max-width:900px){
  .notify-switch-grid{
    grid-template-columns:1fr;
  }
  .promo-banner{
    grid-template-columns:1fr!important;
  }
  .promo-banner picture{
    max-width:none;
  }
  .promo-banner-img{
    aspect-ratio:16/9;
  }
}
@media(max-width:640px){
  .promo-banner-img{
    aspect-ratio:4/3;
  }
}

/* V205 content tabs + image-only banners + upload processing */
.banner-image-only{
  display:block!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.banner-image-only picture{
  max-width:none!important;
}
.banner-image-only .promo-banner-img{
  width:100%;
  max-height:420px;
}
.content-subtabs{
  margin:12px 0 18px;
}
.admin-banner-upload-grid .field{
  min-height:132px;
}
.content-admin-card textarea{
  min-height:160px;
}
@media(max-width:640px){
  .banner-image-only .promo-banner-img{
    max-height:none;
  }
}

/* V206 grouped banner admin + materials */
.admin-banner-groups{display:grid;gap:18px;margin:16px 0;}
.admin-banner-group{border:1px solid #fed7aa;border-radius:20px;padding:18px;background:#fffaf5;}
.admin-banner-group-head h4{margin:0 0 4px;font-size:18px;}
.admin-banner-group-head .muted{margin:0 0 14px;}
.request-readable-details + .request-readable-details{margin-top:12px;}

/* V207 visible materials in calculation result */
#resultBox h3{
  margin:16px 0 8px;
  font-size:18px;
}
#resultBox table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 8px;
}
#resultBox table td{
  background:#fff7ed;
  border-top:1px solid #fed7aa;
  border-bottom:1px solid #fed7aa;
  padding:10px 12px;
}
#resultBox table td:first-child{
  border-left:1px solid #fed7aa;
  border-radius:12px 0 0 12px;
}
#resultBox table td:last-child{
  border-right:1px solid #fed7aa;
  border-radius:0 12px 12px 0;
  text-align:right;
}
body.theme-dark:not(.admin-mode) #resultBox table td{
  background:#1e293b;
  border-color:#334155;
}

/* V209: tile floor technology switch */
.segmented{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.segmented label{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border,#e2e8f0);border-radius:999px;padding:8px 12px;background:#fff;font-weight:700;cursor:pointer}
.segmented input{width:auto;margin:0}

/* V216 price editor grouping */
.price-editor-grid .card{overflow:visible}
.price-group{border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:14px;margin:14px 0;background:rgba(255,255,255,.55)}
.price-group h4{margin:0 0 12px;font-size:15px;color:#111827}
.tray-mosaic-field .check-card{min-height:44px;margin:0}


/* V217: компактне поле чекбокса мозаїки */
.inline-check,
.mosaic-check{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  line-height:1;
  margin-top:0;
}
.inline-check input,
.mosaic-check input{
  width:18px;
  height:18px;
  margin:0;
  flex:0 0 auto;
}
.inline-check span,
.mosaic-check span{
  display:inline-flex;
  align-items:center;
  margin:0;
  line-height:1;
}
.field .inline-check,
.field .mosaic-check{
  width:100%;
}


/* V218: поле "Облицювання з мозаїки" як звичайне поле калькулятора */
.tray-mosaic-compact{
  min-height:80px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.tray-mosaic-compact .mosaic-inline{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:42px;
  padding:0;
  margin:0;
  line-height:1;
}
.tray-mosaic-compact .mosaic-inline input[type="checkbox"]{
  width:18px;
  height:18px;
  margin:0;
  flex:0 0 auto;
}
.tray-mosaic-compact .mosaic-inline b{
  font-size:14px;
  font-weight:700;
  line-height:1;
  margin:0;
  display:inline-flex;
  align-items:center;
}


/* V219: exact inline alignment for tray mosaic checkbox */
.tray-mosaic-compact{justify-content:flex-start !important;}
.tray-mosaic-compact .mosaic-inline{display:flex !important;align-items:center !important;flex-direction:row !important;flex-wrap:nowrap !important;white-space:nowrap !important;column-gap:10px !important;row-gap:0 !important;}
.tray-mosaic-compact .mosaic-inline > *{vertical-align:middle !important;}
.tray-mosaic-compact .mosaic-inline .mosaic-text{display:inline-block !important;line-height:18px !important;font-size:14px !important;font-weight:700 !important;margin:0 !important;padding:0 !important;}


/* V223 compact request details + verification/auth notes */
.auth-confirm-info{margin-bottom:14px}
.verified-master-note{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:92px;
  border:1px solid #bbf7d0;
  background:#ecfdf5;
  color:#15803d;
  font-weight:900;
  border-radius:18px;
}
.compact-readable-details h4{margin:14px 0 8px}
.request-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.request-detail-cell{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  min-width:0;
}
.request-detail-cell strong{
  font-size:12px;
  color:#64748b;
}
.request-detail-cell span{
  font-size:13px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
@media(min-width:980px){
  .compact-details .request-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
}


/* V226 rich text for About service blocks */
.rich-text p{margin:10px 0 0;line-height:1.7;color:#4b5563}
.rich-text p:first-of-type{margin-top:0}
.rich-text a{color:var(--primary-dark);font-weight:800;text-decoration:underline;text-underline-offset:3px}
