
.vdpp-wrap{
  --vdpp-green:#2f5622;
  --vdpp-dark:#1b2f15;
  --vdpp-light:#eef7ea;
  --vdpp-border:#dce9d3;
  --vdpp-shadow:0 12px 30px rgba(0,0,0,.08);
  --vdpp-card:rgba(255,255,255,.95);
  display:grid;
  gap:18px;
}
.vdpp-hero,
.vdpp-plan-manager-card,
.vdpp-form-card,
.vdpp-table-card,
.vdpp-layout-card{
  background:var(--vdpp-card);
  border-radius:28px;
  box-shadow:var(--vdpp-shadow);
  border:1px solid #e5efdc;
}
.vdpp-hero{
  padding:26px 28px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  background:linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,248,228,.94));
}
.vdpp-pill{
  display:inline-flex;
  margin-bottom:12px;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  color:#355f2d;
  font-weight:700;
}
.vdpp-hero h1{
  margin:0 0 12px;
  font-size:40px;
  line-height:1.06;
  color:#27411b;
}
.vdpp-hero p{
  margin:0;
  color:#51654a;
  line-height:1.6;
  max-width:780px;
}
.vdpp-hero-note{
  white-space:nowrap;
  background:#fff;
  color:#355f2d;
  border-radius:999px;
  padding:12px 16px;
  font-weight:700;
}
.vdpp-account-note{
  border-radius:18px;
  padding:16px 18px;
  font-weight:600;
}
.vdpp-account-note.is-ok{
  background:#eef7ea;
  border:1px solid #d3e6c4;
  color:#3f5f31;
}
.vdpp-account-note.is-warning{
  background:#fff6e8;
  border:1px solid #f0d7a4;
  color:#7d5a14;
}
.vdpp-feature-strip{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.vdpp-feature-pill{
  display:inline-flex;
  padding:11px 15px;
  border-radius:999px;
  background:linear-gradient(135deg,#ffffff,#f2f7ed);
  color:#355f2d;
  font-weight:700;
  border:1px solid #dfebd6;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
}
.vdpp-plan-manager-card,
.vdpp-form-card,
.vdpp-table-card,
.vdpp-layout-card{
  padding:22px;
}
.vdpp-card-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:16px;
}
.vdpp-card-head h2{
  margin:0 0 6px;
  color:var(--vdpp-green);
}
.vdpp-card-head p{
  margin:0;
  color:#5b6d55;
}
.vdpp-form-actions-top{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.vdpp-form-help{
  margin-bottom:14px;
  background:#f8fbf5;
  border:1px solid #e3eedb;
  border-radius:16px;
  padding:12px 14px;
  color:#4d6145;
}
.vdpp-plan-manager-grid{
  display:grid;
  grid-template-columns:1.2fr 1.2fr 0.8fr 0.9fr auto;
  gap:16px;
  align-items:end;
}
.vdpp-plan-actions,
.vdpp-actions,
.vdpp-bg-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.vdpp-plan-badges{
  margin-top:14px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.vdpp-plan-badge{
  border:1px solid #dce9d3;
  background:#fff;
  border-radius:18px;
  padding:10px 14px;
  display:grid;
  gap:4px;
  min-width:160px;
  text-align:left;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
  cursor:pointer;
}
.vdpp-plan-badge.is-active{
  border-color:#7ab161;
  box-shadow:0 12px 26px rgba(52,101,35,.12);
}
.vdpp-plan-badge-name{ font-weight:800; color:#27411b; }
.vdpp-plan-badge-meta{ font-size:12px; color:#66795f; }
.vdpp-season-badge{
  justify-self:start;
  display:inline-flex;
  padding:5px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}
.vdpp-season-all{ background:#eef2f5; color:#52606d; }
.vdpp-season-spring{ background:#ebf8e6; color:#3d7a2f; }
.vdpp-season-summer{ background:#fff3d6; color:#a26300; }
.vdpp-season-autumn{ background:#fff0e5; color:#b95f15; }
.vdpp-season-winter{ background:#eaf4ff; color:#2f6ab0; }
.vdpp-layer-meta{
  margin-top:6px;
  font-size:12px;
  font-weight:700;
  color:#5e7156;
}
.vdpp-field{
  display:grid;
  gap:8px;
}
.vdpp-field-wide{
  grid-column:span 2;
}
.vdpp-field-compact{
  min-width:108px;
}
.vdpp-field-mini{
  min-width:84px;
}
.vdpp-core-fields{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:end;
}
.vdpp-core-fields .vdpp-field{
  flex:0 1 96px;
}
.vdpp-field label{
  font-weight:700;
  color:#355f2d;
}
.vdpp-field input,
.vdpp-field select{
  border:1px solid var(--vdpp-border);
  border-radius:16px;
  padding:13px 14px;
  font-size:15px;
  background:#fcfffa;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}
.vdpp-field-compact label{
  font-size:12px;
}
.vdpp-field-mini label{
  font-size:11px;
}
.vdpp-field-compact input,
.vdpp-field-compact select{
  padding:8px 10px;
  min-height:38px;
  font-size:13px;
}
.vdpp-field-mini input,
.vdpp-field-mini select{
  padding:6px 8px;
  min-height:34px;
  font-size:12px;
  border-radius:12px;
}
.vdpp-small-note{
  color:#6a7c63;
  font-size:12px;
}
.vdpp-manual-wrap.is-hidden,
.vdpp-extra-fields.is-hidden,
.vdpp-columns-panel.is-hidden{
  display:none !important;
}
.vdpp-catalog-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
}
.vdpp-form{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  align-items:end;
}
.vdpp-extra-fields{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  padding-top:6px;
}
.vdpp-stage-grid{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
}
.vdpp-stage-card{
  background:#f8fbf5;
  border:1px solid #e3eedb;
  border-radius:18px;
  padding:14px;
}
.vdpp-stage-card h3{
  margin:0 0 10px;
  font-size:16px;
  color:#2f5622;
}
.vdpp-stage-row{
  display:grid;
  gap:8px;
}
.vdpp-btn{
  border:none;
  border-radius:16px;
  padding:13px 16px;
  font-weight:700;
  background:#f3f7ef;
  color:#29481d;
  cursor:pointer;
  box-shadow:0 8px 16px rgba(0,0,0,.05);
  transition:transform .18s ease, box-shadow .18s ease;
}
.vdpp-btn:hover{
  transform:translateY(-1px);
}
.vdpp-btn-primary{
  background:#000;
  color:#fff;
}
.vdpp-btn-danger{
  background:#fff1f0;
  color:#9c2e23;
}
.vdpp-btn-print{
  background:linear-gradient(135deg,#f5fbff,#e8f4ff);
  color:#204868;
  border:1px solid #cfe2f6;
}
.vdpp-bg-tools{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:end;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #e5efdc;
}
.vdpp-plot-settings-grid{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}
.vdpp-rotation-tools{
  display:grid;
  gap:8px;
  align-self:stretch;
}
.vdpp-rotation-label{
  font-weight:700;
  color:#355f2d;
  font-size:13px;
}
.vdpp-rotation-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.vdpp-rotation-actions .vdpp-btn{
  padding:10px 12px;
}
.vdpp-rotation-value{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 12px;
  border-radius:14px;
  background:#f3f7ef;
  color:#29481d;
  font-weight:700;
  border:1px solid #dce9d3;
}
#vdpp-plot-area-view[readonly]{
  background:#f7faf4;
  color:#355f2d;
  font-weight:700;
}
.vdpp-directions-grid{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.vdpp-legend{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.vdpp-culture-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  font-weight:700;
  border:1px solid transparent;
  box-shadow:0 4px 10px rgba(0,0,0,.04);
}
.vdpp-culture-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  font-size:15px;
  line-height:1;
}
.vdpp-inline-label{
  display:inline-flex;
  margin-left:8px;
  padding:4px 8px;
  border-radius:999px;
  background:#f0f5eb;
  color:#3f5f31;
  font-size:12px;
  font-weight:700;
}
.vdpp-table-sections{
  display:grid;
  gap:18px;
}
.vdpp-table-section{
  background:#fff;
  border:1px solid #e5efdc;
  border-radius:22px;
  padding:14px;
  box-shadow:0 8px 22px rgba(0,0,0,.05);
}
.vdpp-section-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.vdpp-section-head h3{
  margin:0;
  color:#2f5622;
}
.vdpp-section-head span{
  display:inline-flex;
  padding:7px 10px;
  border-radius:999px;
  background:#f3f7ef;
  color:#355f2d;
  font-weight:700;
}
.vdpp-table-wrap{
  overflow:auto;
}
.vdpp-table{
  width:100%;
  border-collapse:collapse;
}
.vdpp-table th{
  background:#67a030;
  color:#fff;
  text-align:left;
  padding:14px;
}
.vdpp-table td{
  padding:14px;
  border-bottom:1px solid #edf2e8;
  vertical-align:top;
  background:#fff;
}
.vdpp-table tbody tr:nth-child(even) td{
  background:#fbfdf9;
}
.vdpp-small-muted{
  color:#6a7c63;
  font-size:12px;
}
.vdpp-actions-cell{
  width:70px;
}
.vdpp-row-menu{
  position:relative;
}
.vdpp-row-menu summary{
  list-style:none;
  cursor:pointer;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px;
  background:#f3f7ef;
  font-size:24px;
  line-height:1;
}
.vdpp-row-menu summary::-webkit-details-marker{
  display:none;
}
.vdpp-row-menu-list{
  position:absolute;
  right:0;
  top:42px;
  z-index:8;
  min-width:210px;
  background:#fff;
  border:1px solid #e1edd7;
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  border-radius:16px;
  padding:8px;
  display:grid;
  gap:6px;
}
.vdpp-row-menu-list button{
  border:none;
  background:#fff;
  text-align:left;
  padding:10px 12px;
  border-radius:12px;
  cursor:pointer;
  color:#29481d;
  font-weight:600;
}
.vdpp-row-menu-list button:hover{
  background:#f6faf2;
}
.vdpp-row-menu-list button[data-disabled="1"]{
  color:#8ea086;
}
.vdpp-columns-panel{
  margin-bottom:18px;
  padding:16px;
  border:1px solid #e3eedb;
  border-radius:20px;
  background:#fbfdf9;
}
.vdpp-columns-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.vdpp-columns-card{
  background:#fff;
  border:1px solid #e6efdf;
  border-radius:18px;
  padding:14px;
}
.vdpp-columns-card h3{
  margin:0 0 10px;
  color:#2f5622;
}
.vdpp-column-toggle{
  display:flex;
  gap:10px;
  align-items:center;
  margin-bottom:8px;
  color:#476040;
}
.vdpp-layout-canvas-wrap{
  position:relative;
  padding:18px;
  overflow:auto;
}
.vdpp-ruler{
  display:none !important;
}
.vdpp-stage-ruler{
  position:absolute;
  z-index:4;
  pointer-events:none;
  color:#68805f;
  font-size:11px;
}
.vdpp-stage-ruler-top{
  top:0;
  left:42px;
  right:0;
  height:28px;
  display:flex;
  align-items:flex-end;
}
.vdpp-stage-ruler-left{
  top:32px;
  left:0;
  bottom:0;
  width:38px;
  display:flex;
  flex-direction:column;
}
.vdpp-stage-ruler span{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#657c5d;
  background:rgba(255,255,255,.68);
  border:1px solid rgba(223,234,214,.9);
}
.vdpp-stage-ruler-top span{
  width:80px;
  flex:0 0 80px;
  height:24px;
  border-radius:10px 10px 0 0;
  border-bottom:none;
}
.vdpp-stage-ruler-left span{
  height:80px;
  flex:0 0 80px;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  border-radius:0 10px 10px 0;
  border-left:none;
}
.vdpp-stage-origin{
  position:absolute;
  top:11px;
  left:11px;
  z-index:5;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#5f8f34;
  box-shadow:0 0 0 3px rgba(255,255,255,.85);
  pointer-events:none;
}
.vdpp-direction{
  position:absolute;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  border:1px solid #dfead6;
  color:#2f5622;
  font-weight:700;
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}
.vdpp-direction-north{ top:0; left:50%; transform:translate(-50%, -10%); }
.vdpp-direction-east{ top:50%; right:0; transform:translate(10%, -50%); }
.vdpp-direction-south{ bottom:0; left:50%; transform:translate(-50%, 10%); }
.vdpp-direction-west{ top:50%; left:0; transform:translate(-10%, -50%); }
.vdpp-canvas{
  position:relative;
  min-height:400px;
  min-width:640px;
  isolation:isolate;
  border-radius:24px;
  border:2px solid #d9e8cf;
  background:
    linear-gradient(to right, rgba(163, 201, 127, .14) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(163, 201, 127, .14) 1px, transparent 1px),
    linear-gradient(180deg, rgba(251,254,249,.98), rgba(241,248,236,.96));
  background-size:40px 40px, 40px 40px, auto;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4), 0 10px 24px rgba(0,0,0,.04);
  overflow:hidden;
}
.vdpp-canvas-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background-size:auto, cover;
  background-position:0 0, center;
  background-repeat:no-repeat;
  transform-origin:center;
  opacity:.95;
  pointer-events:none;
}
.vdpp-bed{
  position:absolute;
  z-index:1;
  overflow:hidden;
  border-radius:16px;
  cursor:move;
  user-select:none;
  padding:10px 12px;
  box-shadow:0 10px 24px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.35);
}
.vdpp-bed::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.22;
  pointer-events:none;
  border-radius:14px;
}
.vdpp-bed > *{ position:relative; z-index:1; }
.vdpp-bed.active{
  outline:4px solid rgba(46,81,32,.18);
}
.vdpp-bed-title{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:800;
  font-size:15px;
  color:#244319;
  margin-bottom:4px;
}
.vdpp-bed-emoji{
  font-size:18px;
  line-height:1;
}
.vdpp-bed-subtitle{
  font-size:13px;
  color:#29481d;
  line-height:1.35;
}
.vdpp-bed-label{
  display:inline-flex;
  margin-top:8px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.55);
  font-size:12px;
  font-weight:700;
  color:#2d4d20;
}
.vdpp-bed-resize{
  position:absolute;
  width:14px;
  height:14px;
  right:6px;
  bottom:6px;
  border-radius:4px;
  background:#244319;
  cursor:nwse-resize;
}
.vdpp-bed.is-tomato{ border:2px solid #c44a3d; background:linear-gradient(135deg, rgba(255,232,229,.98), rgba(245,170,158,.98)); }
.vdpp-bed.is-tomato::before{ background:radial-gradient(circle at 18px 18px, rgba(255,255,255,.65) 0 7px, transparent 8px), radial-gradient(circle at 58px 34px, rgba(255,255,255,.45) 0 6px, transparent 7px), radial-gradient(circle at 96px 20px, rgba(255,255,255,.5) 0 7px, transparent 8px); }
.vdpp-bed.is-cucumber{ border:2px solid #4f9b4e; background:linear-gradient(135deg, rgba(234,247,225,.98), rgba(173,220,149,.98)); }
.vdpp-bed.is-cucumber::before{ background:repeating-linear-gradient(135deg, rgba(255,255,255,.38) 0 8px, transparent 8px 18px), repeating-linear-gradient(45deg, rgba(255,255,255,.18) 0 8px, transparent 8px 18px); }
.vdpp-bed.is-pepper{ border:2px solid #d57f2d; background:linear-gradient(135deg, rgba(255,243,225,.98), rgba(242,190,120,.98)); }
.vdpp-bed.is-pepper::before{ background:linear-gradient(90deg, rgba(255,255,255,.16) 0 18%, transparent 18% 36%, rgba(255,255,255,.16) 36% 54%, transparent 54% 72%, rgba(255,255,255,.16) 72% 100%); }
.vdpp-bed.is-carrot{ border:2px solid #de7d27; background:linear-gradient(135deg, rgba(255,241,228,.98), rgba(244,180,118,.98)); }
.vdpp-bed.is-carrot::before{ background:repeating-linear-gradient(120deg, rgba(255,255,255,.32) 0 7px, transparent 7px 16px); }
.vdpp-bed.is-zucchini,.vdpp-bed.is-salad,.vdpp-bed.is-cabbage{ border:2px solid #66934b; background:linear-gradient(135deg, rgba(242,248,230,.98), rgba(191,216,148,.98)); }
.vdpp-bed.is-zucchini::before,.vdpp-bed.is-salad::before,.vdpp-bed.is-cabbage::before{ background:radial-gradient(circle at 18px 18px, rgba(255,255,255,.4) 0 10px, transparent 11px), radial-gradient(circle at 56px 42px, rgba(255,255,255,.28) 0 12px, transparent 13px), radial-gradient(circle at 104px 22px, rgba(255,255,255,.34) 0 10px, transparent 11px); }
.vdpp-bed.is-dill{ border:2px solid #3b8c63; background:linear-gradient(135deg, rgba(231,249,241,.98), rgba(151,220,184,.98)); }
.vdpp-bed.is-dill::before{ background:repeating-linear-gradient(90deg, rgba(255,255,255,.28) 0 2px, transparent 2px 10px); }
.vdpp-bed.is-beet{ border:2px solid #93436c; background:linear-gradient(135deg, rgba(251,235,244,.98), rgba(217,158,189,.98)); }
.vdpp-bed.is-beet::before{ background:repeating-linear-gradient(135deg, rgba(255,255,255,.24) 0 5px, transparent 5px 14px), repeating-linear-gradient(45deg, rgba(255,255,255,.16) 0 5px, transparent 5px 14px); }
.vdpp-bed.is-onion{ border:2px solid #a8954d; background:linear-gradient(135deg, rgba(252,249,232,.98), rgba(225,214,154,.98)); }
.vdpp-bed.is-onion::before{ background:radial-gradient(circle at 24px 22px, rgba(255,255,255,.42) 0 9px, transparent 10px), repeating-linear-gradient(90deg, rgba(255,255,255,.18) 0 3px, transparent 3px 16px); }
.vdpp-bed.is-generic{ border:2px solid #5f8f34; background:linear-gradient(135deg, rgba(224,244,210,.98), rgba(171,210,126,.98)); }
.vdpp-bed.is-generic::before{ background:repeating-linear-gradient(135deg, rgba(255,255,255,.22) 0 7px, transparent 7px 16px); }

.vdpp-culture-chip.is-tomato{ color:#9e2f25; background:#fff1ef; border-color:#f2c2bb; }
.vdpp-culture-chip.is-cucumber{ color:#2f7b35; background:#eef9eb; border-color:#cde7c8; }
.vdpp-culture-chip.is-pepper{ color:#9b5a18; background:#fff5e8; border-color:#f0d6ab; }
.vdpp-culture-chip.is-carrot{ color:#a85f1e; background:#fff4ea; border-color:#f1d3b3; }
.vdpp-culture-chip.is-zucchini,.vdpp-culture-chip.is-salad,.vdpp-culture-chip.is-cabbage{ color:#48703c; background:#f3faed; border-color:#d4e8c8; }
.vdpp-culture-chip.is-dill{ color:#296848; background:#ebfaf2; border-color:#c7e8d6; }
.vdpp-culture-chip.is-beet{ color:#723352; background:#fbf0f6; border-color:#e8c8d8; }
.vdpp-culture-chip.is-onion{ color:#7b6b31; background:#fcfaee; border-color:#e5ddb6; }
.vdpp-culture-chip.is-generic{ color:#355f2d; background:#f2f8ea; border-color:#d5e5c0; }

.vdpp-tooltip{
  position:absolute;
  z-index:30;
  width:260px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(27,41,20,.96);
  color:#fff;
  box-shadow:0 14px 28px rgba(0,0,0,.18);
  pointer-events:none;
}
.vdpp-tooltip-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
  font-size:15px;
}
.vdpp-tooltip-emoji{ font-size:18px; }
.vdpp-tooltip-row{
  font-size:13px;
  opacity:.95;
  margin-bottom:4px;
}
.vdpp-tooltip-text{
  margin-top:8px;
  font-size:13px;
  line-height:1.45;
  color:#eff7ea;
}
.vdpp-tooltip-note{
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.14);
  font-size:12px;
  color:#dcebd4;
}
@media (max-width: 1100px){
  .vdpp-plan-manager-grid{ grid-template-columns:1fr 1fr; }
  .vdpp-plan-actions{ grid-column:span 2; }
}
@media (max-width: 980px){
  .vdpp-form,.vdpp-extra-fields{ grid-template-columns:repeat(2,1fr); }
  .vdpp-stage-grid{ grid-template-columns:repeat(2,1fr); }
  .vdpp-columns-grid{ grid-template-columns:1fr; }
  .vdpp-plot-settings-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 780px){
  .vdpp-hero,.vdpp-card-head{ flex-direction:column; }
  .vdpp-form,.vdpp-extra-fields,.vdpp-plan-manager-grid,.vdpp-directions-grid,.vdpp-stage-grid,.vdpp-catalog-row,.vdpp-bg-tools,.vdpp-plot-settings-grid{ grid-template-columns:1fr; }
  .vdpp-field-wide{ grid-column:span 1; }
  .vdpp-core-fields .vdpp-field{ flex:1 1 calc(50% - 12px); }
}
@media print{
  body{ background:#fff !important; }
  .vdpp-actions,
  .vdpp-plan-manager-card,
  .vdpp-form-card,
  .vdpp-account-note,
  .vdpp-feature-strip,
  .vdpp-columns-panel,
  .vdpp-tooltip{
    display:none !important;
  }
  .vdpp-hero,
  .vdpp-table-card,
  .vdpp-layout-card{
    box-shadow:none !important;
    border:1px solid #d9e7cf !important;
    break-inside:avoid;
    page-break-inside:avoid;
  }
  .vdpp-bed,
  .vdpp-culture-chip,
  .vdpp-table th{
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
}


.vdpp-catalog-search-wrap{
  display:grid;
  gap:8px;
}
.vdpp-catalog-meta{
  color:#62745b;
  font-size:13px;
}
#vdpp-catalog-search{
  background:#fff;
}
#vdpp-catalog-select{
  min-height:220px;
  padding:8px;
}
#vdpp-catalog-select option{
  padding:10px 12px;
  border-radius:10px;
}


.vdpp-tooltip-sub{
  margin-top:8px;
  margin-bottom:4px;
  font-size:12px;
  font-weight:700;
  color:#bfe1b3;
  text-transform:uppercase;
  letter-spacing:.03em;
}


.vdpp-weather-card{
  background:rgba(255,255,255,.95);
  border-radius:28px;
  box-shadow:var(--vdpp-shadow);
  border:1px solid #e5efdc;
  padding:22px;
}
.vdpp-weather-page{
  margin:0 auto;
  max-width:1100px;
}
.vdpp-weather-now{
  text-align:right;
}
.vdpp-weather-temp{
  font-size:42px;
  font-weight:800;
  color:#214418;
  line-height:1;
}
.vdpp-weather-meta{
  color:#60725a;
  margin-top:6px;
}
.vdpp-weather-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:8px;
}
.vdpp-weather-info{
  background:#f8fbf5;
  border:1px solid #e3eedb;
  border-radius:18px;
  padding:14px;
  color:#3f5f31;
}
.vdpp-advisories{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.vdpp-advisory{
  border-radius:16px;
  padding:14px 16px;
  border:1px solid transparent;
}
.vdpp-advisory.is-good{
  background:#eef7ea;
  color:#345a28;
  border-color:#d6e8cb;
}
.vdpp-advisory.is-warning{
  background:#fff8ea;
  color:#7c5a17;
  border-color:#f0ddb0;
}
.vdpp-advisory.is-danger{
  background:#fff1f0;
  color:#9c2e23;
  border-color:#f0c6c2;
}
.vdpp-weather-days{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:14px;
}
.vdpp-weather-day{
  background:linear-gradient(135deg,#fff,#f3f8ef);
  border:1px solid #e3eedb;
  border-radius:18px;
  padding:14px;
}
.vdpp-weather-date{
  font-weight:700;
  color:#2f5622;
  margin-bottom:8px;
}
.vdpp-weather-condition{
  color:#52664b;
}
.vdpp-weather-range{
  margin-top:8px;
  font-weight:700;
  color:#214418;
}
.vdpp-weather-precip{
  margin-top:8px;
  color:#5b6d55;
  font-size:13px;
}
.vdpp-weather-footer{
  margin-top:12px;
  color:#72846b;
  font-size:13px;
}
@media (max-width: 900px){
  .vdpp-weather-grid,
  .vdpp-weather-days{
    grid-template-columns:1fr;
  }
}


/* Weather UI refresh */
.vdpp-weather-card{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(123, 198, 255, .22), transparent 34%),
    radial-gradient(circle at top left, rgba(255, 227, 168, .28), transparent 26%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  border:1px solid #dfeaf6;
  box-shadow:0 18px 40px rgba(25, 69, 115, .10);
}
.vdpp-weather-card::before{
  content:"";
  position:absolute;
  inset:auto -30px -40px auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(144,201,255,.18), transparent 70%);
  pointer-events:none;
}
.vdpp-weather-card .vdpp-card-head{
  align-items:center;
}
.vdpp-weather-card h2{
  color:#1d3d61;
}
.vdpp-weather-card .vdpp-card-head p{
  color:#607a97;
}
.vdpp-weather-now{
  min-width:180px;
  background:rgba(255,255,255,.7);
  border:1px solid #e3eef8;
  border-radius:22px;
  padding:16px 18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.vdpp-weather-temp{
  font-size:50px;
  font-weight:800;
  color:#173b62;
  line-height:1;
}
.vdpp-weather-meta{
  margin-top:8px;
  color:#5c7894;
  font-size:14px;
}
.vdpp-weather-grid{
  margin-top:14px;
}
.vdpp-weather-info{
  background:rgba(255,255,255,.78);
  border:1px solid #e3eef8;
  color:#345270;
  box-shadow:0 8px 18px rgba(29,61,97,.05);
}
.vdpp-weather-info strong{
  color:#173b62;
}
.vdpp-advisories{
  margin-top:16px;
}
.vdpp-advisory{
  box-shadow:0 8px 18px rgba(0,0,0,.05);
}
.vdpp-weather-days{
  margin-top:16px;
}
.vdpp-weather-day{
  background:linear-gradient(180deg,#ffffff 0%, #f6fbff 100%);
  border:1px solid #e3eef8;
  box-shadow:0 10px 22px rgba(29,61,97,.05);
}
.vdpp-weather-date{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#edf6ff;
  color:#28507b;
  margin-bottom:10px;
}
.vdpp-weather-condition{
  color:#526d87;
  min-height:38px;
}
.vdpp-weather-range{
  display:inline-flex;
  margin-top:10px;
  padding:8px 12px;
  border-radius:14px;
  background:#f2f8ff;
  color:#173b62;
}
.vdpp-weather-precip{
  margin-top:10px;
  display:block;
  color:#5e7893;
}
.vdpp-weather-footer{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed #d8e6f4;
  color:#7690aa;
}


/* Strong weather card refresh v5.6.3 */
.vdpp-weather-shell{
  width:100%;
}
.vdpp-weather-shell .vdpp-weather-card{
  position:relative;
  overflow:hidden;
  padding:24px;
  background:
    radial-gradient(circle at top right, rgba(126,195,255,.28), transparent 35%),
    radial-gradient(circle at top left, rgba(255,228,168,.30), transparent 26%),
    linear-gradient(180deg, #ffffff 0%, #f4f9ff 100%);
  border:1px solid #d9e7f5;
  box-shadow:0 20px 44px rgba(29,61,97,.10);
  border-radius:32px;
}
.vdpp-weather-shell .vdpp-weather-card::after{
  content:"";
  position:absolute;
  right:-36px;
  bottom:-36px;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(148,206,255,.20), transparent 70%);
  pointer-events:none;
}
.vdpp-weather-shell .vdpp-card-head{
  align-items:center;
  gap:18px;
}
.vdpp-weather-shell .vdpp-card-head h2{
  margin:0 0 8px;
  font-size:30px;
  color:#173b62;
}
.vdpp-weather-shell .vdpp-card-head p{
  margin:0;
  color:#607a97;
}
.vdpp-weather-shell .vdpp-weather-now{
  min-width:200px;
  text-align:right;
  padding:16px 18px;
  border-radius:24px;
  background:rgba(255,255,255,.78);
  border:1px solid #e2edf8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.vdpp-weather-shell .vdpp-weather-temp{
  font-size:56px;
  font-weight:800;
  line-height:1;
  letter-spacing:-.03em;
  color:#173b62;
}
.vdpp-weather-shell .vdpp-weather-meta{
  margin-top:8px;
  color:#5e7895;
  font-size:14px;
}
.vdpp-weather-shell .vdpp-weather-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-top:14px;
}
.vdpp-weather-shell .vdpp-weather-info{
  background:rgba(255,255,255,.82);
  border:1px solid #e2edf8;
  color:#345270;
  box-shadow:0 10px 22px rgba(29,61,97,.05);
  border-radius:20px;
  padding:16px;
}
.vdpp-weather-shell .vdpp-weather-info strong{
  color:#173b62;
}
.vdpp-weather-shell .vdpp-advisories{
  display:grid;
  gap:10px;
  margin-top:16px;
}
.vdpp-weather-shell .vdpp-advisory{
  padding:14px 16px;
  border-radius:18px;
  box-shadow:0 10px 22px rgba(0,0,0,.05);
}
.vdpp-weather-shell .vdpp-weather-days{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:18px;
}
.vdpp-weather-shell .vdpp-weather-day{
  background:linear-gradient(180deg,#ffffff 0%, #f5faff 100%);
  border:1px solid #e3eef8;
  box-shadow:0 12px 24px rgba(29,61,97,.05);
  border-radius:22px;
  padding:16px;
}
.vdpp-weather-shell .vdpp-weather-date{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#edf6ff;
  color:#28507b;
  margin-bottom:10px;
  font-weight:700;
}
.vdpp-weather-shell .vdpp-weather-condition{
  min-height:40px;
  color:#526d87;
}
.vdpp-weather-shell .vdpp-weather-range{
  display:inline-flex;
  margin-top:10px;
  padding:8px 12px;
  border-radius:14px;
  background:#f1f8ff;
  color:#173b62;
  font-weight:800;
}
.vdpp-weather-shell .vdpp-weather-precip{
  display:block;
  margin-top:10px;
  color:#5e7893;
  font-size:13px;
}
.vdpp-weather-shell .vdpp-weather-footer{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed #d8e6f4;
  color:#7690aa;
  font-size:13px;
}
@media (max-width: 900px){
  .vdpp-weather-shell .vdpp-weather-grid,
  .vdpp-weather-shell .vdpp-weather-days{
    grid-template-columns:1fr;
  }
  .vdpp-weather-shell .vdpp-card-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .vdpp-weather-shell .vdpp-weather-now{
    width:100%;
    text-align:left;
  }
}


/* White background shell behind planner blocks */
.vdpp-wrap{
  position:relative;
  padding:18px;
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.82));
  border:1px solid #e6eee0;
  box-shadow:0 18px 40px rgba(0,0,0,.05);
}
.vdpp-wrap > *{
  position:relative;
  z-index:1;
}
.vdpp-hero,
.vdpp-plan-manager-card,
.vdpp-form-card,
.vdpp-table-card,
.vdpp-layout-card,
.vdpp-weather-card{
  background:rgba(255,255,255,.96);
}
@media (max-width: 767px){
  .vdpp-wrap{
    padding:12px;
    border-radius:24px;
  }
}


/* Fix overflowing cards so the white shell matches all blocks */
.vdpp-wrap,
.vdpp-wrap *,
.vdpp-wrap *::before,
.vdpp-wrap *::after{
  box-sizing:border-box;
}
.vdpp-wrap{
  width:100%;
  max-width:100%;
  overflow:hidden;
}
.vdpp-hero,
.vdpp-plan-manager-card,
.vdpp-form-card,
.vdpp-table-card,
.vdpp-layout-card,
.vdpp-weather-card{
  width:100%;
  max-width:100%;
}
.vdpp-hero{
  flex-wrap:wrap;
  gap:16px;
}
.vdpp-hero-copy{
  flex:1 1 560px;
  min-width:0;
  max-width:100%;
}
.vdpp-hero-note{
  flex:0 1 auto;
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
.vdpp-card-head{
  flex-wrap:wrap;
}
.vdpp-feature-pill,
.vdpp-btn,
.vdpp-culture-chip,
.vdpp-inline-label,
.vdpp-direction{
  max-width:100%;
  overflow-wrap:anywhere;
}
@media (max-width: 900px){
  .vdpp-hero-copy{
    flex-basis:100%;
  }
  .vdpp-hero-note{
    width:100%;
  }
}


/* Bigger top planner block */
.vdpp-hero{
  min-height:190px;
  padding:34px 38px;
  align-items:center;
}
.vdpp-hero-copy{
  max-width:820px;
}
.vdpp-hero h1{
  font-size:52px;
  line-height:1.04;
  margin-bottom:16px;
}
.vdpp-hero p{
  font-size:18px;
  line-height:1.7;
  max-width:760px;
}
.vdpp-pill{
  padding:12px 16px;
  font-size:15px;
}
.vdpp-hero-note{
  padding:14px 18px;
  font-size:14px;
}
@media (max-width: 1100px){
  .vdpp-hero{
    min-height:170px;
    padding:28px 30px;
  }
  .vdpp-hero h1{
    font-size:44px;
  }
}
@media (max-width: 767px){
  .vdpp-hero{
    min-height:auto;
    padding:22px 20px;
  }
  .vdpp-hero h1{
    font-size:34px;
  }
  .vdpp-hero p{
    font-size:16px;
    line-height:1.6;
  }
}


/* Wider main hero card */
.vdpp-hero{
  width:100%;
  max-width:100%;
  display:grid;
  grid-template-columns:minmax(0, 1.25fr) auto;
  column-gap:24px;
}
.vdpp-hero-copy{
  max-width:none;
  width:100%;
}
.vdpp-hero-note{
  align-self:start;
  justify-self:end;
  min-width:220px;
  text-align:center;
}
@media (max-width: 1100px){
  .vdpp-hero{
    grid-template-columns:1fr;
    row-gap:16px;
  }
  .vdpp-hero-note{
    justify-self:start;
    min-width:0;
    width:auto;
  }
}


/* Container-based layout fix: adapt by actual planner width, not viewport width */
.vdpp-wrap{
  container-type:inline-size;
  container-name:vdpp;
}
.vdpp-hero,
.vdpp-plan-manager-card,
.vdpp-form-card,
.vdpp-table-card,
.vdpp-layout-card{
  min-width:0;
}
.vdpp-plan-actions,
.vdpp-bg-actions,
.vdpp-form-actions-top{
  min-width:0;
}
.vdpp-btn{
  max-width:100%;
}
.vdpp-form,
.vdpp-extra-fields,
.vdpp-stage-grid,
.vdpp-plan-manager-grid,
.vdpp-directions-grid,
.vdpp-bg-tools,
.vdpp-catalog-row{
  min-width:0;
}
.vdpp-form > *,
.vdpp-extra-fields > *,
.vdpp-stage-grid > *,
.vdpp-plan-manager-grid > *,
.vdpp-directions-grid > *,
.vdpp-bg-tools > *,
.vdpp-catalog-row > *{
  min-width:0;
}

@container vdpp (max-width: 1180px){
  .vdpp-hero{
    grid-template-columns:1fr;
    row-gap:16px;
  }
  .vdpp-hero-note{
    justify-self:start;
    min-width:0;
    width:auto;
  }
  .vdpp-plan-manager-grid{
    grid-template-columns:1fr 1fr;
  }
  .vdpp-plan-actions{
    grid-column:1 / -1;
  }
  .vdpp-bg-tools{
    grid-template-columns:1fr;
  }
  .vdpp-directions-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .vdpp-form,
  .vdpp-extra-fields{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .vdpp-stage-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@container vdpp (max-width: 860px){
  .vdpp-wrap{
    padding:12px;
  }
  .vdpp-feature-strip{
    gap:8px;
  }
  .vdpp-feature-pill{
    font-size:13px;
    padding:9px 12px;
  }
  .vdpp-plan-manager-grid,
  .vdpp-form,
  .vdpp-extra-fields,
  .vdpp-stage-grid,
  .vdpp-directions-grid,
  .vdpp-bg-tools,
  .vdpp-catalog-row{
    grid-template-columns:1fr;
  }
  .vdpp-field-wide{
    grid-column:span 1;
  }
  .vdpp-card-head{
    flex-direction:column;
  }
  .vdpp-form-actions-top{
    width:100%;
  }
  .vdpp-table th,
  .vdpp-table td{
    padding:10px;
    font-size:13px;
  }
}


/* Wider central planner area and no duplicate top hero */
.vdpp-wrap{
  margin-top: 8px;
}

@media (min-width: 1280px){
  .vdpp-wrap{
    width: min(1180px, calc(100vw - 390px));
    max-width: none;
    margin-right: auto;
  }
}

@media (min-width: 1440px){
  .vdpp-wrap{
    width: min(1240px, calc(100vw - 400px));
  }
}

/* when weather sidebar is present, keep central content visually roomy */
@media (min-width: 1280px){
  .vdpp-plan-manager-card,
  .vdpp-form-card,
  .vdpp-table-card,
  .vdpp-layout-card,
  .vdpp-account-note,
  .vdpp-feature-strip{
    width: 100%;
    max-width: 100%;
  }
}

/* on tablet keep full width inside content area */
@media (max-width: 1279px){
  .vdpp-wrap{
    width: 100%;
    max-width: 100%;
  }
}


/* Stronger desktop width for central planner + proportional page title/header block */
@media (min-width: 1280px){
  .vdpp-wrap{
    width: min(1320px, calc(100vw - 345px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Common WordPress/theme blocks around the page title "Планировщик" */
  .entry-header,
  .page-header,
  .wp-block-post-title,
  .entry-title,
  .site-main > article,
  .site-main .inside-article,
  .content-area .inside-article,
  .content-area article{
    max-width: min(1320px, calc(100vw - 345px)) !important;
  }

  .entry-header,
  .page-header,
  .site-main .inside-article,
  .content-area .inside-article{
    width: min(1320px, calc(100vw - 345px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (min-width: 1440px){
  .vdpp-wrap{
    width: min(1380px, calc(100vw - 355px)) !important;
  }

  .entry-header,
  .page-header,
  .site-main .inside-article,
  .content-area .inside-article{
    width: min(1380px, calc(100vw - 355px)) !important;
    max-width: min(1380px, calc(100vw - 355px)) !important;
  }
}

/* Keep all inner planner cards proportional to the wider center */
.vdpp-wrap > .vdpp-account-note,
.vdpp-wrap > .vdpp-feature-strip,
.vdpp-wrap > .vdpp-plan-manager-card,
.vdpp-wrap > .vdpp-form-card,
.vdpp-wrap > .vdpp-table-card,
.vdpp-wrap > .vdpp-layout-card{
  width: 100% !important;
  max-width: 100% !important;
}


/* Max available central width on desktop */
@media (min-width: 1280px){
  .vdpp-wrap{
    width: calc(100vw - 230px) !important;
    max-width: 1600px !important;
    margin-left: 190px !important;
    margin-right: 20px !important;
  }

  /* Expand the WordPress page title/header area proportionally */
  .entry-header,
  .page-header,
  .site-main .inside-article,
  .content-area .inside-article,
  .wp-site-blocks .wp-block-group.is-layout-constrained,
  .site-main > article{
    width: calc(100vw - 230px) !important;
    max-width: 1600px !important;
    margin-left: 190px !important;
    margin-right: 20px !important;
  }
}

@media (min-width: 1440px){
  .vdpp-wrap{
    width: calc(100vw - 245px) !important;
    max-width: 1700px !important;
    margin-left: 200px !important;
    margin-right: 24px !important;
  }

  .entry-header,
  .page-header,
  .site-main .inside-article,
  .content-area .inside-article,
  .wp-site-blocks .wp-block-group.is-layout-constrained,
  .site-main > article{
    width: calc(100vw - 245px) !important;
    max-width: 1700px !important;
    margin-left: 200px !important;
    margin-right: 24px !important;
  }
}

/* All planner sections stretch to full available width */
.vdpp-wrap > .vdpp-account-note,
.vdpp-wrap > .vdpp-feature-strip,
.vdpp-wrap > .vdpp-plan-manager-card,
.vdpp-wrap > .vdpp-form-card,
.vdpp-wrap > .vdpp-table-card,
.vdpp-wrap > .vdpp-layout-card{
  width: 100% !important;
  max-width: 100% !important;
}

/* Keep tablet and mobile safe */
@media (max-width: 1279px){
  .vdpp-wrap,
  .entry-header,
  .page-header,
  .site-main .inside-article,
  .content-area .inside-article,
  .wp-site-blocks .wp-block-group.is-layout-constrained,
  .site-main > article{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


/* Final desktop alignment: planner should sit exactly under the page title block */
@media (min-width: 1280px){
  .vdpp-wrap{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-self: stretch !important;
  }

  /* cancel previous wide-center experiments */
  .site-main > article,
  .site-main .inside-article,
  .content-area .inside-article,
  .content-area article,
  .entry-header,
  .page-header,
  .wp-site-blocks .wp-block-group.is-layout-constrained{
    width: auto !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* inner sections stay full width of the planner container */
.vdpp-wrap > .vdpp-account-note,
.vdpp-wrap > .vdpp-feature-strip,
.vdpp-wrap > .vdpp-plan-manager-card,
.vdpp-wrap > .vdpp-form-card,
.vdpp-wrap > .vdpp-table-card,
.vdpp-wrap > .vdpp-layout-card{
  width: 100% !important;
  max-width: 100% !important;
}

/* keep weather visible and fixed on desktop */
@media (min-width: 1280px){
  .vdwx-shell.vdwx-sidebar{
    position: fixed !important;
    left: 12px !important;
    top: 86px !important;
    width: 190px !important;
    min-width: 190px !important;
    height: auto !important;
    margin: 0 !important;
    z-index: 12 !important;
  }
  body.admin-bar .vdwx-shell.vdwx-sidebar{
    top: 118px !important;
  }
  .vdwx-shell.vdwx-sidebar .vdwx-card{
    padding: 16px !important;
    border-radius: 22px !important;
  }
  .vdwx-shell.vdwx-sidebar .vdwx-title{
    font-size: 20px !important;
  }
  .vdwx-shell.vdwx-sidebar .vdwx-temp{
    font-size: 44px !important;
  }
}


.vdpp-btn-toggle.is-active{
  background:#173b62;
  color:#fff;
}
.vdpp-object-card{
  margin-bottom:18px;
  padding:18px;
  border:1px solid #e5efdc;
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f8fbf5);
}
.vdpp-object-head{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:14px;
}
.vdpp-object-head h3{
  margin:0;
  color:#2f5622;
}
.vdpp-object-tips{
  color:#63755c;
  font-size:13px;
}
.vdpp-object-form{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}
.vdpp-object-actions{
  grid-column:1 / -1;
}
.vdpp-object-polygon-wrap{
  grid-column:1 / -1;
  padding:14px;
  border-radius:18px;
  background:#f7faf4;
  border:1px solid #e3eedb;
}
.vdpp-object-polygon-title{
  margin-bottom:10px;
  color:#3d5d31;
  font-weight:700;
}
.vdpp-object-points-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.vdpp-point-card{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid #e7efe1;
}
.vdpp-point-card strong{
  color:#355f2d;
  font-size:13px;
}
.vdpp-point-card input{
  border:1px solid var(--vdpp-border);
  border-radius:12px;
  padding:8px 10px;
  background:#fcfffa;
}
.vdpp-object-list{
  margin-top:16px;
}
.vdpp-object-list-grid{
  display:grid;
  gap:10px;
}
.vdpp-object-empty{
  padding:14px;
  border-radius:16px;
  background:#f8fbf5;
  border:1px dashed #dbe8d1;
  color:#63755c;
}
.vdpp-object-row{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  padding:14px 16px;
  border-radius:18px;
  background:#fff;
  border:1px solid #e5efdc;
  box-shadow:0 8px 18px rgba(0,0,0,.04);
}
.vdpp-object-row-main{
  display:grid;
  gap:5px;
}
.vdpp-object-row-title{
  font-weight:800;
  color:#27411b;
}
.vdpp-object-row-meta,
.vdpp-object-row-note{
  color:#5d6e56;
  font-size:13px;
}
.vdpp-object-row-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.vdpp-layout-canvas-wrap{
  min-height:680px;
}
.vdpp-canvas{
  overflow:visible;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, rgba(251,254,249,.98), rgba(241,248,236,.96));
}
.vdpp-stage{
  position:absolute;
  top:50%;
  left:50%;
  isolation:isolate;
  transform-origin:center center;
  overflow:visible;
}
.vdpp-stage-surface{
  position:absolute;
  top:32px;
  left:42px;
  isolation:isolate;
  border-radius:24px;
  border:2px solid #d9e8cf;
  background:
    linear-gradient(to right, rgba(163, 201, 127, .18) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(163, 201, 127, .18) 1px, transparent 1px),
    linear-gradient(180deg, rgba(251,254,249,.98), rgba(241,248,236,.96));
  box-shadow:0 14px 32px rgba(0,0,0,.08), inset 0 0 0 1px rgba(255,255,255,.45);
  overflow:visible;
}
.vdpp-canvas.is-rotation-mode{
  cursor:grab;
}
.vdpp-canvas.is-rotation-mode:active{
  cursor:grabbing;
}
.vdpp-canvas.is-rotation-mode::after{
  content:'Режим вращения активен';
  position:absolute;
  right:18px;
  top:18px;
  z-index:5;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(23,59,98,.92);
  color:#fff;
  font-weight:700;
  font-size:13px;
}
.vdpp-bed,
.vdpp-object{
  touch-action:none;
}
.vdpp-entity-resize{
  position:absolute;
  width:14px;
  height:14px;
  right:6px;
  bottom:6px;
  border-radius:4px;
  background:#244319;
  cursor:nwse-resize;
}
.vdpp-object{
  position:absolute;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:4px;
  padding:10px 12px;
  border-radius:18px;
  box-shadow:0 12px 24px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.45);
  border:2px solid rgba(35,58,26,.18);
  cursor:move;
  user-select:none;
  color:#1c3213;
  overflow:visible;
}
.vdpp-object.active{
  outline:4px solid rgba(23,59,98,.18);
}
.vdpp-object.is-circle{
  border-radius:999px;
}
.vdpp-object-title{
  font-weight:800;
  font-size:13px;
  line-height:1.2;
}
.vdpp-object-note-inline{
  font-size:11px;
  line-height:1.25;
  color:#3f5e35;
}
.vdpp-object-path{ background:linear-gradient(135deg,#ecd9b4,#d3b07d); border-color:#b98d52; }
.vdpp-object-barrel{ background:radial-gradient(circle at 35% 35%, #b7d9ff, #5c8ec4); border-color:#4874a7; color:#fff; }
.vdpp-object-greenhouse{ background:linear-gradient(135deg,#e7faf0,#a4dbb5); border-color:#6dae86; }
.vdpp-object-compost{ background:linear-gradient(135deg,#f3e9d9,#c6a271); border-color:#9f7845; }
.vdpp-object-house{ background:linear-gradient(135deg,#fff2ea,#dfa27d); border-color:#c57547; }
.vdpp-object-pool{ background:linear-gradient(135deg,#edf8ff,#8bc8ee); border-color:#4f9ecc; }
.vdpp-object-shrub{ background:linear-gradient(135deg,#eff8ea,#8bc16f); border-color:#5d9150; }
.vdpp-object-tree{ background:linear-gradient(135deg,#eff8ea,#79b360); border-color:#4f8241; }
.vdpp-object-borehole{ background:linear-gradient(135deg,#eff9ff,#9ad3f0); border-color:#4f9ecc; }
.vdpp-object-septic{ background:linear-gradient(135deg,#f2f3f5,#c7ccd2); border-color:#8793a0; }
.vdpp-object-well{ background:linear-gradient(135deg,#fdf8ec,#e7c57b); border-color:#b18b36; }
.vdpp-object-shed{ background:linear-gradient(135deg,#f8efe6,#d2a878); border-color:#ab7740; }
.vdpp-object.vdpp-object-tree::before,
.vdpp-object.vdpp-object-shrub::before{
  content:'';
  position:absolute;
  inset:12% 12% 25% 12%;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  pointer-events:none;
}
.vdpp-object.vdpp-object-tree::after{
  content:'';
  position:absolute;
  left:44%;
  bottom:18%;
  width:12%;
  height:24%;
  background:rgba(94,60,22,.55);
  border-radius:8px;
  pointer-events:none;
}
.vdpp-object.vdpp-object-path .vdpp-object-title,
.vdpp-object.vdpp-object-compost .vdpp-object-title,
.vdpp-object.vdpp-object-house .vdpp-object-title{ color:#3d2912; }
.vdpp-object.vdpp-object-barrel .vdpp-object-title,
.vdpp-object.vdpp-object-barrel .vdpp-object-note-inline{ color:#fff; }
@media (max-width: 1220px){
  .vdpp-plan-manager-grid{ grid-template-columns:1fr 1fr; }
  .vdpp-plan-actions{ grid-column:span 2; }
}
@media (max-width: 980px){
  .vdpp-object-form{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vdpp-object-points-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .vdpp-layout-canvas-wrap{ min-height:560px; }
}
@media (max-width: 780px){
  .vdpp-object-form,
  .vdpp-object-points-grid{ grid-template-columns:1fr; }
  .vdpp-object-row{ flex-direction:column; }
  .vdpp-object-row-actions{ width:100%; }
  .vdpp-layout-canvas-wrap{ min-height:460px; padding-top:28px; padding-left:34px; padding-right:8px; padding-bottom:8px; }
  .vdpp-canvas{ min-width:520px; }
  .vdpp-direction{ font-size:12px; padding:6px 10px; }
  .vdpp-canvas.is-rotation-mode::after{ right:10px; top:10px; font-size:12px; }
}
@media (max-width: 520px){
  .vdpp-core-fields .vdpp-field{ flex:1 1 calc(50% - 10px); }
  .vdpp-layout-canvas-wrap{ min-height:380px; }
  .vdpp-canvas{ min-width:420px; }
  .vdpp-bed-title{ font-size:12px; }
  .vdpp-bed-subtitle,
  .vdpp-object-title{ font-size:11px; }
}


.vdpp-template-card,
.vdpp-zone-card{
  margin-top:18px;
  padding:18px;
  border:1px solid #e5efdc;
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f8fbf5);
}
.vdpp-template-actions,
.vdpp-zone-actions{ grid-column:1 / -1; }
.vdpp-template-list,
.vdpp-zone-list{ margin-top:16px; }
.vdpp-zone-form{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  align-items:end;
}
.vdpp-zone{
  position:absolute;
  z-index:1;
  border-radius:22px;
  border:2px dashed rgba(39,65,27,.35);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
  padding:10px 12px;
  color:#25411d;
  user-select:none;
  cursor:move;
  touch-action:none;
}
.vdpp-zone.active{ outline:4px solid rgba(23,59,98,.16); }
.vdpp-zone-title{ font-weight:800; font-size:12px; line-height:1.2; }
.vdpp-zone-note-inline{ font-size:11px; line-height:1.25; color:#3f5e35; }
.vdpp-zone-lawn{ background:repeating-linear-gradient(45deg, rgba(96,167,85,.24), rgba(96,167,85,.24) 10px, rgba(255,255,255,.28) 10px, rgba(255,255,255,.28) 20px), linear-gradient(180deg,#f2f9ec,#d9f0cf); }
.vdpp-zone-flowerbed{ background:repeating-linear-gradient(45deg, rgba(220,101,149,.18), rgba(220,101,149,.18) 10px, rgba(255,255,255,.32) 10px, rgba(255,255,255,.32) 20px), linear-gradient(180deg,#fff1f7,#ffd6e7); }
.vdpp-zone-vegetable{ background:repeating-linear-gradient(45deg, rgba(190,139,76,.16), rgba(190,139,76,.16) 10px, rgba(255,255,255,.32) 10px, rgba(255,255,255,.32) 20px), linear-gradient(180deg,#fff8ec,#f0dfbe); }
.vdpp-zone-utility{ background:repeating-linear-gradient(45deg, rgba(110,126,160,.16), rgba(110,126,160,.16) 10px, rgba(255,255,255,.32) 10px, rgba(255,255,255,.32) 20px), linear-gradient(180deg,#f3f6fb,#dde4ef); }
@media (max-width: 980px){
  .vdpp-zone-form{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 780px){
  .vdpp-zone-form{ grid-template-columns:1fr; }
}

@media (max-width: 780px){
  .vdpp-plan-badge{ min-width:calc(50% - 8px); }
}
@media (max-width: 520px){
  .vdpp-plan-badge{ min-width:100%; }
}


/* v6.3.1 responsive weather sidebar without overlap */
@media (min-width:1280px){
  .vdpp-wrap{
    display:grid !important;
    grid-template-columns:minmax(220px, clamp(220px, 22vw, 310px)) minmax(0, 1fr) !important;
    column-gap:clamp(16px, 2vw, 28px) !important;
    align-items:start !important;
  }
  .vdpp-wrap > .vdwx-shell.vdwx-sidebar{
    grid-column:1 !important;
    grid-row:1 / span 20 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    position:sticky !important;
    left:auto !important;
    margin:0 !important;
    align-self:start !important;
  }
  .vdpp-wrap > .vdpp-account-note,
  .vdpp-wrap > .vdpp-feature-strip,
  .vdpp-wrap > .vdpp-plan-manager-card,
  .vdpp-wrap > .vdpp-form-card,
  .vdpp-wrap > .vdpp-table-card,
  .vdpp-wrap > .vdpp-layout-card{
    grid-column:2 !important;
    width:100% !important;
    max-width:100% !important;
  }
}
@media (max-width:1279px){
  .vdpp-wrap{
    display:block !important;
  }
  .vdpp-wrap > .vdwx-shell.vdwx-sidebar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    max-height:none !important;
  }
}


/* v6.4.0 wider layout builder zone on desktop without changing right edge */
@media (min-width: 1280px){
  .vdpp-wrap{
    --vdpp-sidebar-slot: clamp(220px, 22vw, 310px);
    --vdpp-sidebar-gap: clamp(16px, 2vw, 28px);
    --vdpp-layout-left-bleed: calc(var(--vdpp-sidebar-slot) + var(--vdpp-sidebar-gap));
  }

  .vdpp-layout-card > .vdpp-card-head,
  .vdpp-layout-card > .vdpp-object-card,
  .vdpp-layout-card > .vdpp-template-card,
  .vdpp-layout-card > .vdpp-zone-card,
  .vdpp-layout-card > .vdpp-layout-canvas-wrap{
    width: calc(100% + var(--vdpp-layout-left-bleed));
    max-width: calc(100% + var(--vdpp-layout-left-bleed));
    margin-left: calc(var(--vdpp-layout-left-bleed) * -1);
  }

  .vdpp-layout-card > .vdpp-card-head{
    padding-left: 8px;
  }
}


/* v7.0.0: свободные грядки прямыми линиями */
.vdpp-draw-bed-card{
  margin:18px 0;
  padding:18px;
  border-radius:24px;
  border:1px solid #dbead1;
  background:linear-gradient(135deg,#fff,#f4faef);
  box-shadow:0 10px 24px rgba(0,0,0,.05);
}
.vdpp-draw-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}
.vdpp-draw-status{
  margin-top:12px;
  padding:12px 14px;
  border-radius:16px;
  background:#eef7ea;
  border:1px dashed #bfd9ad;
  color:#355f2d;
  font-weight:700;
  line-height:1.45;
}
.vdpp-canvas.is-drawing-bed{
  cursor:crosshair;
}
.vdpp-draw-overlay{
  position:absolute;
  inset:0;
  z-index:5;
  overflow:visible;
  pointer-events:none;
}
.vdpp-draw-line{
  fill:none;
  stroke:#2f5622;
  stroke-width:4;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:9 7;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.18));
}
.vdpp-draw-point{
  fill:#fff7ca;
  stroke:#2f5622;
  stroke-width:3;
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.18));
}
.vdpp-bed-polygon{
  padding:0;
  overflow:visible;
  background:transparent!important;
  box-shadow:none;
  border-radius:0;
}
.vdpp-bed-polygon::before{
  display:none;
}
.vdpp-bed-polygon-svg{
  position:absolute;
  inset:0;
  overflow:visible;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.12));
  pointer-events:none;
}
.vdpp-bed-polygon-fill{
  fill:rgba(255, 210, 190, .82);
  stroke:#d75647;
  stroke-width:3;
  stroke-linejoin:round;
}
.vdpp-bed-polygon.active .vdpp-bed-polygon-fill{
  stroke:#2f5622;
  stroke-width:5;
}
.vdpp-bed-polygon-content{
  position:absolute;
  left:12px;
  top:10px;
  z-index:2;
  max-width:calc(100% - 24px);
  padding:7px 9px;
  border-radius:12px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(3px);
  box-shadow:0 6px 16px rgba(0,0,0,.08);
}
@media (max-width:720px){
  .vdpp-draw-actions .vdpp-btn{width:100%;justify-content:center}
  .vdpp-bed-polygon-content{font-size:12px}
}



/* v7.3.0: растения внутри произвольных грядок */
.vdpp-plant-fill-card{
  margin:18px 0;
  padding:18px;
  border-radius:24px;
  border:1px solid #dbead1;
  background:linear-gradient(135deg,#fffdf8,#f1faec);
  box-shadow:0 10px 24px rgba(0,0,0,.05);
}
.vdpp-plant-fill-grid{
  display:grid;
  grid-template-columns:minmax(220px,1fr) 180px;
  gap:12px;
  align-items:end;
}
.vdpp-plant-items{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}
.vdpp-bed-polygon .vdpp-plant-items{overflow:hidden;}
.vdpp-plant-icon{
  position:absolute;
  width:28px;
  height:28px;
  margin-left:-14px;
  margin-top:-14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(47,86,34,.25);
  box-shadow:0 4px 10px rgba(0,0,0,.16);
  font-size:20px;
  line-height:1;
  transform:translateZ(0);
}
.vdpp-plant-icon.is-tomato{background:#fff1ed;border-color:#efa59b;}
.vdpp-plant-icon.is-cucumber,.vdpp-plant-icon.is-salad,.vdpp-plant-icon.is-dill,.vdpp-plant-icon.is-cabbage{background:#f0fae9;border-color:#b7d9a2;}
.vdpp-plant-icon.is-carrot,.vdpp-plant-icon.is-pepper{background:#fff4df;border-color:#edbf78;}
.vdpp-plant-icon.is-beet{background:#f8e7f0;border-color:#d09ab7;}
.vdpp-plant-icon.is-onion{background:#fffbe1;border-color:#d5c56d;}
.vdpp-bed-polygon-content{z-index:3;}
@media (max-width:720px){
  .vdpp-plant-fill-grid{grid-template-columns:1fr;}
  .vdpp-plant-icon{width:24px;height:24px;margin-left:-12px;margin-top:-12px;font-size:18px;}
}


/* v7.5.0: проверочный маркер, выбор грядки без режима перемещения, жёсткий crop растений */
.vdpp-bed-title,.vdpp-bed-subtitle,.vdpp-bed-label,.vdpp-bed-polygon-content{display:none!important;}
.vdpp-plant-items{pointer-events:none;}
.vdpp-bed-polygon .vdpp-plant-items{overflow:hidden;}
.vdpp-bed.active{outline:2px solid rgba(47,126,52,.65); outline-offset:2px;}

.vdpp-build-marker{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;padding:8px 12px;border:1px solid #cfe5bd;border-radius:999px;background:#f4fbef;color:#2c642b;font-weight:800;font-size:13px;box-shadow:0 8px 22px rgba(47,126,52,.08);}
.vdpp-plant-items{position:absolute;inset:0;pointer-events:none;overflow:hidden!important;contain:paint;}
.vdpp-bed-polygon{overflow:hidden!important;}
.vdpp-bed-polygon-svg{pointer-events:none;}
.vdpp-bed.active{box-shadow:0 0 0 3px rgba(47,126,52,.35),0 14px 30px rgba(47,126,52,.16)!important;}

/* v7.5.2: финальная подгонка ширины конструктора, без маркера версии, линейки по 4 сторонам */
.vdpp-form-card-in-layout{
  margin:18px 0;
  border-radius:24px;
  border:1px solid #dbead1;
  background:linear-gradient(135deg,#fff,#f8fbf5);
  box-shadow:0 10px 24px rgba(0,0,0,.05);
}
@media (min-width: 1280px){
  .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-layout-card > .vdpp-plant-fill-card{
    width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    max-width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    margin-left: calc(var(--vdpp-layout-left-bleed) * -1) !important;
  }
}
@media (max-width: 1279px){
  .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-layout-card > .vdpp-plant-fill-card{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
  }
}


/* v7.5.2: убрать проверочный маркер версии */
.vdpp-build-marker{display:none!important;}

/* v7.5.2: выравниваем все широкие блоки конструктора по одной левой границе */
@media (min-width: 1280px){
  .vdpp-layout-card > .vdpp-card-head,
  .vdpp-layout-card > .vdpp-object-card,
  .vdpp-layout-card > .vdpp-template-card,
  .vdpp-layout-card > .vdpp-zone-card,
  .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-layout-card > .vdpp-plant-fill-card,
  .vdpp-layout-card > .vdpp-layout-canvas-wrap{
    width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    max-width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    margin-left: calc(var(--vdpp-layout-left-bleed) * -1) !important;
    box-sizing:border-box !important;
  }
}

/* v7.5.2: размерность участка с четырёх сторон */
.vdpp-stage-ruler-bottom{
  left:42px;
  bottom:0;
  right:42px;
  height:28px;
  display:flex;
  align-items:flex-start;
}
.vdpp-stage-ruler-right{
  top:32px;
  right:0;
  bottom:32px;
  width:38px;
  display:flex;
  flex-direction:column;
}
.vdpp-stage-ruler-bottom span{
  width:80px;
  flex:0 0 80px;
  height:24px;
  border-radius:0 0 10px 10px;
  border-top:none;
}
.vdpp-stage-ruler-right span{
  height:80px;
  flex:0 0 80px;
  writing-mode:vertical-rl;
  border-radius:10px 0 0 10px;
  border-right:none;
}


/* v7.5.5: wider planner page shell + restore normal widths inside "Схема участка сверху" */
@media (min-width: 1280px){
  :root{
    --vdpp-page-shell-width:min(1500px, calc(100vw - 72px));
  }

  /* make the page title area and the planner shell noticeably wider */
  .entry-header,
  .page-header,
  .site-main > article,
  .site-main .inside-article,
  .content-area article,
  .content-area .inside-article,
  .wp-site-blocks .wp-block-group.is-layout-constrained{
    width:var(--vdpp-page-shell-width) !important;
    max-width:var(--vdpp-page-shell-width) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .vdpp-wrap{
    width:var(--vdpp-page-shell-width) !important;
    max-width:var(--vdpp-page-shell-width) !important;
    margin-left:auto !important;
    margin-right:auto !important;
    grid-template-columns:minmax(230px, 260px) minmax(0, 1fr) !important;
    column-gap:24px !important;
  }

  /* keep the weather column compact so the main editor gets more room */
  .vdpp-wrap > .vdwx-shell.vdwx-sidebar{
    width:100% !important;
    max-width:260px !important;
  }

  /* restore natural width of all sections inside the layout card */
  .vdpp-layout-card > .vdpp-card-head,
  .vdpp-layout-card > .vdpp-object-card,
  .vdpp-layout-card > .vdpp-zone-card,
  .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-layout-card > .vdpp-layout-canvas-wrap{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
  }

  .vdpp-layout-card > .vdpp-card-head{
    padding-left:0 !important;
  }
}

@media (min-width: 1440px){
  :root{
    --vdpp-page-shell-width:min(1600px, calc(100vw - 84px));
  }

  .vdpp-wrap{
    grid-template-columns:minmax(240px, 270px) minmax(0, 1fr) !important;
    column-gap:28px !important;
  }
}


/* v7.5.6: enlarge the real theme header/title shell on the planner page.
   This lives in the planner plugin because /planirovshchik/ may use the default theme page + shortcode,
   not the templates plugin page wrapper. */
@media (min-width: 1024px){
  body:has(.vdpp-wrap) .vd-theme-wrap{
    max-width:min(1580px, calc(100vw - 56px)) !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-header{
    padding:26px 32px !important;
    border-radius:30px !important;
    min-height:112px !important;
    display:grid !important;
    grid-template-columns:minmax(300px, 1.2fr) auto auto minmax(340px, 460px) !important;
    gap:18px !important;
    align-items:center !important;
  }

  body:has(.vdpp-wrap) .vd-theme-brand{
    font-size:42px !important;
    line-height:1.04 !important;
    letter-spacing:-.02em !important;
  }

  body:has(.vdpp-wrap) .vd-theme-nav{
    gap:12px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-nav a{
    padding:13px 17px !important;
    border-radius:17px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-account-summary{
    min-height:62px !important;
    border-radius:20px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-search{
    width:min(100%, 460px) !important;
    max-width:460px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-search input{
    min-height:50px !important;
    font-size:16px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-search button{
    min-height:50px !important;
    padding:12px 20px !important;
    border-radius:16px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-main{
    padding:34px 34px 38px !important;
    border-radius:32px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-title{
    font-size:52px !important;
    line-height:1.05 !important;
    margin:0 0 22px !important;
    letter-spacing:-.02em !important;
  }
}

@media (min-width: 1440px){
  body:has(.vdpp-wrap) .vd-theme-wrap{
    max-width:min(1680px, calc(100vw - 72px)) !important;
  }

  body:has(.vdpp-wrap) .vd-theme-header{
    grid-template-columns:minmax(340px, 1.25fr) auto auto minmax(360px, 500px) !important;
  }
}

@media (max-width: 1023px){
  body:has(.vdpp-wrap) .vd-theme-header{
    padding:20px 22px !important;
    border-radius:26px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-brand{
    font-size:34px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-main{
    padding:24px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-title{
    font-size:40px !important;
  }
}

@media (max-width: 680px){
  body:has(.vdpp-wrap) .vd-theme-brand{
    font-size:30px !important;
  }

  body:has(.vdpp-wrap) .vd-theme-title{
    font-size:32px !important;
  }
}


/* v7.5.7: make the left weather column roomier and keep temperature inside the card */
@media (min-width:1280px){
  .vdpp-wrap{
    grid-template-columns:minmax(255px, 295px) minmax(0, 1fr) !important;
    column-gap:26px !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar{
    max-width:295px !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-card{
    padding-left:18px !important;
    padding-right:18px !important;
    overflow:hidden !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-nowbox,
  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-now-top,
  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-temp-wrap{
    min-width:0 !important;
    max-width:100% !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-now-top{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-hero-icon{
    flex:0 0 70px !important;
    width:70px !important;
    height:54px !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar .vdwx-temp{
    font-size:clamp(34px, 3.1vw, 42px) !important;
    line-height:1 !important;
    white-space:nowrap !important;
    max-width:100% !important;
  }
}

@media (min-width:1440px){
  .vdpp-wrap{
    grid-template-columns:minmax(270px, 310px) minmax(0, 1fr) !important;
    column-gap:28px !important;
  }

  .vdpp-wrap > .vdwx-shell.vdwx-sidebar{
    max-width:310px !important;
  }
}


/* v7.5.8: align "Растения внутри формы" with the other constructor blocks */
.vdpp-layout-card > .vdpp-plant-fill-card{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box !important;
}

@media (min-width:1280px){
  .vdpp-layout-card > .vdpp-card-head,
  .vdpp-layout-card > .vdpp-object-card,
  .vdpp-layout-card > .vdpp-template-card,
  .vdpp-layout-card > .vdpp-zone-card,
  .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-layout-card > .vdpp-plant-fill-card,
  .vdpp-layout-card > .vdpp-layout-canvas-wrap{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .vdpp-plant-fill-card .vdpp-object-head{
    width:100% !important;
  }

  .vdpp-plant-fill-grid{
    grid-template-columns:minmax(0, 1fr) minmax(160px, 220px) !important;
  }
}

@media (max-width:780px){
  .vdpp-plant-fill-grid{
    grid-template-columns:1fr !important;
  }
}


/* v7.5.9: onboarding, editor tabs, pending cultures and print view */
.vdpp-start-card,
.vdpp-editor-tabs,
.vdpp-pending-cultures-card{
  grid-column:2 !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.vdpp-start-card{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr) auto;
  gap:18px;
  align-items:center;
  padding:20px;
  margin:0 0 18px;
  border-radius:28px;
  border:1px solid #dbead1;
  background:linear-gradient(135deg,#ffffff,#f2faec);
  box-shadow:0 12px 28px rgba(0,0,0,.05);
}
.vdpp-start-kicker{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  color:#355f2d;
  font-weight:900;
  margin-bottom:8px;
}
.vdpp-start-copy h2{margin:0 0 8px;color:#27411b}
.vdpp-start-copy p{margin:0;color:#63755c;line-height:1.5}
.vdpp-start-steps{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.vdpp-start-steps button{
  border:1px solid #d9e7cf;
  border-radius:18px;
  background:#fff;
  padding:12px;
  cursor:pointer;
  text-align:left;
  color:#27411b;
}
.vdpp-start-steps strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:#2e5120;
  color:#fff;
  margin-bottom:8px;
}
.vdpp-start-steps span{display:block;font-size:13px;font-weight:800;line-height:1.3}
.vdpp-start-hide{
  border:none;
  border-radius:14px;
  background:#f4f9ef;
  color:#4f6546;
  padding:10px 12px;
  font-weight:800;
  cursor:pointer;
}
.vdpp-editor-tabs{
  position:sticky;
  top:10px;
  z-index:15;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px;
  margin:0 0 18px;
  border-radius:22px;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(6px);
  border:1px solid #dbead1;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
}
.vdpp-editor-tabs button{
  border:none;
  border-radius:999px;
  padding:10px 14px;
  background:#f4f9ef;
  color:#27411b;
  font-weight:900;
  cursor:pointer;
}
.vdpp-editor-tabs button.is-active{background:#173b62;color:#fff}
.vdpp-pending-cultures-card{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:18px;
  margin:0 0 18px;
  border-radius:24px;
  background:#fff;
  border:1px solid #dbead1;
}
.vdpp-pending-cultures-card h3{margin:0 0 6px;color:#27411b}
.vdpp-pending-cultures-card p{margin:0;color:#63755c}
.vdpp-pending-cultures-list{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.vdpp-pending-cultures-list span{display:inline-flex;padding:9px 12px;border-radius:999px;background:#eef6e4;color:#355f2d;font-weight:900}
.vdpp-tab-hidden{display:none!important}
@media (max-width:1279px){
  .vdpp-start-card,.vdpp-editor-tabs,.vdpp-pending-cultures-card{grid-column:auto!important}
}
@media (max-width:980px){
  .vdpp-start-card{grid-template-columns:1fr}
  .vdpp-start-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vdpp-pending-cultures-card{flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
  .vdpp-start-steps{grid-template-columns:1fr}
}
@media print{
  body *{visibility:hidden!important}
  .vdpp-wrap,.vdpp-wrap *{visibility:visible!important}
  .vdpp-wrap{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:100%!important;
    max-width:none!important;
    display:block!important;
    box-shadow:none!important;
    background:#fff!important;
    padding:0!important;
  }
  .vdwx-shell,
  .vdpp-account-note,
  .vdpp-feature-strip,
  .vdpp-start-card,
  .vdpp-editor-tabs,
  .vdpp-pending-cultures-card,
  .vdpp-plan-manager-card,
  .vdpp-table-card,
  .vdpp-object-card,
  .vdpp-zone-card,
  .vdpp-draw-bed-card,
  .vdpp-form-card-in-layout,
  .vdpp-plant-fill-card,
  .vdpp-btn,
  .vdpp-actions,
  .vdpp-form-actions-top{display:none!important}
  .vdpp-layout-card,
  .vdpp-layout-canvas-wrap,
  .vdpp-canvas{display:block!important;width:100%!important;max-width:none!important;box-shadow:none!important;border:none!important}
  .vdpp-layout-card{page-break-inside:avoid}
  .vdpp-card-head{display:block!important}
}


/* v7.6.0: smart planner editor */
.vdpp-smart-editor-panel{
  grid-column:2 !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  margin:0 0 18px;
  padding:20px;
  border-radius:28px;
  border:1px solid #dbead1;
  background:linear-gradient(135deg,#ffffff,#f4fbef);
  box-shadow:0 14px 32px rgba(31,67,24,.07);
}
.vdpp-smart-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:16px;
}
.vdpp-smart-kicker{
  display:inline-flex;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid #dbead1;
  color:#355f2d;
  font-weight:900;
  margin-bottom:8px;
}
.vdpp-smart-head h2,.vdpp-smart-card h3,.vdpp-template-library h3,.vdpp-agro-tools h3{
  margin:0 0 8px;
  color:#27411b;
}
.vdpp-smart-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.vdpp-smart-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.vdpp-smart-card,.vdpp-template-library,.vdpp-agro-tools article{
  padding:16px;
  border-radius:22px;
  background:#fff;
  border:1px solid #e0ecda;
}
.vdpp-smart-props,.vdpp-smart-metrics,.vdpp-smart-warnings,.vdpp-smart-note{
  color:#51684a;
  line-height:1.5;
  font-size:14px;
}
.vdpp-smart-props dl,.vdpp-smart-metrics dl{margin:0;display:grid;gap:8px}
.vdpp-smart-props div,.vdpp-smart-metrics div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
  border-radius:14px;
  background:#f8fbf4;
}
.vdpp-smart-props dt,.vdpp-smart-metrics dt{font-weight:800;color:#5f7458}
.vdpp-smart-props dd,.vdpp-smart-metrics dd{margin:0;text-align:right;font-weight:900;color:#27411b}
.vdpp-smart-warnings ul,.vdpp-smart-note ul{margin:0;padding-left:18px}
.vdpp-smart-warnings li{margin:0 0 6px}
.vdpp-layer-tools{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  margin:16px 0;
  padding:12px 14px;
  border-radius:18px;
  background:#fff;
  border:1px dashed #cfe2c3;
}
.vdpp-layer-tools label{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:#38552b}
.vdpp-template-library{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-bottom:14px;
}
.vdpp-template-library p{margin:0;color:#63755c}
.vdpp-template-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.vdpp-agro-tools{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.vdpp-rotation-grid{display:grid;gap:8px;margin-bottom:10px}
.vdpp-rotation-grid input{
  width:100%;
  border:1px solid #dbead1;
  border-radius:14px;
  padding:10px 12px;
  background:#fbfdf8;
}
.vdpp-layer-objects-hidden .vdpp-object{display:none!important}
.vdpp-layer-zones-hidden .vdpp-zone{display:none!important}
.vdpp-layer-beds-hidden .vdpp-bed{display:none!important}
.vdpp-layer-plants-hidden .vdpp-plant-items{display:none!important}
.vdpp-layer-labels-hidden .vdpp-object-title,
.vdpp-layer-labels-hidden .vdpp-zone-title,
.vdpp-layer-labels-hidden .vdpp-bed-label{display:none!important}
.vdpp-layer-rulers-hidden .vdpp-stage-ruler-top,
.vdpp-layer-rulers-hidden .vdpp-stage-ruler-bottom,
.vdpp-layer-rulers-hidden .vdpp-stage-ruler-left,
.vdpp-layer-rulers-hidden .vdpp-stage-ruler-right,
.vdpp-layer-rulers-hidden .vdpp-cardinal{display:none!important}
.vdpp-guide-line{
  position:absolute;
  z-index:9;
  pointer-events:none;
  background:rgba(23,59,98,.35);
}
.vdpp-guide-line.is-x{width:1px;top:0;bottom:0}
.vdpp-guide-line.is-y{height:1px;left:0;right:0}
.vdpp-warning-badge{
  display:inline-flex;
  align-items:center;
  margin:2px 0;
  padding:7px 10px;
  border-radius:999px;
  background:#fff3e6;
  color:#8a4b12;
  font-weight:800;
}
.vdpp-warning-badge.is-ok{background:#eef8e7;color:#2f6b20}
@media (max-width:1279px){
  .vdpp-smart-editor-panel{grid-column:auto!important}
}
@media (max-width:1080px){
  .vdpp-smart-grid,.vdpp-agro-tools{grid-template-columns:1fr}
  .vdpp-template-library,.vdpp-smart-head{flex-direction:column}
  .vdpp-smart-actions,.vdpp-template-actions{justify-content:flex-start}
}


/* v7.6.2: lifecycle table hover advice */
.vdpp-plant-advice-popover{
  position:fixed;
  z-index:100000;
  width:min(380px, calc(100vw - 24px));
  max-height:70vh;
  overflow:auto;
  padding:0;
  border-radius:22px;
  border:1px solid #d8e8ce;
  background:#fff;
  box-shadow:0 22px 50px rgba(28,54,22,.22);
  color:#2d4328;
}
.vdpp-plant-advice-popover[hidden]{display:none!important}
.vdpp-plant-advice-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  background:linear-gradient(135deg,#f6fbf1,#ffffff);
  border-bottom:1px solid #e1edd9;
}
.vdpp-plant-advice-head strong{
  display:block;
  color:#27411b;
  font-size:16px;
  margin-bottom:4px;
}
.vdpp-plant-advice-head span{
  display:block;
  color:#6a7f62;
  font-size:12px;
  font-weight:800;
}
.vdpp-plant-advice-close{
  border:none;
  border-radius:999px;
  width:30px;
  height:30px;
  background:#eef6e8;
  color:#2d5122;
  font-weight:900;
  cursor:pointer;
}
.vdpp-plant-advice-body{
  padding:14px 16px;
  white-space:pre-wrap;
  line-height:1.5;
  font-size:14px;
}
.vdpp-plant-advice-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  padding:0 16px 14px;
}
.vdpp-plant-advice-actions button{
  border:none;
  border-radius:14px;
  padding:10px 12px;
  background:#111;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.vdpp-plant-advice-actions button.secondary{
  background:#eef6e8;
  color:#2d5122;
}
.vdpp-plant-advice-sources{
  display:grid;
  gap:8px;
  padding:0 16px 16px;
}
.vdpp-plant-advice-sources a{
  display:block;
  padding:10px 12px;
  border-radius:14px;
  background:#f8fbf4;
  border:1px solid #e0ecda;
  color:#244f32;
  text-decoration:none;
  font-size:13px;
}
.vdpp-plant-advice-sources small{
  display:block;
  color:#687b60;
  margin-top:3px;
  word-break:break-word;
}
.vdpp-advice-hoverable{
  cursor:help!important;
}

/* v7.6.3: old scheme tooltip disabled; advice popover works only from lifecycle tables */
#vdpp-tooltip{display:none!important;}
.vdpp-plant-advice-popover{pointer-events:auto;}


/* v7.6.4: ergonomics stage 1 - схема выше, инструменты во вкладках */
.vdpp-ergonomic .vdpp-layout-card{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}
.vdpp-ergonomic .vdpp-layout-card > .vdpp-card-head{order:1;}
.vdpp-tool-tabs{
  order:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px;
  border:1px solid #dbead1;
  border-radius:22px;
  background:linear-gradient(135deg,#ffffff,#f1faec);
  box-shadow:0 10px 24px rgba(0,0,0,.045);
}
.vdpp-tool-tabs-title{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:210px;
  color:#244f21;
}
.vdpp-tool-tabs-title strong{font-size:16px;line-height:1.2;}
.vdpp-tool-tabs-title span{font-size:12px;color:#5d7655;line-height:1.35;}
.vdpp-tool-tabs-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
}
.vdpp-tool-tab{
  appearance:none;
  border:1px solid #d8e9cc;
  background:#fff;
  color:#244f21;
  border-radius:16px;
  padding:10px 13px;
  min-width:128px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  cursor:pointer;
  font-weight:800;
  box-shadow:0 6px 16px rgba(0,0,0,.035);
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease;
}
.vdpp-tool-tab:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(47,86,34,.10);}
.vdpp-tool-tab small{font-size:11px;font-weight:700;color:#6b8064;line-height:1.25;}
.vdpp-tool-tab.is-active{
  background:#2f6f2e;
  color:#fff;
  border-color:#2f6f2e;
  box-shadow:0 12px 26px rgba(47,111,46,.20);
}
.vdpp-tool-tab.is-active small{color:rgba(255,255,255,.82);}
.vdpp-ergonomic .vdpp-layout-canvas-wrap{
  order:3;
  margin-top:0 !important;
  min-height:min(72vh,760px) !important;
  max-height:76vh;
  overflow:auto;
  scroll-margin-top:96px;
}
.vdpp-quick-actions-bar{
  order:4;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:12px 14px;
  border:1px solid #dbead1;
  border-radius:18px;
  background:#fbfff8;
}
.vdpp-quick-actions-bar strong{margin-right:auto;color:#244f21;}
.vdpp-ergonomic .vdpp-tool-panel{order:5;}
.vdpp-ergonomic .vdpp-tool-panel.is-hidden{display:none !important;}
.vdpp-danger-zone{
  width:100%;
  margin-top:10px;
  padding:10px 12px;
  border-radius:16px;
  border:1px dashed #efc2c2;
  background:#fffafa;
}
.vdpp-danger-zone summary{
  cursor:pointer;
  color:#a32020;
  font-weight:900;
  list-style:none;
}
.vdpp-danger-zone summary::-webkit-details-marker{display:none;}
.vdpp-danger-zone-actions{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.vdpp-ergonomic .vdpp-form-card-in-layout .vdpp-actions{
  align-items:center;
}
@media (min-width: 1280px){
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-card-head,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-tool-tabs,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-quick-actions-bar,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-object-card,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-zone-card,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-draw-bed-card,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-form-card-in-layout,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-plant-fill-card,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-table-card,
  .vdpp-ergonomic .vdpp-layout-card > .vdpp-layout-canvas-wrap{
    width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    max-width: calc(100% + var(--vdpp-layout-left-bleed)) !important;
    margin-left: calc(var(--vdpp-layout-left-bleed) * -1) !important;
    box-sizing:border-box !important;
  }
}
@media (max-width: 900px){
  .vdpp-tool-tabs{align-items:stretch;flex-direction:column;}
  .vdpp-tool-tabs-title{min-width:0;}
  .vdpp-tool-tabs-buttons{justify-content:flex-start;}
  .vdpp-tool-tab{flex:1 1 145px;min-width:0;}
  .vdpp-quick-actions-bar strong{width:100%;margin-right:0;}
}
@media (max-width: 560px){
  .vdpp-tool-tabs-buttons{display:grid;grid-template-columns:1fr;}
  .vdpp-tool-tab{width:100%;}
  .vdpp-ergonomic .vdpp-layout-canvas-wrap{max-height:none;min-height:420px !important;}
}


/* v7.7.0: ergonomics stage 2 - professional three-zone editor */
.vdpp-stage2 .vdpp-layout-card{
  gap:18px !important;
}
.vdpp-mode-tabs{
  order:2;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px;
  border:1px solid #dbead1;
  border-radius:20px;
  background:#f8fff4;
  position:sticky;
  top:10px;
  z-index:20;
  box-shadow:0 10px 24px rgba(47,86,34,.07);
}
.vdpp-mode-tabs button{
  appearance:none;
  border:1px solid #d8e9cc;
  background:#fff;
  color:#244f21;
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
  cursor:pointer;
}
.vdpp-mode-tabs button.is-active{
  background:#2f6f2e;
  color:#fff;
  border-color:#2f6f2e;
  box-shadow:0 8px 18px rgba(47,111,46,.18);
}
.vdpp-editor-shell{
  order:3;
  display:grid;
  grid-template-columns:minmax(250px, 320px) minmax(520px, 1fr) minmax(260px, 330px);
  gap:16px;
  align-items:start;
  width:100%;
}
.vdpp-editor-left,
.vdpp-editor-center,
.vdpp-editor-right{
  min-width:0;
}
.vdpp-editor-left,
.vdpp-editor-right{
  position:sticky;
  top:88px;
  max-height:calc(100vh - 108px);
  overflow:auto;
  padding:12px;
  border:1px solid #dbead1;
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f7fff1);
  box-shadow:0 10px 30px rgba(47,86,34,.06);
}
.vdpp-editor-center{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.vdpp-rail-title{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:0 0 12px;
  color:#244f21;
}
.vdpp-rail-title strong{font-size:17px;}
.vdpp-rail-title span{font-size:12px;line-height:1.35;color:#61775a;}
.vdpp-stage2-stepper{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px 12px;
  border:1px dashed #cfe4c2;
  border-radius:18px;
  background:#fbfff8;
  color:#315d2b;
  font-weight:900;
  font-size:12px;
}
.vdpp-stage2-stepper span{
  padding:6px 9px;
  border-radius:999px;
  background:#eef9e8;
}
.vdpp-stage2 .vdpp-tool-tabs{
  flex-direction:column;
  align-items:stretch;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.vdpp-stage2 .vdpp-tool-tabs-title{min-width:0;display:none;}
.vdpp-stage2 .vdpp-tool-tabs-buttons{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  justify-content:stretch;
}
.vdpp-stage2 .vdpp-tool-tab{
  width:100%;
  min-width:0;
  border-radius:16px;
}
.vdpp-stage2 .vdpp-tool-panel{
  margin-top:12px !important;
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
}
.vdpp-stage2 .vdpp-object-card,
.vdpp-stage2 .vdpp-zone-card,
.vdpp-stage2 .vdpp-draw-bed-card,
.vdpp-stage2 .vdpp-form-card-in-layout,
.vdpp-stage2 .vdpp-plant-fill-card{
  padding:14px !important;
  border-radius:20px !important;
}
.vdpp-stage2 .vdpp-object-tips,
.vdpp-stage2 .vdpp-form-help,
.vdpp-stage2 .vdpp-card-head p{
  font-size:12px !important;
  line-height:1.35 !important;
}
.vdpp-stage2 .vdpp-form-card-in-layout .vdpp-card-head,
.vdpp-stage2 .vdpp-object-head{
  gap:8px !important;
  margin-bottom:10px !important;
}
.vdpp-stage2 .vdpp-form,
.vdpp-stage2 .vdpp-object-form,
.vdpp-stage2 .vdpp-zone-form,
.vdpp-stage2 .vdpp-plant-fill-grid,
.vdpp-stage2 .vdpp-core-fields{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
}
.vdpp-stage2 .vdpp-field,
.vdpp-stage2 .vdpp-field-wide,
.vdpp-stage2 .vdpp-field-compact,
.vdpp-stage2 .vdpp-field-mini{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}
.vdpp-stage2 .vdpp-catalog-row{
  grid-template-columns:1fr !important;
}
.vdpp-stage2 #vdpp-catalog-select{width:100% !important;}
.vdpp-stage2 .vdpp-layout-canvas-wrap{
  order:initial;
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  min-height:min(76vh,820px) !important;
  max-height:calc(100vh - 170px) !important;
  border-radius:26px !important;
  overflow:auto !important;
  box-shadow:0 14px 34px rgba(47,86,34,.08) !important;
}
.vdpp-stage2 .vdpp-quick-actions-bar{
  order:initial;
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  position:sticky;
  bottom:10px;
  z-index:15;
  box-shadow:0 12px 28px rgba(47,86,34,.10);
}
.vdpp-stage2 .vdpp-editor-right .vdpp-smart-card{
  margin:0 0 12px !important;
  padding:13px !important;
  border-radius:18px !important;
  background:#fff;
  border:1px solid #dbead1;
  box-shadow:none !important;
}
.vdpp-stage2 .vdpp-editor-right .vdpp-smart-card h3{font-size:15px !important;margin-bottom:8px !important;}
.vdpp-right-details{
  border:1px solid #dbead1;
  border-radius:18px;
  background:#fff;
  padding:10px 12px;
  margin:0 0 12px;
}
.vdpp-right-details summary{
  cursor:pointer;
  color:#244f21;
  font-weight:900;
}
.vdpp-stage2 .vdpp-layer-tools,
.vdpp-stage2 .vdpp-template-library{
  margin-top:10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.vdpp-stage2 .vdpp-layer-tools{
  display:grid !important;
  grid-template-columns:1fr;
  gap:7px;
}
.vdpp-stage2 .vdpp-template-actions{display:grid !important;grid-template-columns:1fr !important;gap:8px !important;}
.vdpp-editor-wide-panels{
  order:4;
  width:100%;
}
.vdpp-stage2 .vdpp-lifecycle-mode-panel,
.vdpp-care-mode-panel{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  box-sizing:border-box !important;
}
.vdpp-stage2 .vdpp-lifecycle-mode-panel.is-hidden,
.vdpp-care-mode-panel.is-hidden,
.vdpp-editor-shell.is-hidden{
  display:none !important;
}
.vdpp-stage2 .vdpp-smart-moved{
  display:none !important;
}
.vdpp-stage2 .vdpp-editor-right .vdpp-smart-card,
.vdpp-stage2 .vdpp-editor-right .vdpp-right-details{
  display:block !important;
}
.vdpp-mobile-panels{display:none;}
@media (min-width:1280px){
  .vdpp-stage2 .vdpp-layout-card > .vdpp-card-head,
  .vdpp-stage2 .vdpp-layout-card > .vdpp-mode-tabs,
  .vdpp-stage2 .vdpp-layout-card > .vdpp-editor-shell,
  .vdpp-stage2 .vdpp-layout-card > .vdpp-editor-wide-panels{
    width:calc(100% + var(--vdpp-layout-left-bleed)) !important;
    max-width:calc(100% + var(--vdpp-layout-left-bleed)) !important;
    margin-left:calc(var(--vdpp-layout-left-bleed) * -1) !important;
    box-sizing:border-box !important;
  }
}
@media (max-width:1180px){
  .vdpp-editor-shell{
    grid-template-columns:1fr;
  }
  .vdpp-editor-center{order:1;}
  .vdpp-editor-left{order:2;}
  .vdpp-editor-right{order:3;}
  .vdpp-editor-left,
  .vdpp-editor-right{
    position:relative;
    top:auto;
    max-height:none;
    overflow:visible;
  }
  .vdpp-mobile-panels{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    position:sticky;
    top:64px;
    z-index:18;
    padding:8px;
    border:1px solid #dbead1;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 18px rgba(47,86,34,.08);
  }
  .vdpp-mobile-panels button{
    flex:1 1 130px;
    border:1px solid #d8e9cc;
    border-radius:999px;
    background:#f8fff4;
    color:#244f21;
    font-weight:900;
    padding:9px 11px;
  }
  .vdpp-stage2 .vdpp-layout-canvas-wrap{
    min-height:560px !important;
    max-height:none !important;
  }
}
@media (max-width:640px){
  .vdpp-mode-tabs{position:relative;top:auto;}
  .vdpp-mode-tabs button{flex:1 1 100%;}
  .vdpp-stage2-stepper{display:grid;grid-template-columns:1fr 1fr;}
  .vdpp-stage2 .vdpp-layout-canvas-wrap{min-height:440px !important;}
  .vdpp-stage2 .vdpp-quick-actions-bar{position:relative;bottom:auto;}
}

/* v7.7.1: zoom controls + collapsible properties rail */
.vdpp-zoom-bar{
  display:flex;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border:1px solid #dbead1;
  border-radius:18px;
  background:#fbfff8;
  box-shadow:0 8px 18px rgba(47,86,34,.06);
}
.vdpp-zoom-label{
  color:#315d2b;
  font-weight:900;
  font-size:12px;
  margin-right:4px;
}
.vdpp-zoom-bar button{
  appearance:none;
  border:1px solid #d8e9cc;
  background:#fff;
  color:#244f21;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  cursor:pointer;
  min-width:38px;
}
.vdpp-zoom-bar button:hover,
.vdpp-props-toggle:hover{
  background:#eef9e8;
}
.vdpp-zoom-bar output{
  min-width:54px;
  text-align:center;
  color:#244f21;
  font-weight:900;
  padding:7px 10px;
  border-radius:999px;
  background:#eef9e8;
}
.vdpp-props-toggle-wrap{
  display:flex;
  justify-content:stretch;
  margin:0 0 10px;
}
.vdpp-props-toggle{
  width:100%;
  appearance:none;
  border:1px solid #d8e9cc;
  border-radius:999px;
  background:#fff;
  color:#244f21;
  padding:10px 13px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(47,86,34,.06);
}
.vdpp-editor-shell.vdpp-props-collapsed{
  grid-template-columns:minmax(250px, 320px) minmax(520px, 1fr) 116px;
}
.vdpp-editor-right.is-collapsed{
  overflow:visible;
  max-height:none;
  padding:10px;
}
.vdpp-editor-right.is-collapsed .vdpp-props-content{
  display:none !important;
}
.vdpp-editor-right.is-collapsed .vdpp-props-toggle-wrap{
  margin:0;
  position:sticky;
  top:88px;
}
.vdpp-editor-right.is-collapsed .vdpp-props-toggle{
  min-height:48px;
  white-space:normal;
}
@media (max-width:1180px){
  .vdpp-editor-shell.vdpp-props-collapsed{
    grid-template-columns:1fr;
  }
  .vdpp-editor-right.is-collapsed .vdpp-props-toggle-wrap{
    position:relative;
    top:auto;
  }
  .vdpp-zoom-bar{
    flex-wrap:wrap;
  }
  .vdpp-zoom-label{
    flex:1 1 100%;
  }
}
@media (max-width:640px){
  .vdpp-zoom-bar button{flex:1 1 auto;}
  .vdpp-zoom-bar output{flex:1 1 76px;}
}


/* v7.7.2: подсказка жизненного цикла прокручивается внутри себя и не закрывается от скролла */
.vdpp-plant-advice-popover{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  touch-action:pan-y;
}
.vdpp-plant-advice-popover::-webkit-scrollbar{width:10px;}
.vdpp-plant-advice-popover::-webkit-scrollbar-track{background:#eef6e8;border-radius:999px;}
.vdpp-plant-advice-popover::-webkit-scrollbar-thumb{background:#86a976;border-radius:999px;border:2px solid #eef6e8;}
.vdpp-plant-advice-body,.vdpp-plant-advice-sources{overscroll-behavior:contain;}

/* v7.7.4: подсказка активируется только от графы растения, закрытие крестиком исправлено */
.vdpp-table td.vdpp-advice-cell-active .vdpp-culture-chip{box-shadow:0 0 0 2px rgba(47,115,48,.18);}
.vdpp-table td[data-vdpp-culture]{cursor:help;}

/* v7.7.6: скрываем старую кнопку жизненного цикла в боковых инструментах, если она осталась в кеше разметки */
.vdpp-tool-tab[data-vdpp-planner-tab="lifecycle"]{display:none!important;}


/* v7.7.6: новый сценарий — сначала пустая грядка, потом растения в выбранную форму */
.vdpp-core-fields,
#vdpp-submit-btn,
#vdpp-cancel-edit{
  display:none!important;
}
.vdpp-tool-tab[data-vdpp-planner-tab="fill"]{
  display:none!important;
}
.vdpp-bed.active,
.vdpp-bed-polygon.active{
  outline:4px solid rgba(46,125,50,.55)!important;
  box-shadow:0 0 0 8px rgba(97,168,78,.18), 0 16px 34px rgba(38,93,38,.22)!important;
  z-index:18;
}
.vdpp-bed.active::after,
.vdpp-bed-polygon.active::after{
  content:'Выбрана';
  position:absolute;
  left:8px;
  top:8px;
  background:#2f7d32;
  color:#fff;
  border-radius:999px;
  padding:4px 8px;
  font-size:11px;
  font-weight:900;
  pointer-events:none;
  z-index:6;
}
.vdpp-empty-bed-label{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:rgba(255,255,255,.86);
  border:1px solid rgba(102,151,83,.35);
  border-radius:999px;
  color:#2c5a25;
  font-size:12px;
  font-weight:900;
  padding:5px 10px;
  pointer-events:none;
  white-space:nowrap;
  z-index:4;
}
.vdpp-plant-icon{
  width:auto!important;
  min-width:28px;
  height:28px;
  padding:0 6px;
  gap:3px;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  font-size:14px;
}
.vdpp-plant-icon em{
  font-style:normal;
  font-size:10px;
  font-weight:900;
  color:#24561f;
  line-height:1;
  max-width:72px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.vdpp-plant-fill-card .vdpp-object-head h3{
  margin-bottom:4px;
}
.vdpp-form-card-in-layout .vdpp-actions .vdpp-danger-zone{
  margin-top:10px;
}

/* v7.7.7: защита от случайного перемещения элементов схемы */
.vdpp-inline-edit-lock-control{
  margin:12px 0;
  padding:12px;
  border:1px dashed rgba(92,150,72,.35);
  border-radius:16px;
  background:rgba(243,251,237,.82);
}
.vdpp-inline-edit-lock-control .vdpp-btn{
  margin-bottom:8px;
}
.vdpp-bed.is-locked-entity .vdpp-entity-resize,
.vdpp-bed-polygon.is-locked-entity .vdpp-entity-resize,
.vdpp-object.is-locked-entity .vdpp-entity-resize,
.vdpp-zone.is-locked-entity .vdpp-entity-resize{
  display:none!important;
}
.vdpp-bed.is-editing-entity,
.vdpp-bed-polygon.is-editing-entity,
.vdpp-object.is-editing-entity,
.vdpp-zone.is-editing-entity{
  outline:4px solid rgba(255,170,0,.72)!important;
  box-shadow:0 0 0 8px rgba(255,193,7,.20),0 16px 34px rgba(99,73,0,.22)!important;
  z-index:24!important;
  cursor:move;
}
.vdpp-bed.is-editing-entity .vdpp-entity-resize,
.vdpp-bed-polygon.is-editing-entity .vdpp-entity-resize,
.vdpp-object.is-editing-entity .vdpp-entity-resize,
.vdpp-zone.is-editing-entity .vdpp-entity-resize{
  display:block!important;
  opacity:1!important;
  background:#ffb300!important;
  border-color:#fff!important;
}
.vdpp-edit-state-badge{
  position:absolute;
  right:8px;
  top:8px;
  z-index:8;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(102,151,83,.35);
  color:#2d682f;
  font-size:11px;
  font-weight:900;
  pointer-events:none;
  box-shadow:0 8px 20px rgba(31,72,31,.14);
}
.vdpp-is-editing-entity .vdpp-edit-state-badge,
.vdpp-bed.is-editing-entity .vdpp-edit-state-badge,
.vdpp-bed-polygon.is-editing-entity .vdpp-edit-state-badge,
.vdpp-object.is-editing-entity .vdpp-edit-state-badge,
.vdpp-zone.is-editing-entity .vdpp-edit-state-badge{
  color:#7a4d00;
  border-color:rgba(255,170,0,.42);
  background:#fff8df;
}


/* v7.7.8: чистый сценарий вкладки «Растение» и компактные ярлычки культур */
#vdpp-toggle-extra,
.vdpp-form-card-in-layout .vdpp-form-help,
.vdpp-form-card-in-layout .vdpp-core-fields,
.vdpp-form-card-in-layout #vdpp-extra-fields,
.vdpp-form-card-in-layout .vdpp-extra-fields{
  display:none!important;
}
.vdpp-edit-state-badge{display:none!important;}
.vdpp-plant-icon{
  width:var(--vdpp-plant-marker-size, 20px)!important;
  min-width:var(--vdpp-plant-marker-size, 20px)!important;
  height:var(--vdpp-plant-marker-size, 20px)!important;
  padding:0!important;
  margin-left:calc(var(--vdpp-plant-marker-size, 20px) / -2)!important;
  margin-top:calc(var(--vdpp-plant-marker-size, 20px) / -2)!important;
  font-size:calc(var(--vdpp-plant-marker-size, 20px) * .62)!important;
  line-height:1!important;
  border-radius:50%!important;
  box-shadow:0 2px 5px rgba(30,80,30,.12)!important;
}
.vdpp-plant-icon em{display:none!important;}
.vdpp-bed .vdpp-plant-items,
.vdpp-bed-polygon .vdpp-plant-items{pointer-events:none;}

/* v7.7.9: настоящие polygon-границы и ручное редактирование формы */
.vdpp-bed-polygon.active{
  outline:none!important;
  box-shadow:none!important;
}
.vdpp-bed-polygon.active::after{
  display:none!important;
}
.vdpp-bed-polygon.active .vdpp-bed-polygon-fill{
  stroke:#2f7d32!important;
  stroke-width:5!important;
  fill:rgba(255, 210, 190, .84)!important;
  fill-rule:evenodd;
}
.vdpp-bed-polygon-svg{overflow:visible!important;}
.vdpp-bed-polygon-fill{fill-rule:evenodd;}
.vdpp-poly-handles{
  position:absolute;
  inset:0;
  z-index:9;
  pointer-events:none;
}
.vdpp-poly-handle{
  position:absolute;
  transform:translate(-50%,-50%);
  width:16px;
  height:16px;
  border-radius:999px;
  border:2px solid #fff;
  background:#2f7d32;
  box-shadow:0 2px 8px rgba(0,0,0,.24);
  cursor:grab;
  pointer-events:auto;
  padding:0;
}
.vdpp-poly-handle:active{cursor:grabbing;}
.vdpp-poly-edge{
  width:12px;
  height:12px;
  background:#f4b942;
  border-color:#fff8d8;
  opacity:.92;
}
.vdpp-bed-polygon:not(.is-editing-entity) .vdpp-poly-handles{display:none!important;}
.vdpp-bed-polygon.is-editing-entity .vdpp-bed-polygon-fill{
  stroke-dasharray:8 5;
}
.vdpp-bed-polygon .vdpp-plant-items{
  overflow:hidden!important;
}
.vdpp-plant-icon{
  max-width:var(--vdpp-plant-marker-size, 20px)!important;
  max-height:var(--vdpp-plant-marker-size, 20px)!important;
}


/* v7.7.10: убираем лишнюю прямоугольную красную рамку у polygon-грядок.
   Контур остаётся только по нарисованной форме самой грядки. */
.vdpp-bed.vdpp-bed-polygon,
.vdpp-bed.vdpp-bed-polygon[class*="is-"]{
  border:0!important;
  outline:none!important;
  background:transparent!important;
}
.vdpp-bed.vdpp-bed-polygon::before{
  display:none!important;
}
.vdpp-bed.vdpp-bed-polygon .vdpp-bed-polygon-fill{
  stroke:#2f7d32!important;
}
.vdpp-bed.vdpp-bed-polygon:not(.active):not(.is-editing-entity) .vdpp-bed-polygon-fill{
  stroke:#467a32!important;
  stroke-width:3!important;
}

/* v7.7.11: подсветка грядки, по которой открыта карточка ухода */
.vdpp-bed.vdpp-advice-bed-active,
.vdpp-bed-polygon.vdpp-advice-bed-active{
  box-shadow:0 0 0 3px rgba(47,126,52,.38), 0 14px 30px rgba(47,126,52,.18)!important;
  z-index:18;
}
.vdpp-row-menu-list [data-action="ai-fill"]{
  font-weight:800;
  color:#1f6b24;
}

/* v7.7.16: адаптивный сценарий посадки и чистая вкладка «Растения» */
.vdpp-legacy-plant-card{
  display:none!important;
}
.vdpp-plant-fill-card{
  scroll-margin-top:92px;
}
.vdpp-plant-fill-card .vdpp-object-head{
  gap:10px;
}
.vdpp-plant-fill-card .vdpp-object-tips::after{
  content:' Сценарий: выберите грядку кликом на схеме → задайте культуру и интервал → добавьте одно растение или заполните всю грядку.';
  font-weight:700;
  color:#315f28;
}
.vdpp-plant-fill-card #vdpp-plant-culture,
.vdpp-plant-fill-card #vdpp-plant-step{
  min-height:44px;
}
.vdpp-plant-fill-card .vdpp-draw-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

/* Сворачиваемая панель свойств, особенно для планшетов и телефонов */
.vdpp-props-collapse-toggle{
  display:inline-flex!important;
}
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-smart-grid,
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-layer-tools,
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-template-library,
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-agro-tools{
  display:none!important;
}
.vdpp-smart-editor-panel.vdpp-props-collapsed{
  padding:14px 16px!important;
}
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-smart-head{
  margin-bottom:0!important;
  align-items:center;
}
.vdpp-smart-editor-panel.vdpp-props-collapsed .vdpp-smart-head h2{
  margin-bottom:0!important;
}

/* Мобильный режим: вкладки работают как аккордеон разделов */
@media (max-width:1080px){
  .vdpp-editor-tabs{
    top:0;
    border-radius:0 0 20px 20px;
    margin-left:-8px;
    margin-right:-8px;
    overflow-x:auto;
    flex-wrap:nowrap;
    scrollbar-width:thin;
  }
  .vdpp-editor-tabs button{
    flex:0 0 auto;
    padding:10px 12px;
    white-space:nowrap;
  }
  .vdpp-editor-tabs .vdpp-tab-all,
  .vdpp-editor-tabs .vdpp-tab-desktop-extra{
    display:none!important;
  }
  .vdpp-layout-card{
    overflow:visible!important;
  }
  .vdpp-layout-canvas-wrap{
    min-height:520px!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .vdpp-smart-editor-panel{
    position:relative!important;
    z-index:3;
  }
  .vdpp-smart-actions{
    width:100%;
    justify-content:flex-start!important;
  }
  .vdpp-props-collapse-toggle{
    order:-1;
    width:100%;
    justify-content:center;
  }
  .vdpp-plant-fill-card .vdpp-draw-actions .vdpp-btn{
    flex:1 1 190px;
    justify-content:center;
  }
}
@media (max-width:720px){
  .vdpp-plant-fill-card{
    padding:14px!important;
    border-radius:20px!important;
  }
  .vdpp-plant-fill-card .vdpp-draw-actions .vdpp-btn{
    width:100%;
    flex-basis:100%;
  }
  .vdpp-layout-canvas-wrap{
    min-height:460px!important;
  }
}


/* v7.7.17: адаптация планировщика под телефон + масштабирование страницы/схемы */
body:has(.vdpp-wrap){
  touch-action:pan-x pan-y pinch-zoom;
}
.vdpp-wrap,
.vdpp-wrap *{
  -webkit-tap-highlight-color:rgba(47,111,46,.12);
}
@media (max-width: 820px){
  body:has(.vdpp-wrap){
    overflow-x:hidden;
  }
  body:has(.vdpp-wrap) .vd-theme-wrap,
  body:has(.vdpp-wrap) .vd-theme-header,
  body:has(.vdpp-wrap) .vd-theme-main{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
  body:has(.vdpp-wrap) .vd-theme-wrap{
    padding-left:6px !important;
    padding-right:6px !important;
  }
  body:has(.vdpp-wrap) .vd-theme-main{
    padding:8px !important;
    border-radius:18px !important;
  }
  body:has(.vdpp-wrap) .vd-theme-title{
    font-size:0 !important;
    line-height:0 !important;
    margin:0 !important;
  }
  .vdpp-wrap{
    width:100% !important;
    max-width:100% !important;
    padding:8px 4px 18px !important;
    margin:0 auto !important;
    overflow:visible !important;
  }
  .vdpp-wrap > .vdpp-layout-card,
  .vdpp-wrap > .vdpp-plan-manager-card,
  .vdpp-wrap > .vdpp-table-card,
  .vdpp-wrap > .vdpp-feature-strip,
  .vdpp-wrap > .vdpp-account-note{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
  .vdpp-stage2 .vdpp-layout-card{
    padding:10px !important;
    border-radius:20px !important;
    overflow:visible !important;
  }
  .vdpp-stage2 .vdpp-layout-card > .vdpp-card-head{
    gap:8px !important;
  }
  .vdpp-stage2 .vdpp-layout-card > .vdpp-card-head h2,
  .vdpp-card-head h2{
    font-size:19px !important;
    line-height:1.15 !important;
  }
  .vdpp-mode-tabs,
  .vdpp-editor-tabs{
    position:sticky !important;
    top:0 !important;
    z-index:40 !important;
    margin:0 -4px 8px !important;
    border-radius:0 0 18px 18px !important;
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    -webkit-overflow-scrolling:touch;
  }
  .vdpp-mode-tabs button,
  .vdpp-editor-tabs button{
    flex:0 0 auto !important;
    white-space:nowrap !important;
    min-height:42px !important;
    padding:9px 12px !important;
  }
  .vdpp-stage2-stepper{
    grid-template-columns:repeat(5, minmax(72px,1fr)) !important;
    overflow-x:auto !important;
    white-space:nowrap !important;
    padding:8px !important;
  }
  .vdpp-stage2-stepper span{
    min-width:72px;
    text-align:center;
    font-size:11px;
  }
  .vdpp-zoom-bar{
    position:sticky !important;
    top:52px !important;
    z-index:35 !important;
    display:grid !important;
    grid-template-columns:1fr 46px 76px 46px 86px !important;
    gap:6px !important;
    align-items:center !important;
    padding:8px !important;
    margin-bottom:8px !important;
    border-radius:16px !important;
  }
  .vdpp-zoom-label{
    flex:auto !important;
    font-size:11px !important;
    white-space:normal !important;
    margin:0 !important;
  }
  .vdpp-zoom-bar button,
  .vdpp-zoom-bar output{
    min-width:0 !important;
    width:100% !important;
    padding:8px 6px !important;
  }
  .vdpp-stage2 .vdpp-layout-canvas-wrap,
  .vdpp-layout-canvas-wrap{
    width:100% !important;
    max-width:100% !important;
    min-height:calc(100vh - 210px) !important;
    max-height:none !important;
    padding:34px 10px 10px 34px !important;
    overflow:auto !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
    touch-action:pan-x pan-y pinch-zoom !important;
    border-radius:18px !important;
    scroll-snap-type:none !important;
  }
  .vdpp-canvas{
    min-width:360px !important;
    min-height:360px !important;
    touch-action:auto !important;
  }
  .vdpp-direction{
    font-size:11px !important;
    padding:6px 8px !important;
  }
  .vdpp-stage-ruler{
    font-size:10px !important;
  }
  .vdpp-stage-ruler-top span{
    height:22px !important;
  }
  .vdpp-stage-ruler-left span{
    width:34px !important;
  }
  .vdpp-editor-shell{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .vdpp-editor-center{order:1 !important;min-width:0 !important;}
  .vdpp-editor-left{order:2 !important;}
  .vdpp-editor-right{order:3 !important;}
  .vdpp-editor-left,
  .vdpp-editor-right{
    position:relative !important;
    top:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:10px !important;
    border-radius:18px !important;
  }
  .vdpp-stage2 .vdpp-tool-tabs-buttons,
  .vdpp-plan-actions,
  .vdpp-bg-actions,
  .vdpp-draw-actions,
  .vdpp-object-actions,
  .vdpp-template-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }
  .vdpp-btn,
  .vdpp-stage2 .vdpp-tool-tab{
    min-height:42px !important;
    justify-content:center !important;
  }
  .vdpp-table-card,
  .vdpp-table-wrap,
  .vdpp-table-sections{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }
  .vdpp-plant-advice-popover{
    width:min(92vw, 420px) !important;
    max-width:92vw !important;
    max-height:70vh !important;
    left:4vw !important;
    right:4vw !important;
  }
}
@media (max-width: 420px){
  .vdpp-zoom-bar{
    grid-template-columns:1fr 42px 68px 42px !important;
  }
  .vdpp-zoom-bar button[data-vdpp-zoom="reset"]{
    grid-column:1 / -1;
  }
  .vdpp-stage2 .vdpp-layout-canvas-wrap,
  .vdpp-layout-canvas-wrap{
    min-height:calc(100vh - 230px) !important;
    padding-left:30px !important;
  }
  .vdpp-canvas{
    min-width:320px !important;
  }
  .vdpp-stage2-stepper{
    grid-template-columns:repeat(5, 72px) !important;
  }
}

/* v8.0.14: база культур и таблицы V8 */
.sdclean-catalog-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 130px auto;gap:8px;margin:8px 0 10px;align-items:center}
.sdclean-catalog-toolbar input,.sdclean-catalog-toolbar select{border:1px solid #d9e8cd;border-radius:12px;background:#fff;padding:10px 12px;font-weight:700;color:#24451e;min-height:38px}
.sdclean-catalog-toolbar button{border:1px solid #cfe4c0;border-radius:12px;background:#eef7e8;color:#24451e;font-weight:800;padding:10px 12px;cursor:pointer}
.sdclean-plants[data-sdclean-catalog-cards]{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));max-height:245px;overflow:auto;padding-right:4px}
.sdclean-plant-card small{display:block;font-size:10px;line-height:1.2;color:#6d7d63;margin-top:3px;max-height:24px;overflow:hidden}
.sdclean-plant-card.is-active{outline:2px solid #5a9639;background:#edf8e8!important}
.sdclean-life-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #dfead6;border-radius:14px;overflow:hidden;background:#fff;font-size:13px}
.sdclean-life-table th{background:#eef7e8;color:#1f461c;text-align:left;font-weight:900;padding:9px;border-bottom:1px solid #dfead6}
.sdclean-life-table td{padding:9px;border-bottom:1px solid #eff4ea;vertical-align:top;color:#2f3f2b}
.sdclean-life-table tr:last-child td{border-bottom:0}
.sdclean-life-table small{display:block;color:#6a7e60;font-size:11px;margin-top:2px}
[data-sdclean-lifecycle-table] h4{margin:12px 0 7px;color:#22451b;font-size:15px;background:#eff7eb;display:inline-flex;padding:7px 12px;border-radius:12px;border:1px solid #d7e8cc}
@media(max-width:760px){.sdclean-catalog-toolbar{grid-template-columns:1fr}.sdclean-plants[data-sdclean-catalog-cards]{grid-template-columns:repeat(2,minmax(0,1fr));max-height:220px}}


/* v8.0.15: old lifecycle table model + strict catalog */
.sdclean-life-scroll{overflow:auto;max-width:100%;border:1px solid #d9e8ce;border-radius:14px;background:#fff}
.sdclean-old-life-table{min-width:1280px}
.sdclean-old-life-table th{vertical-align:top;white-space:normal;min-width:105px}
.sdclean-old-life-table td{vertical-align:top;line-height:1.35;white-space:normal}
.sdclean-old-life-table th:first-child,.sdclean-old-life-table td:first-child{position:sticky;left:0;background:#fff;z-index:1}
.sdclean-old-life-table th:first-child{background:#5aa12b;color:#fff}
.sdclean-culture-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #ffc6c0;background:#fff2ef;border-radius:999px;padding:5px 8px;color:#b7342a;font-weight:700}
.sdclean-ai-btn{border:1px solid #b9d9a5;background:#eef9e8;border-radius:10px;padding:6px 10px;font-weight:700;color:#276018;cursor:pointer}
.sdclean-ai-btn:disabled{opacity:.55;cursor:wait}
.sdclean-catalog-panel .sdclean-muted{padding:12px;border:1px dashed #cddfc0;border-radius:12px;background:#fbfff8}

/* v8.0.18: растения не выходят за границы грядок: маркеры жестко масштабируются и обрезаются контейнером */
.vdpp-bed,
.vdpp-bed-polygon{
  overflow:hidden!important;
}
.vdpp-bed-polygon{
  overflow:hidden!important;
}
.vdpp-bed .vdpp-plant-items,
.vdpp-bed-polygon .vdpp-plant-items{
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  contain:paint!important;
  pointer-events:none!important;
}
.vdpp-plant-icon{
  box-sizing:border-box!important;
  width:var(--vdpp-plant-marker-size, 16px)!important;
  min-width:var(--vdpp-plant-marker-size, 16px)!important;
  max-width:var(--vdpp-plant-marker-size, 16px)!important;
  height:var(--vdpp-plant-marker-size, 16px)!important;
  max-height:var(--vdpp-plant-marker-size, 16px)!important;
  margin-left:calc(var(--vdpp-plant-marker-size, 16px) / -2)!important;
  margin-top:calc(var(--vdpp-plant-marker-size, 16px) / -2)!important;
  padding:0!important;
  border-radius:50%!important;
  font-size:calc(var(--vdpp-plant-marker-size, 16px) * .62)!important;
  line-height:1!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-indent:0!important;
}
.vdpp-plant-icon em,
.vdpp-plant-icon .vdpp-plant-name,
.vdpp-plant-icon span:not(:first-child){
  display:none!important;
}


/* v8.0.30: make theme header the same full width as planner blocks on V2 page */
body.sdclean-fullwidth-page .vd-theme-wrap{max-width:none!important;width:100%!important;padding-left:8px!important;padding-right:8px!important;}
body.sdclean-fullwidth-page .vd-theme-header{max-width:calc(100vw - 28px)!important;width:calc(100vw - 28px)!important;margin-left:auto!important;margin-right:auto!important;display:grid!important;grid-template-columns:minmax(220px,.9fr) auto auto minmax(260px,360px)!important;align-items:center!important;gap:12px!important;}
body.sdclean-fullwidth-page .vd-theme-header .vd-theme-brand{font-size:clamp(26px,2.1vw,34px)!important;line-height:1.05!important;white-space:nowrap!important;}
body.sdclean-fullwidth-page .vd-theme-header .vd-theme-search{width:100%!important;max-width:360px!important;display:flex!important;}
body.sdclean-fullwidth-page .vd-theme-header .vd-theme-search input{min-width:0!important;max-width:none!important;width:100%!important;}
body.sdclean-fullwidth-page .vd-theme-header .vd-theme-search button{flex:0 0 auto!important;}
@media(max-width:1100px){body.sdclean-fullwidth-page .vd-theme-header{grid-template-columns:1fr!important;}body.sdclean-fullwidth-page .vd-theme-header .vd-theme-brand{white-space:normal!important;}body.sdclean-fullwidth-page .vd-theme-header .vd-theme-search{max-width:none!important;}}

body.sdclean-fullwidth-page .vd-theme-header .vd-theme-brand::after,body.sdclean-fullwidth-page header .vd-theme-brand::after{content:" 🗺️";font-size:.82em;vertical-align:baseline}

/* v8.0.39: мобильная навигация по схеме пальцами */
.vdpp-layout-canvas-wrap.vdpp-touch-panning{
  cursor:grabbing !important;
  scroll-behavior:auto !important;
}
@media (max-width: 900px){
  .vdpp-stage2 .vdpp-layout-canvas-wrap,
  .vdpp-layout-canvas-wrap{
    touch-action:none !important;
    overscroll-behavior:contain !important;
    -webkit-overflow-scrolling:touch !important;
    cursor:grab;
  }
  .vdpp-stage2 .vdpp-layout-canvas-wrap::after{
    content:'Двигайте схему одним пальцем, масштабируйте двумя';
    position:sticky;
    left:10px;
    bottom:10px;
    display:inline-block;
    z-index:30;
    padding:6px 10px;
    margin:8px;
    border:1px solid #d8e9cc;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#315d2b;
    font-size:11px;
    font-weight:800;
    pointer-events:none;
    box-shadow:0 8px 18px rgba(47,86,34,.10);
  }
  .vdpp-canvas{
    touch-action:none !important;
  }
}


/* v8.0.40: растения на грядке показываются только внутри внутренней зелёной зоны.
   Визуально выводится столько маркеров, сколько красиво помещается, а реальное число остаётся в таблице высаженного. */
.vdpp-plant-items{
  inset:8px!important;
  border-radius:12px;
  overflow:hidden!important;
}
.vdpp-bed-polygon .vdpp-plant-items{
  inset:0!important;
}
.vdpp-plant-icon{
  width:var(--vdpp-plant-marker-size, 16px)!important;
  height:var(--vdpp-plant-marker-size, 16px)!important;
  margin-left:calc(var(--vdpp-plant-marker-size, 16px) / -2)!important;
  margin-top:calc(var(--vdpp-plant-marker-size, 16px) / -2)!important;
  font-size:calc(var(--vdpp-plant-marker-size, 16px) * .78)!important;
  box-sizing:border-box;
}
.vdpp-plant-items[data-real-count]::after{
  content:"";
  display:none;
}

/* v8.0.46: растения показываются только внутри внутренней зелёной зоны грядки */
.vdpp-bed{overflow:hidden!important;}
.vdpp-bed .vdpp-plant-items-inner,
.vdpp-bed-polygon .vdpp-plant-items-inner{
  position:absolute!important;
  pointer-events:none!important;
  overflow:hidden!important;
  contain:layout paint!important;
  z-index:2!important;
  border-radius:12px!important;
}
.vdpp-bed-polygon .vdpp-plant-items-inner{border-radius:10px!important;}
.vdpp-plant-items-inner .vdpp-plant-icon{
  box-sizing:border-box!important;
  width:var(--vdpp-plant-marker-size, 12px)!important;
  min-width:var(--vdpp-plant-marker-size, 12px)!important;
  max-width:var(--vdpp-plant-marker-size, 12px)!important;
  height:var(--vdpp-plant-marker-size, 12px)!important;
  max-height:var(--vdpp-plant-marker-size, 12px)!important;
  margin-left:calc(var(--vdpp-plant-marker-size, 12px) / -2)!important;
  margin-top:calc(var(--vdpp-plant-marker-size, 12px) / -2)!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:calc(var(--vdpp-plant-marker-size, 12px) * .68)!important;
  line-height:1!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-indent:0!important;
}
.vdpp-plant-items-inner[data-real-count]::after{display:none!important;content:""!important;}


/* v8.0.50: убираем внутреннюю зелёную полоску зоны посадки и раскладываем ярлыки по ячейкам 50 см */
.vdpp-bed .vdpp-plant-items-inner,
.vdpp-bed-polygon .vdpp-plant-items-inner{
  inset:0!important;
  left:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:0!important;
  overflow:hidden!important;
}
.vdpp-bed .vdpp-plant-items-inner::before,
.vdpp-bed .vdpp-plant-items-inner::after,
.vdpp-bed-polygon .vdpp-plant-items-inner::before,
.vdpp-bed-polygon .vdpp-plant-items-inner::after{
  display:none!important;
  content:""!important;
}
.vdpp-plant-items-inner .vdpp-plant-icon{
  margin-left:0!important;
  margin-top:0!important;
  transform:none!important;
}


/* v8.0.51: без зелёной внутренней/выбранной полосы, растения как сетка 50 см */
.vdpp-bed.active,
.vdpp-bed-polygon.active{
  outline:none!important;
  box-shadow:none!important;
}
.vdpp-bed.active::after,
.vdpp-bed-polygon.active::after{
  display:none!important;
  content:""!important;
}
.vdpp-bed-polygon.active .vdpp-bed-polygon-fill{
  stroke:#d75647!important;
  stroke-width:3!important;
}
.vdpp-bed .vdpp-plant-items,
.vdpp-bed-polygon .vdpp-plant-items,
.vdpp-bed .vdpp-plant-items-inner,
.vdpp-bed-polygon .vdpp-plant-items-inner{
  inset:0!important;
  left:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  width:auto!important;
  height:auto!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:hidden!important;
}
.vdpp-bed .vdpp-plant-items::before,
.vdpp-bed .vdpp-plant-items::after,
.vdpp-bed-polygon .vdpp-plant-items::before,
.vdpp-bed-polygon .vdpp-plant-items::after,
.vdpp-bed .vdpp-plant-items-inner::before,
.vdpp-bed .vdpp-plant-items-inner::after,
.vdpp-bed-polygon .vdpp-plant-items-inner::before,
.vdpp-bed-polygon .vdpp-plant-items-inner::after{
  display:none!important;
  content:""!important;
}
.vdpp-plant-items-inner .vdpp-plant-icon,
.vdpp-plant-items .vdpp-plant-icon{
  margin-left:0!important;
  margin-top:0!important;
  transform:none!important;
}

/* v8.0.62: touch gestures are captured only inside the real canvas wrapper. */
@media (max-width: 900px){
  .v8-canvas-slot{ touch-action:auto !important; }
  .v8-canvas-slot .vdpp-layout-canvas-wrap{ touch-action:none !important; }
}

/* v8.0.64: нижний слой покрытия участка */
.vdpp-object.vdpp-ground-object{z-index:1;border-radius:0;border-width:0;box-shadow:none;color:transparent;overflow:hidden;}
.vdpp-object.vdpp-ground-object .vdpp-entity-resize{color:#fff;background:rgba(255,255,255,.72);border-color:rgba(0,0,0,.18);}
.vdpp-object-lawn{background:#63b84f!important;background-image:repeating-linear-gradient(145deg,rgba(255,255,255,.12) 0 2px,rgba(255,255,255,0) 2px 18px)!important;border-color:#3a8a2f!important;}
.vdpp-object-asphalt{background:#3f4649!important;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,rgba(255,255,255,0) 1px 28px)!important;border-color:#262b2d!important;}
.vdpp-stage-surface > .vdpp-zone{z-index:2;}
.vdpp-stage-surface > .vdpp-object:not(.vdpp-ground-object){z-index:3;}
.vdpp-stage-surface > .vdpp-bed{z-index:4;}
.vdpp-layer-ground-hidden .vdpp-ground-object{display:none!important;}
