body.odv-st-page { overflow-x:clip; }

	/* ── Uygulama iskeleti (tema header/footer yok) ── */
	html:has(body.odv-st-app) { margin-top:0 !important; }
	body.odv-st-app { margin:0 !important; padding:0 !important; background:#fff; overflow:hidden; }
	body.odv-st-app #wpadminbar, body.odv-st-app #xem-annbar { display:none !important; }
	.odv-st-shell { display:flex; flex-direction:column; height:100vh; height:100dvh; font-family:Manrope,system-ui,sans-serif; color:#2E2621; }
	.odv-st-top { flex:none; height:60px; display:flex; align-items:center; gap:18px; padding:0 20px; border-bottom:1px solid #e8e2db; background:#fff; position:relative; z-index:30; }
	.odv-st-top__logo { display:flex; align-items:center; text-decoration:none; color:#2E2621; }
	.odv-st-top__logo img { display:block; height:24px; width:auto; }
	.odv-st-top__logo span { font-size:22px; font-weight:700; letter-spacing:-.3px; }
	.odv-st-top__t { font-size:13px; color:#6d6459; padding-left:18px; border-left:1px solid #e8e2db; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
	.odv-st-top__nav { margin-left:auto; display:flex; align-items:center; gap:18px; }
	.odv-st-top__back { font-size:13px; color:#2E2621 !important; text-decoration:none; }
	.odv-st-top__back:hover { text-decoration:underline; }
	.odv-st-top__cart { position:relative; display:flex; width:38px; height:38px; align-items:center; justify-content:center; border-radius:50%; color:#2E2621 !important; }
	.odv-st-top__cart:hover { background:#FAF8F6; }
	.odv-st-top__cart svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; stroke-linecap:round; }
	.odv-st-top__count { position:absolute; top:2px; right:0; min-width:17px; height:17px; padding:0 4px; border-radius:999px; background:#2E2621; color:#fff; font-size:10px; font-weight:700; line-height:17px; text-align:center; }
	.odv-st-top__count[hidden] { display:none; }
	.odv-st-app .odv-st { flex:1; min-height:0; height:auto; margin:0; border-top:0; }
	/* Tema sayfa başlığı / boşlukları — yalnız bu sayfada */
	.odv-st-page .qodef-page-title, .odv-st-page .page-title, .odv-st-page .entry-title,
	.odv-st-page .wp-block-post-title { display:none !important; }

	.odv-st { --ink:#2E2621; --soft:#6d6459; --line:#e8e2db; --bg:#FAF8F6; --wall:#ebe6df;
		position:relative; display:grid; grid-template-columns:340px minmax(0,1fr); grid-template-rows:minmax(0,1fr) auto;
		height:var(--odv-st-h, calc(100svh - 96px)); min-height:560px;
		margin:0 calc(50% - 50vw); background:#fff; color:var(--ink);
		font-family:Manrope,system-ui,sans-serif; font-size:14px; line-height:1.4; border-top:1px solid var(--line);
		-webkit-tap-highlight-color:transparent; }
	.odv-st *, .odv-st *:before, .odv-st *:after { box-sizing:border-box; }
	.odv-st button { font:inherit; color:inherit; }
	.odv-st [hidden] { display:none !important; }
	.odv-st__tools svg, .odv-st__search svg, .odv-st__rb svg, .odv-st__showtools svg, .odv-st__arbtn svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex:none; }

	/* ── Kenar çubuğu ── */
	.odv-st__side { grid-row:1 / span 2; position:relative; display:flex; flex-direction:column; min-height:0; border-right:1px solid var(--line); background:#fff; }
	.odv-st__lib { display:flex; flex-direction:column; min-height:0; height:100%; }
	.odv-st__libhead { padding:16px 16px 10px; display:grid; gap:8px; }
	.odv-st__search { display:flex; align-items:center; gap:8px; background:var(--bg); border:1px solid var(--line); border-radius:999px; padding:0 14px; color:var(--soft); }
	.odv-st__search input { flex:1; min-width:0; height:auto !important; min-height:0 !important; margin:0 !important; border:0 !important; border-radius:0 !important; background:none !important; padding:10px 0 !important; font:inherit !important; line-height:1.4 !important; color:var(--ink) !important; outline:none; box-shadow:none !important; -webkit-appearance:none; appearance:none; }
	.odv-st__search:focus-within { border-color:var(--ink); }
	.odv-st__filters { display:grid; grid-template-columns:1fr auto; gap:8px; }
	.odv-st__filters select { appearance:none; -webkit-appearance:none; width:100%; height:auto !important; margin:0 !important; line-height:1.3 !important; border:1px solid var(--line); border-radius:999px; padding:8px 30px 8px 14px; font:inherit; font-size:13px; color:var(--ink); cursor:pointer;
		background:#fff no-repeat right 12px center; background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%232E2621' stroke-width='1.4' fill='none'/%3E%3C/svg%3E"); }
	.odv-st__seg { display:grid; grid-template-columns:repeat(3,1fr); background:var(--bg); border-radius:999px; padding:3px; }
	.odv-st__seg button { border:0; background:none; border-radius:999px; padding:6px 0; font-size:12.5px; cursor:pointer; color:var(--soft); }
	.odv-st__seg button.is-on { background:#fff; color:var(--ink); font-weight:600; box-shadow:0 1px 3px rgba(46,38,33,.12); }
	.odv-st__banner { margin:0 16px 8px; padding:10px 12px; background:var(--bg); border:1px solid var(--line); border-radius:8px; font-size:13px; display:flex; gap:10px; align-items:center; justify-content:space-between; }
	.odv-st__banner button { border:0; background:none; text-decoration:underline; cursor:pointer; font-weight:600; padding:0; white-space:nowrap; }
	.odv-st__scroll { flex:1; min-height:0; overflow:auto; padding:4px 16px 20px; overscroll-behavior:contain; }
	.odv-st__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 12px; }
	.odv-st__card { display:block; text-align:left; border:0; background:none; padding:0; cursor:pointer; position:relative; }
	.odv-st__card-img { display:block; position:relative; aspect-ratio:4/5; background:var(--bg); border-radius:3px; overflow:hidden; }
	.odv-st__card-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease; }
	.odv-st__card:hover .odv-st__card-img img { transform:scale(1.03); }
	.odv-st__card-img:after { content:"+"; position:absolute; right:8px; bottom:8px; width:28px; height:28px; border-radius:50%; background:#fff; color:var(--ink);
		display:flex; align-items:center; justify-content:center; font-size:18px; box-shadow:0 1px 4px rgba(0,0,0,.18); opacity:0; transition:opacity .2s; }
	.odv-st__card:hover .odv-st__card-img:after, .odv-st__card:focus-visible .odv-st__card-img:after { opacity:1; }
	.odv-st__card.is-busy .odv-st__card-img:after { content:""; opacity:1; border:2px solid var(--line); border-top-color:var(--ink); animation:odvstspin .7s linear infinite; background:#fff; }
	.odv-st__card b { display:block; margin-top:8px; font-size:12.5px; font-weight:600; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
	.odv-st__card small { display:block; min-height:1.4em; font-size:12px; color:var(--soft); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
	.odv-st__card em { display:block; font-style:normal; font-size:12px; margin-top:2px; }
	.odv-st__sk { aspect-ratio:4/5; border-radius:3px; background:linear-gradient(90deg,var(--bg),#f1ede8,var(--bg)); background-size:200% 100%; animation:odvstsk 1.2s ease-in-out infinite; }
	.odv-st__none { grid-column:1/-1; color:var(--soft); font-size:13px; padding:20px 0; text-align:center; }
	.odv-st__more { height:1px; }

	/* ── Düzenleme paneli ── */
	.odv-st__edit { position:absolute; inset:0; background:#fff; overflow:auto; padding:18px 18px 24px; z-index:3; }
	.odv-st__eh { display:flex; gap:12px; align-items:flex-start; padding-bottom:16px; border-bottom:1px solid var(--line); margin-bottom:16px; }
	.odv-st__eh img { width:54px; height:68px; object-fit:cover; border-radius:2px; background:var(--bg); flex:none; }
	.odv-st__eh div { flex:1; min-width:0; }
	.odv-st__eh b { display:block; font-size:15px; line-height:1.3; }
	.odv-st__eh small { display:block; color:var(--soft); font-size:13px; margin-top:2px; }
	.odv-st .odv-st__x { flex:none; width:32px; height:32px; margin:-7px -7px 0 0; border:0; background:none; padding:0; cursor:pointer; color:var(--ink); display:flex; align-items:center; justify-content:center; }
	.odv-st .odv-st__x:hover { color:var(--soft); }
	.odv-st__lbl { font-size:12px; text-transform:uppercase; letter-spacing:1.2px; color:var(--soft); margin:0 0 8px; }
	.odv-st__lbl b { text-transform:none; letter-spacing:0; color:var(--ink); font-weight:600; font-size:13px; margin-left:4px; }
	.odv-st__pills { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:18px; }
	.odv-st__pill { border:1px solid var(--line); background:#fff; border-radius:999px; padding:7px 12px; font-size:13px; cursor:pointer; }
	.odv-st__pill:hover { border-color:var(--soft); }
	.odv-st__pill.is-on { border-color:var(--ink); background:var(--ink); color:#fff; }
	.odv-st__pill:disabled { opacity:.35; cursor:default; }
	.odv-st__sw { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:18px; }
	.odv-st__swb { border:0; background:none; padding:0; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:5px; font-size:11.5px; color:var(--soft); width:56px; }
	.odv-st__swb i { width:40px; height:40px; border-radius:50%; display:block; position:relative; box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); outline:2px solid transparent; outline-offset:3px; transition:outline-color .15s; }
	.odv-st__swb.is-on i { outline-color:var(--ink); }
	.odv-st__swb.is-on { color:var(--ink); font-weight:600; }
	.odv-st__swb i.k-black { background:#1c1b1a; }
	.odv-st__swb i.k-white { background:#f5f3ef; }
	.odv-st__swb i.k-wood { background:repeating-linear-gradient(100deg, rgba(160,105,65,0) 0 2px, rgba(160,105,65,.18) 2px 3px), linear-gradient(135deg,#dcae86,#d19f76 55%,#d7a881); }
	.odv-st__swb i.k-other { background:#8a8580; }
	.odv-st__swb i.k-none { background:#fff; }
	.odv-st__swb i.k-none:after { content:""; position:absolute; left:50%; top:4px; bottom:4px; width:1.5px; background:#b9b0a6; transform:rotate(45deg); }
	.odv-st__esel { width:100%; margin-bottom:18px; border:1px solid var(--line); border-radius:999px; padding:8px 14px; font:inherit; }
	.odv-st__eprice { display:flex; align-items:baseline; gap:8px; font-size:18px; font-weight:700; margin:4px 0 18px; }
	.odv-st__eprice del { font-size:14px; font-weight:400; color:var(--soft); }
	.odv-st__eprice em { font-style:normal; font-size:12px; font-weight:700; color:#b3261e; }
	.odv-st__acts { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
	.odv-st__acts .odv-st__btn:first-child { grid-column:1/-1; }
	.odv-st__elink { display:inline-block; margin-top:14px; font-size:13px; color:var(--soft); text-decoration:underline; }

	.odv-st__btn { border:1px solid var(--ink); background:var(--ink); color:#fff !important; border-radius:999px; padding:10px 16px; font-size:13px; font-weight:600; cursor:pointer; white-space:nowrap; }
	.odv-st__btn:hover { opacity:.88; }
	.odv-st__btn--ghost { background:#fff; color:var(--ink) !important; border-color:var(--line); }
	.odv-st__btn--ghost:hover { border-color:var(--ink); opacity:1; }
	.odv-st__btn--danger { background:#fff; color:#b3261e !important; border-color:var(--line); }

	/* ── Sahne ── */
	.odv-st__main { position:relative; min-height:0; overflow:hidden; background:var(--wall); }
	.odv-st__stage { position:absolute; inset:0; overflow:hidden; }
	.odv-st__stage.is-calib { cursor:crosshair; }
	.odv-st__room { position:absolute; left:0; top:0; }
	.odv-st__room img, .odv-st__room svg { display:block; width:100%; height:100%; max-width:none; }
	.odv-st__world { position:absolute; inset:0; pointer-events:none; }
	.odv-st__it { position:absolute; left:0; top:0; pointer-events:auto; cursor:grab; touch-action:none; user-select:none; -webkit-user-select:none; will-change:transform; }
	.odv-st__it.is-drag { cursor:grabbing; z-index:6; }
	.odv-st__it.is-sel { z-index:5; }
	.odv-st__it.is-sel:after { content:""; position:absolute; inset:-6px; border:1.5px solid var(--ink); box-shadow:0 0 0 1.5px rgba(255,255,255,.85), inset 0 0 0 1.5px rgba(255,255,255,.85); pointer-events:none; }
	/* Çerçeve: 4 gönyeli kenar (clip-path), ışık sol üstten; ahşapta damar kenar yönünde */
	.odv-st__fr { position:absolute; inset:0;
		box-shadow:0 calc(var(--k) * 1) calc(var(--k) * 2.4) rgba(0,0,0,.30), 0 calc(var(--k) * .3) calc(var(--k) * .5) rgba(0,0,0,.24), calc(var(--k) * .15) calc(var(--k) * .15) 0 rgba(0,0,0,.10); }
	.odv-st__fr i { position:absolute; inset:0; display:block; }
	.odv-st__fr .t { clip-path:polygon(0 0,100% 0,calc(100% - var(--f)) var(--f),var(--f) var(--f)); }
	.odv-st__fr .r { clip-path:polygon(100% 0,100% 100%,calc(100% - var(--f)) calc(100% - var(--f)),calc(100% - var(--f)) var(--f)); }
	.odv-st__fr .b { clip-path:polygon(var(--f) calc(100% - var(--f)),calc(100% - var(--f)) calc(100% - var(--f)),100% 100%,0 100%); }
	.odv-st__fr .l { clip-path:polygon(0 0,var(--f) var(--f),var(--f) calc(100% - var(--f)),0 100%); }
	.odv-st__fr .t { filter:brightness(1.05); } .odv-st__fr .l { filter:brightness(1.02); }
	.odv-st__fr .r { filter:brightness(.97); }  .odv-st__fr .b { filter:brightness(.93); }
	.odv-st__fr.k-black i { background:#1d1c1b; }
	.odv-st__fr.k-black .t { filter:brightness(1.45); } .odv-st__fr.k-black .l { filter:brightness(1.2); } .odv-st__fr.k-black .b { filter:brightness(.9); }
	.odv-st__fr.k-white i { background:#f4f2ee; }
	.odv-st__fr.k-white { box-shadow:0 calc(var(--k) * .6) calc(var(--k) * 1.6) rgba(0,0,0,.2), 0 0 0 .5px rgba(0,0,0,.14); }
	.odv-st__fr.k-other i { background:#8a8580; }
	/* oDuvar Doğal Açık Çam Ahşap (#F8DBB0 — 45° gönyeli köşelerde dıştan içe simetrik damar eşleşmesi) */
	.odv-st__fr.k-wood .t {
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='24' viewBox='0 0 160 24' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0%25' stop-color='%23f4d2a4'/%3E%3Cstop offset='18%25' stop-color='%23ffedd4'/%3E%3Cstop offset='58%25' stop-color='%23f8dbb0'/%3E%3Cstop offset='100%25' stop-color='%23e8be84'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='160' height='24' fill='url(%23g)'/%3E%3Cpath d='M0,4 Q40,1.5 80,4.5 T160,3.5' fill='none' stroke='%23e09e54' stroke-width='1.8' opacity='.30'/%3E%3Cpath d='M0,9 Q45,11.5 90,8.5 T160,10' fill='none' stroke='%23d48c3e' stroke-width='1.3' opacity='.22'/%3E%3Cpath d='M0,14 Q35,11.5 75,14.5 T160,13' fill='none' stroke='%23e2a25a' stroke-width='2' opacity='.28'/%3E%3Cpath d='M0,19 Q50,21.5 100,18.5 T160,20' fill='none' stroke='%23d48c3e' stroke-width='1.4' opacity='.22'/%3E%3C/svg%3E") left top repeat-x !important;
		background-size: 120px var(--f, 12px) !important;
	}
	.odv-st__fr.k-wood .b {
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='24' viewBox='0 0 160 24' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='1' x2='0' y2='0'%3E%3Cstop offset='0%25' stop-color='%23f4d2a4'/%3E%3Cstop offset='18%25' stop-color='%23ffedd4'/%3E%3Cstop offset='58%25' stop-color='%23f8dbb0'/%3E%3Cstop offset='100%25' stop-color='%23e8be84'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='160' height='24' fill='url(%23g)'/%3E%3Cpath d='M0,20 Q40,22.5 80,19.5 T160,20.5' fill='none' stroke='%23e09e54' stroke-width='1.8' opacity='.30'/%3E%3Cpath d='M0,15 Q45,12.5 90,15.5 T160,14' fill='none' stroke='%23d48c3e' stroke-width='1.3' opacity='.22'/%3E%3Cpath d='M0,10 Q35,12.5 75,9.5 T160,11' fill='none' stroke='%23e2a25a' stroke-width='2' opacity='.28'/%3E%3Cpath d='M0,5 Q50,2.5 100,5.5 T160,4' fill='none' stroke='%23d48c3e' stroke-width='1.4' opacity='.22'/%3E%3C/svg%3E") left bottom repeat-x !important;
		background-size: 120px var(--f, 12px) !important;
	}
	.odv-st__fr.k-wood .l {
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='160' viewBox='0 0 24 160' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='0'%3E%3Cstop offset='0%25' stop-color='%23f4d2a4'/%3E%3Cstop offset='18%25' stop-color='%23ffedd4'/%3E%3Cstop offset='58%25' stop-color='%23f8dbb0'/%3E%3Cstop offset='100%25' stop-color='%23e8be84'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='24' height='160' fill='url(%23g)'/%3E%3Cpath d='M4,0 Q1.5,40 4.5,80 T3.5,160' fill='none' stroke='%23e09e54' stroke-width='1.8' opacity='.30'/%3E%3Cpath d='M9,0 Q11.5,45 8.5,90 T10,160' fill='none' stroke='%23d48c3e' stroke-width='1.3' opacity='.22'/%3E%3Cpath d='M14,0 Q11.5,35 14.5,75 T13,160' fill='none' stroke='%23e2a25a' stroke-width='2' opacity='.28'/%3E%3Cpath d='M19,0 Q21.5,50 18.5,100 T20,160' fill='none' stroke='%23d48c3e' stroke-width='1.4' opacity='.22'/%3E%3C/svg%3E") left top repeat-y !important;
		background-size: var(--f, 12px) 120px !important;
	}
	.odv-st__fr.k-wood .r {
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='160' viewBox='0 0 24 160' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='1' y1='0' x2='0' y2='0'%3E%3Cstop offset='0%25' stop-color='%23f4d2a4'/%3E%3Cstop offset='18%25' stop-color='%23ffedd4'/%3E%3Cstop offset='58%25' stop-color='%23f8dbb0'/%3E%3Cstop offset='100%25' stop-color='%23e8be84'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='24' height='160' fill='url(%23g)'/%3E%3Cpath d='M20,0 Q22.5,40 19.5,80 T20.5,160' fill='none' stroke='%23e09e54' stroke-width='1.8' opacity='.30'/%3E%3Cpath d='M15,0 Q12.5,45 15.5,90 T14,160' fill='none' stroke='%23d48c3e' stroke-width='1.3' opacity='.22'/%3E%3Cpath d='M10,0 Q12.5,35 9.5,75 T11,160' fill='none' stroke='%23e2a25a' stroke-width='2' opacity='.28'/%3E%3Cpath d='M5,0 Q2.5,50 5.5,100 T4,160' fill='none' stroke='%23d48c3e' stroke-width='1.4' opacity='.22'/%3E%3C/svg%3E") right top repeat-y !important;
		background-size: var(--f, 12px) 120px !important;
	}
	.odv-st__art { position:absolute; overflow:hidden; background:#f7f5f0; }
	.odv-st__clip { position:absolute; overflow:hidden; display:block; }
	.odv-st__it:not(.is-bare) .odv-st__art { box-shadow:0 0 0 max(1px, calc(var(--k) * .06)) rgba(0,0,0,.28); }
	/* çerçeve derinliğinin esere düşen gölgesi (ışık sol üstten) */
	.odv-st__art:after { content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset calc(var(--k) * .3) calc(var(--k) * .4) calc(var(--k) * .55) rgba(0,0,0,.26), inset 0 0 calc(var(--k) * .15) rgba(0,0,0,.12); }
	.odv-st__it.is-bare .odv-st__art { box-shadow:0 calc(var(--k) * .35) calc(var(--k) * 1) rgba(0,0,0,.24); }
	.odv-st__it.is-bare .odv-st__art:after { box-shadow:none; }
	.odv-st__art img { position:absolute; max-width:none !important; pointer-events:none; user-select:none; -webkit-user-drag:none; }
	.odv-st__slot { position:absolute; inset:0; border:1.5px dashed rgba(46,38,33,.55); background:rgba(255,255,255,.42); backdrop-filter:blur(2px);
		display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; color:var(--ink); transition:background .15s; }
	.odv-st__slot span { font-size:22px; line-height:1; font-weight:300; }
	.odv-st__slot small { font-size:11px; color:var(--soft); }
	.odv-st__it.is-slot:hover .odv-st__slot { background:rgba(255,255,255,.62); }
	.odv-st__it.is-slot.is-sel .odv-st__slot { border-style:solid; background:rgba(255,255,255,.7); }
	.odv-st__tag { display:none; position:absolute; left:50%; top:100%; transform:translate(-50%, 12px); background:var(--ink); color:#fff; font-size:11px; padding:3px 8px; border-radius:999px; white-space:nowrap; pointer-events:none; }
	.odv-st__it.is-sel .odv-st__tag { display:block; }
	.odv-st__it.is-drag .odv-st__tag { display:none; }
	.odv-st__gx, .odv-st__gy { position:absolute; pointer-events:none; background:#e2553f; z-index:7; }
	.odv-st__gx { top:0; bottom:0; width:1px; }
	.odv-st__gy { left:0; right:0; height:1px; }
	.odv-st__lim { position:absolute; left:0; right:0; height:0; border-top:1.5px dashed rgba(255,255,255,.9); box-shadow:0 0 0 .5px rgba(46,38,33,.35); pointer-events:none; z-index:7; }

	/* ── Araç çubuğu ── */
	.odv-st__tools { position:absolute; top:14px; left:14px; z-index:10; display:flex; align-items:center; gap:2px; background:#fff; border-radius:999px; padding:4px; box-shadow:0 2px 10px rgba(46,38,33,.12); max-width:calc(100% - 28px); overflow-x:auto; scrollbar-width:none; }
	.odv-st__tools::-webkit-scrollbar { display:none; }
	.odv-st__tools i { width:1px; height:20px; background:var(--line); margin:0 4px; flex:none; }
	.odv-st__tools button { display:flex; align-items:center; gap:6px; height:36px; min-width:36px; padding:0 9px; border:0; background:none; border-radius:999px; cursor:pointer; color:var(--ink); white-space:nowrap; font-size:13px; }
	.odv-st__tools button:hover { background:var(--bg); }
	.odv-st__tools button.is-on { background:var(--ink); color:#fff; }
	.odv-st__tools button:disabled { opacity:.3; cursor:default; background:none; }
	.odv-st__tools, .odv-st__rooms, .odv-st__dims { transition:opacity .2s; }
	.odv-st.is-dragging .odv-st__tools, .odv-st.is-dragging .odv-st__rooms, .odv-st.is-dragging .odv-st__dims, .odv-st.is-dragging .odv-st__arpill { opacity:.12; pointer-events:none; }
	/* Mobil: "Alanında gör" sahnenin sol altında yazılı hap; masaüstünde gizli */
	.odv-st__arpill { display:none; position:absolute; left:10px; bottom:10px; z-index:9; align-items:center; gap:7px; height:40px; padding:0 14px 0 12px; border:0; border-radius:999px; background:#fff; color:var(--ink) !important; font-size:13px; font-weight:600; box-shadow:0 2px 10px rgba(46,38,33,.16); cursor:pointer; transition:opacity .2s; }
	.odv-st__arpill svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; }
	.odv-st__countrow { font-size:12px; color:var(--soft); }
	.odv-st__cdim { display:none; }
	.odv-st__hidetools { color:var(--soft) !important; }
	.odv-st__showtools { display:none; position:absolute; top:14px; left:14px; z-index:10; width:40px; height:40px; border:0; border-radius:50%; background:#fff; box-shadow:0 2px 10px rgba(46,38,33,.14); cursor:pointer; align-items:center; justify-content:center; color:var(--ink); }
	.odv-st.is-notools .odv-st__tools, .odv-st.is-notools .odv-st__tpl, .odv-st.is-notools .odv-st__dims { display:none !important; }
	.odv-st.is-notools .odv-st__showtools { display:flex; }
	.odv-st.is-nolib { grid-template-columns:0 minmax(0,1fr); }
	.odv-st.is-nolib .odv-st__side { overflow:hidden; border-right:0; visibility:hidden; }
	.odv-st.is-nolib .odv-st__bar { grid-column:1 / span 2; }
	.odv-st__tpl { position:absolute; top:62px; left:14px; z-index:11; background:#fff; border-radius:12px; padding:14px; box-shadow:0 8px 30px rgba(46,38,33,.18); width:min(380px, calc(100% - 28px)); }
	.odv-st__tpl p { margin:0 0 10px; font-size:12px; color:var(--soft); }
	.odv-st__tplg { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
	.odv-st__tplb { border:1px solid var(--line); background:#fff; border-radius:8px; padding:8px 4px 6px; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:5px; font-size:11px; color:var(--soft); }
	.odv-st__tplb:hover { border-color:var(--ink); color:var(--ink); }
	.odv-st__tplb svg { width:64px; height:40px; stroke:none; }
	.odv-st__tplb svg rect { fill:#cfc6bc; }

	/* ── Odalar ── */
	.odv-st__rooms { position:absolute; right:14px; top:14px; z-index:10; display:flex; flex-direction:column; gap:6px; background:#fff; padding:5px; border-radius:10px; box-shadow:0 2px 10px rgba(46,38,33,.12); max-height:calc(100% - 28px); overflow-y:auto; overflow-x:hidden; scrollbar-width:none; }
	.odv-st__rooms::-webkit-scrollbar { display:none; }
	.odv-st__rtoggle { flex:none; display:flex; align-items:center; justify-content:center; gap:3px; width:64px; height:22px; border:0; background:none; padding:0; cursor:pointer; color:var(--soft); font-size:11px; font-weight:600; }
	.odv-st__rtoggle svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; transform:rotate(180deg); transition:transform .15s; }
	.odv-st__rooms.is-closed .odv-st__rtoggle svg { transform:none; }
	.odv-st__rooms.is-closed .odv-st__rb { display:none; }
	.odv-st__rb { flex:none; }
	.odv-st__rb { width:64px; height:46px; border:0; padding:0; border-radius:6px; overflow:hidden; cursor:pointer; background:var(--bg) center/cover no-repeat; position:relative; outline:2px solid transparent; outline-offset:1px; display:flex; align-items:center; justify-content:center; color:var(--soft); font-size:10px; flex-direction:column; gap:2px; }
	.odv-st__rb.is-on { outline-color:var(--ink); }
	.odv-st__rb.is-flat { box-shadow:inset 0 0 0 1px rgba(0,0,0,.08); }
	.odv-st__rb.is-up { border:1px dashed #cfc6bc; background:#fff; }
	.odv-st__rb.is-up svg { width:16px; height:16px; }
	.odv-st__colors { position:absolute; right:92px; top:14px; z-index:10; display:flex; gap:8px; background:#fff; padding:8px 10px; border-radius:999px; box-shadow:0 2px 10px rgba(46,38,33,.12); }
	.odv-st__colors button { width:26px; height:26px; border-radius:50%; border:0; cursor:pointer; box-shadow:inset 0 0 0 1px rgba(0,0,0,.12); outline:2px solid transparent; outline-offset:2px; }
	.odv-st__colors button.is-on { outline-color:var(--ink); }

	.odv-st__calib { position:absolute; left:50%; bottom:18px; transform:translateX(-50%); z-index:12; width:min(420px, calc(100% - 28px)); background:#fff; border-radius:12px; padding:14px 16px; box-shadow:0 8px 30px rgba(46,38,33,.2); }
	.odv-st__calib-t { font-weight:700; margin-bottom:8px; }
	.odv-st__calib label { display:block; font-size:13px; }
	.odv-st__calib label b { float:right; }
	.odv-st__calib input[type=range] { width:100%; margin:8px 0 4px; accent-color:var(--ink); }
	.odv-st__calib p { margin:4px 0 10px; font-size:12px; color:var(--soft); }

	.odv-st__empty { position:absolute; left:50%; top:42%; transform:translate(-50%,-50%); z-index:4; background:rgba(255,255,255,.94); border-radius:14px; padding:20px 24px; text-align:center; display:flex; flex-direction:column; gap:8px; align-items:center; box-shadow:0 6px 24px rgba(46,38,33,.12); max-width:calc(100% - 40px); }
	.odv-st__empty b { font-size:17px; }
	.odv-st__empty span { color:var(--soft); font-size:13px; }
	.odv-st__empty-m { display:none; }
	.odv-st__dims { position:absolute; left:14px; bottom:14px; z-index:9; background:rgba(255,255,255,.92); border-radius:999px; padding:6px 12px; font-size:12px; color:var(--soft); }
	.odv-st__dims b { color:var(--ink); font-weight:600; }
	.odv-st__toast { position:absolute; left:50%; bottom:18px; transform:translateX(-50%); z-index:13; background:var(--ink); color:#fff; border-radius:999px; padding:10px 16px; font-size:13px; display:flex; gap:14px; align-items:center; max-width:calc(100% - 28px); box-shadow:0 6px 20px rgba(0,0,0,.2); }
	.odv-st__toast button { border:0; background:none; color:#fff; text-decoration:underline; font-weight:600; cursor:pointer; padding:0; white-space:nowrap; }

	/* ── Alt çubuk ── */
	.odv-st__bar { grid-column:2; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 20px; border-top:1px solid var(--line); background:#fff; z-index:20; }
	.odv-st__sum { display:flex; flex-direction:column; min-width:0; }
	.odv-st__count { font-size:12px; color:var(--soft); }
	.odv-st__total { display:flex; align-items:baseline; gap:8px; }
	.odv-st__now { font-size:19px; font-weight:700; white-space:nowrap; }
	.odv-st__total { flex-wrap:wrap; row-gap:2px; }
	.odv-st__was { color:var(--soft); font-size:14px; }
	.odv-st__off { white-space:nowrap; font-style:normal; font-size:11px; font-weight:700; letter-spacing:.4px; color:#fff; background:#b3261e; border-radius:3px; padding:2px 6px; }
	.odv-st__off:empty { display:none; }
	.odv-st__ship { font-size:12px; color:var(--soft); }
	.odv-st__cta { position:relative; border:0; background:var(--ink); color:#fff !important; border-radius:999px; padding:15px 34px; font-size:14px; font-weight:600; letter-spacing:.4px; text-transform:uppercase; cursor:pointer; white-space:nowrap; transition:opacity .2s, transform .1s; }
	.odv-st__cta:active { transform:scale(.98); }
	.odv-st__cta:disabled { opacity:.4; cursor:default; }
	.odv-st__cta.is-loading { color:transparent !important; pointer-events:none; }
	.odv-st__cta.is-loading:after { content:""; position:absolute; left:50%; top:50%; width:18px; height:18px; margin:-9px 0 0 -9px; border-radius:50%; border:2px solid rgba(255,255,255,.35); border-top-color:#fff; animation:odvstspin .7s linear infinite; }

	/* ── AR ── */
	.odv-st__acts2 { display:flex; align-items:center; gap:10px; }
	.odv-st__arbtn { display:flex; align-items:center; gap:8px; border:1px solid var(--line); background:#fff; color:var(--ink) !important; border-radius:999px; padding:13px 20px; font-size:14px; font-weight:600; cursor:pointer; white-space:nowrap; }
	.odv-st__arbtn:hover { border-color:var(--ink); }
	@media (max-width:899px) {
		.odv-st__arbtn { display:none; }
		.odv-st__acts2 { gap:8px; }
	}

	@keyframes odvstspin { to { transform:rotate(360deg); } }
	@keyframes odvstsk { 0% { background-position:100% 0; } 100% { background-position:-100% 0; } }

	/* ── Mobil ── */
	@media (max-width:899px) {
		body.odv-st-app { overflow:auto; }
		.odv-st-shell { height:auto; min-height:100dvh; }
		.odv-st-top { height:52px; padding:0 14px; gap:12px; position:sticky; top:0; }
		.odv-st-top__logo img { height:20px; }
		.odv-st-top__t { display:none; }
		.odv-st-top__back { font-size:12.5px; }
		.odv-st { display:flex; flex-direction:column; height:auto; min-height:0; }
		.odv-st__main { order:1; height:62svh; min-height:380px; flex:none; }
		.odv-st__side { border-right:0; }
		.odv-st__bar { order:2; position:sticky; top:52px; padding:10px 14px; border-top:0; border-bottom:1px solid var(--line); box-shadow:0 6px 14px rgba(46,38,33,.06); }
		.odv-st__side { order:3; }
		.odv-st__libbtn, .odv-st__libsep { display:none !important; }
		.odv-st__showtools { top:10px; left:10px; }
		.odv-st__lib { height:auto; }
		.odv-st__libhead { padding:14px 14px 8px; }
		.odv-st__scroll { overflow:visible; padding:4px 14px 20px; }
		.odv-st__grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 10px; }
		.odv-st__banner { margin:0 14px 8px; }
		/* Düzenleme: kompakt alt sayfa — sahne görünür kalsın, değişiklik canlı izlensin */
		.odv-st__edit { position:fixed; inset:auto 0 0 0; max-height:48svh; border-radius:16px 16px 0 0; box-shadow:0 -10px 40px rgba(0,0,0,.2); z-index:100000; padding:12px 14px calc(12px + env(safe-area-inset-bottom)); }
		.odv-st__eh { padding-bottom:10px; margin-bottom:10px; align-items:center; }
		.odv-st__eh img { width:34px; height:42px; }
		.odv-st__eh b { font-size:14px; }
		.odv-st__eh small { font-size:12px; }
		.odv-st__lbl { margin-bottom:6px; font-size:11px; }
		.odv-st__pills { flex-wrap:nowrap; overflow-x:auto; margin-bottom:12px; scrollbar-width:none; }
		.odv-st__pills::-webkit-scrollbar { display:none; }
		.odv-st__pill { flex:none; padding:6px 11px; }
		.odv-st__sw { gap:6px; margin-bottom:10px; flex-wrap:nowrap; }
		.odv-st__swb { width:auto; flex:1; font-size:11px; }
		.odv-st__swb i { width:30px; height:30px; }
		.odv-st__eprice { font-size:16px; margin:0 0 10px; }
		.odv-st__acts { grid-template-columns:1.4fr 1fr 1fr; gap:6px; }
		.odv-st__acts .odv-st__btn:first-child { grid-column:auto; }
		.odv-st__acts .odv-st__btn { padding:9px 8px; font-size:12.5px; }
		.odv-st__elink { display:none; }
		.odv-st__was { display:inline; }
		/* araç çubuğu solda, oda sütunu sağda — aynı hizada, üst üste binmez */
		.odv-st__tools { top:10px; left:10px; max-width:calc(100% - 96px); }
		.odv-st__tools { gap:0; }
		.odv-st__tools button { min-width:32px; padding:0 7px; }
		.odv-st__tools i { margin:0 3px; }
		.odv-st__tools button span { display:none; }
		.odv-st__tools [data-act="center"], .odv-st__tools [data-act="ar"] { display:none; }
		.odv-st__tpl { top:56px; left:10px; width:calc(100% - 20px); }
		.odv-st__tplg { grid-template-columns:repeat(4,1fr); }
		/* odalar sağ üstte dikey sütun, "Odalar" başlığıyla gizlenebilir */
		.odv-st__rooms { top:10px; right:10px; bottom:auto; flex-direction:column; max-height:calc(100% - 76px); }
		.odv-st__rb { width:60px; height:44px; }
		.odv-st__rtoggle { width:60px; height:34px; }
		.odv-st__colors { right:86px; top:62px; bottom:auto; }
		.odv-st__dims { display:none !important; }
		.odv-st.has-posters .odv-st__arpill { display:flex; }
		/* çok oda yüklüyken oda şeridi hapın üstüne binmesin: kalan genişlikte yatay kaysın */
		/* "Alanında gör" altta ortada */
		.odv-st__arpill { left:50%; bottom:12px; transform:translateX(-50%); z-index:11; }
		.odv-st__cdim { display:inline; }
		.odv-st__empty-d { display:none; }
		.odv-st__empty-m { display:inline; }
		.odv-st__cta { padding:14px 22px; }
		.odv-st__now { font-size:17px; }
		.odv-st__calib { bottom:64px; }
		.odv-st__toast { bottom:64px; border-radius:12px; }
	}
html.odv-st-ar-open, html.odv-st-ar-open body { overflow:hidden !important; }
	.odv-st-ar { position:fixed; inset:0; z-index:2147483000; background:rgba(28,24,21,.55); display:flex; align-items:center; justify-content:center; padding:20px; font-family:Manrope,system-ui,sans-serif; color:#2E2621; }
	.odv-st-ar[hidden] { display:none; }
	.odv-st-ar__box { background:#fff; border-radius:16px; width:min(980px,100%); height:min(640px,100%); display:flex; flex-direction:column; overflow:hidden; box-shadow:0 20px 60px rgba(0,0,0,.3); }
	.odv-st-ar__h { display:flex; align-items:center; gap:12px; padding:14px 18px; border-bottom:1px solid #e8e2db; }
	.odv-st-ar__h b { font-size:16px; }
	.odv-st-ar__dim { font-size:13px; color:#6d6459; }
	.odv-st-ar__x { margin-left:auto; width:32px; height:32px; border:0; background:none; padding:0; cursor:pointer; color:#2E2621; display:flex; align-items:center; justify-content:center; }
	.odv-st-ar__body { flex:1; min-height:0; display:grid; grid-template-columns:minmax(0,1fr) 300px; }
	.odv-st-ar__view { position:relative; background:linear-gradient(#f3f0eb,#e7e2da); }
	.odv-st-ar__view model-viewer { width:100%; height:100%; --poster-color:transparent; background:transparent; }
	.odv-st-ar__load { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; font-size:13px; color:#6d6459; z-index:2; }
	.odv-st-ar__load[hidden] { display:none; }
	.odv-st-ar__load i { width:26px; height:26px; border-radius:50%; border:2px solid #e8e2db; border-top-color:#2E2621; animation:odvstarspin .7s linear infinite; }
	.odv-st-ar__side { padding:20px; border-left:1px solid #e8e2db; overflow:auto; font-size:14px; line-height:1.5; }
	.odv-st-ar__side p { margin:0 0 14px; }
	.odv-st-ar__side [hidden] { display:none !important; }
	.odv-st-ar__qr { width:200px; height:200px; margin:0 0 14px; }
	.odv-st-ar__qr svg { width:100%; height:100%; display:block; }
	.odv-st-ar__small { font-size:12px; color:#6d6459; }
	.odv-st-ar__go { width:100%; border:0; background:#2E2621; color:#fff; border-radius:999px; padding:15px 20px; font:inherit; font-size:15px; font-weight:600; cursor:pointer; margin-bottom:14px; }
	.odv-st-ar__go:disabled { opacity:.4; cursor:default; }
	.odv-st-ar-note { position:fixed; left:50%; bottom:24px; transform:translateX(-50%); z-index:2147483001; background:#2E2621; color:#fff; border-radius:12px; padding:11px 16px; font:13px/1.4 Manrope,system-ui,sans-serif; max-width:calc(100% - 32px); box-shadow:0 6px 20px rgba(0,0,0,.25); }
	.odv-st-ar-note[hidden] { display:none; }
	@media (max-width:899px) {
		.odv-st-ar { padding:0; }
		.odv-st-ar__box { border-radius:0; width:100%; height:100%; }
		.odv-st-ar__body { grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) auto; }
		.odv-st-ar__side { border-left:0; border-top:1px solid #e8e2db; padding:16px 16px calc(16px + env(safe-area-inset-bottom)); }
	}
	@keyframes odvstarspin { to { transform:rotate(360deg); } }


/* ═══════════════════════════════════════════════════════════════════════════
   oDuvar TASARIM ATÖLYESİ — FERAH & MODERN GALERİ TEMASI (v3.0)
   ═══════════════════════════════════════════════════════════════════════════ */

.odv-st {
    --ink: #114639;
    --soft: #526b63;
    --line: #dde6e2;
    --bg: #f3f7f5;
    --wall: #E2ECE9;
    --lime: #E2F11E;
    grid-template-columns: 370px minmax(0, 1fr);
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* 1. Ferah Beyaz Üst Stüdyo Barı + Canlı Kampanya Adımları */
.odv-st-top {
    height: 62px;
    padding: 0 22px;
    background: #ffffff;
    border-bottom: 1px solid #dde6e2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}
.odv-st-top__brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    flex-shrink: 0;
}
.odv-st-top__brand img {
    height: 32px;
    width: auto;
    display: block;
}
.odv-st-top__badge {
    background: #114639;
    color: #E2F11E;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.05em;
    padding: 4px 9px;
    border-radius: 999px;
}

/* Ortadaki Canlı Kampanya Adım Çubuğu */
.odv-st-steps {
    display: flex;
    align-items: center;
    gap: 4px;
    background: #f3f7f5;
    border: 1px solid #dde6e2;
    padding: 4px 8px;
    border-radius: 999px;
    overflow-x: auto;
    scrollbar-width: none;
}
.odv-st-steps::-webkit-scrollbar {
    display: none;
}
.odv-st-step {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    color: #526b63;
    transition: all 0.2s ease;
    white-space: nowrap;
}
.odv-st-step b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #dde6e2;
    color: #114639;
    font-size: 10.5px;
    font-weight: 800;
}
.odv-st-step.is-reached {
    color: #114639;
    font-weight: 700;
}
.odv-st-step.is-reached b {
    background: #114639;
    color: #E2F11E;
}
.odv-st-step.is-current {
    background: #114639;
    color: #ffffff;
    font-weight: 700;
    box-shadow: 0 2px 8px rgba(17, 70, 57, 0.18);
}
.odv-st-step.is-current b {
    background: #E2F11E;
    color: #114639;
}
.odv-st-step-sep {
    color: #b8c9c2;
    font-size: 12px;
    padding: 0 1px;
}

.odv-st-top__nav {
    margin-left: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}
.odv-st-top__back {
    background: #f3f7f5;
    border: 1px solid #dde6e2;
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 12.5px;
    font-weight: 700;
    color: #114639 !important;
    text-decoration: none !important;
    transition: all 0.18s ease;
    white-space: nowrap;
}
.odv-st-top__back:hover {
    background: #114639;
    color: #E2F11E !important;
    border-color: #114639;
}
.odv-st-top__cart {
    background: #f3f7f5;
    border: 1px solid #dde6e2;
    color: #114639 !important;
    width: 38px;
    height: 38px;
}
.odv-st-top__cart:hover {
    background: #E2ECE9;
}
.odv-st-top__count {
    background: #114639;
    color: #E2F11E;
}

/* 2. Sol Katalog Paneli & Hızlı Koleksiyon Sekmeleri */
.odv-st__side {
    background: #ffffff;
    border-right: 1px solid #dde6e2;
}
.odv-st__libhead {
    padding: 12px 14px 10px;
    border-bottom: 1px solid #eef3f0;
    background: #ffffff;
    display: grid;
    gap: 8px;
}
.odv-st__libtitle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    font-weight: 800;
    color: #114639;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}
.odv-st__libtitle span {
    background: #E2ECE9;
    color: #114639;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    text-transform: none;
}
.odv-st__filter-row {
    display: grid;
    gap: 7px;
}
.odv-st__search {
    background: #f3f7f5;
    border: 1px solid #dde6e2;
    border-radius: 10px;
    padding: 0 12px;
}
.odv-st__search input {
    padding: 8px 0 !important;
    font-size: 13px !important;
}
.odv-st__search:focus-within {
    border-color: #114639;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(17, 70, 57, 0.08);
}
.odv-st__filters {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 6px;
}
.odv-st__filters select {
    border-radius: 10px;
    border-color: #dde6e2;
    background-color: #f3f7f5;
    font-weight: 600;
    font-size: 12.5px;
    padding: 7px 26px 7px 11px;
}

/* Yatay Kaydırılabilir Hızlı Koleksiyon Sekmeleri */
.odv-st__qcats {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    padding: 2px 0;
}
.odv-st__qcats::-webkit-scrollbar {
    display: none;
}
.odv-st__qcat {
    flex: 0 0 auto;
    border: 1px solid #d5e2dc;
    background: #f3f7f5;
    color: #114639;
    border-radius: 999px;
    padding: 5px 11px;
    font-size: 11.5px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.16s ease;
}
.odv-st__qcat:hover {
    border-color: #114639;
    background: #e6f0ec;
}
.odv-st__qcat.is-on {
    background: #114639;
    color: #E2F11E;
    border-color: #114639;
    box-shadow: 0 2px 6px rgba(17, 70, 57, 0.18);
}

.odv-st__scroll {
    padding: 12px 14px 24px;
    background: #f8fbf9;
}
.odv-st__grid {
    gap: 14px 12px;
}
.odv-st__card {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
    background: #ffffff;
    border: 1px solid #e4ece8;
    border-radius: 12px;
    padding: 7px;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}
.odv-st__card b,
.odv-st__card small {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
.odv-st__card em {
    margin-top: auto !important;
    align-self: flex-start !important;
}
.odv-st__card:hover {
    transform: translateY(-2px);
    border-color: #114639;
    box-shadow: 0 8px 20px rgba(17, 70, 57, 0.09);
}
.odv-st__card-img {
    border-radius: 8px;
}
.odv-st__card-img:after {
    background: #E2F11E;
    color: #114639;
    border: 1.5px solid #114639;
    font-weight: 800;
}
.odv-st__card b {
    color: #114639;
    font-weight: 700;
    margin-top: 6px;
}
.odv-st__card em {
    display: inline-block;
    background: #eef5f2;
    color: #114639;
    font-weight: 700;
    font-size: 11.5px;
    padding: 2px 7px;
    border-radius: 6px;
    margin-top: 3px;
}

/* Düzenleme Çekmecesinde "Tümünü Eşitle" Butonları */
.odv-st__lbl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.odv-st__sync {
    border: 1px solid #114639;
    background: #eef5f2;
    color: #114639;
    border-radius: 999px;
    padding: 3px 9px;
    font-size: 11px;
    font-weight: 700;
    text-transform: none;
    letter-spacing: 0;
    cursor: pointer;
    transition: all 0.15s ease;
}
.odv-st__sync:hover {
    background: #114639;
    color: #E2F11E;
}

/* 3. Sahne Üst Araç Çubuğu, Otomatik Kombin & Hızlı Çerçeve Seçici
      ÖNEMLİ: flex-shrink: 0 !important ile hiçbir buton mobilde büzüşmez / üst üste binmez! */
.odv-st__tools {
    top: 14px;
    left: 14px;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(17, 70, 57, 0.12);
    box-shadow: 0 6px 20px rgba(17, 70, 57, 0.10);
    padding: 4px 7px;
    gap: 4px;
    flex-wrap: nowrap;
}
.odv-st__tools > *,
.odv-st__tools button,
.odv-st__tools i {
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
}
.odv-st__tools button {
    width: auto !important;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.odv-st__tools button.is-on {
    background: #114639;
    color: #E2F11E;
    font-weight: 700;
}
.odv-st__magicbtn {
    background: #E2F11E !important;
    color: #114639 !important;
    border: 1.5px solid #114639 !important;
    font-weight: 800 !important;
    padding: 0 12px !important;
    height: 32px !important;
    width: auto !important;
    flex: 0 0 auto !important;
}
.odv-st__magicbtn:hover {
    background: #114639 !important;
    color: #E2F11E !important;
}
.odv-st__qframes {
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    padding: 0 3px;
    flex: 0 0 auto !important;
}
.odv-st__tools button.odv-st__qf {
    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    border: 1.5px solid rgba(17, 70, 57, 0.30) !important;
    cursor: pointer;
    position: relative;
    transition: transform 0.15s ease;
    flex: 0 0 21px !important;
}
.odv-st__tools button.odv-st__qf:hover {
    transform: scale(1.15);
}
.odv-st__qf.qf-black { background: #1c1b1a !important; }
.odv-st__qf.qf-white { background: #f5f3ef !important; }
.odv-st__qf.qf-wood  { background: repeating-linear-gradient(115deg, rgba(216,148,72,0) 0 2px, rgba(216,148,72,.26) 2px 3.2px, rgba(216,148,72,0) 3.2px 5.5px), linear-gradient(135deg, #ffedd4, #f8dbb0 55%, #efc68e) !important; }
.odv-st__tools button.odv-st__qf.is-active-qf { box-shadow: 0 0 0 2px #ffffff, 0 0 0 3.5px #114639 !important; transform: scale(1.12); }
.odv-st__qf.qf-none  { background: #ffffff !important; }
.odv-st__qf.qf-none::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 3px;
    bottom: 3px;
    width: 1.5px;
    background: #b3261e;
    transform: rotate(45deg);
}

.odv-st__stagezoom {
    display: none;
}

/* 4. Masaüstünde Alt-Orta Yatay Mekan Seçici (Sahneyi Asla Kapatmaz) */
@media (min-width: 900px) {
    .odv-st__rooms {
        top: auto;
        right: auto;
        left: 50%;
        bottom: 16px;
        transform: translateX(-50%);
        flex-direction: row;
        align-items: center;
        gap: 8px;
        padding: 6px 10px;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.95);
        backdrop-filter: blur(10px);
        border: 1px solid rgba(17, 70, 57, 0.14);
        box-shadow: 0 8px 26px rgba(17, 70, 57, 0.14);
        max-height: none;
        max-width: calc(100% - 32px);
        overflow-x: auto;
        overflow-y: hidden;
    }
    .odv-st__rtoggle {
        width: auto;
        height: 36px;
        padding: 0 10px;
        color: #114639;
        font-weight: 700;
        font-size: 12px;
    }
    .odv-st__rtoggle svg {
        transform: rotate(90deg);
    }
    .odv-st__rooms.is-closed .odv-st__rtoggle svg {
        transform: rotate(-90deg);
    }
    .odv-st__rb {
        width: 58px;
        height: 42px;
        border-radius: 999px;
    }
    .odv-st__rb.is-on {
        outline: 2.5px solid #114639;
        box-shadow: 0 0 0 2px #E2F11E;
    }
    .odv-st__colors {
        top: auto;
        right: auto;
        left: 50%;
        bottom: 74px;
        transform: translateX(-50%);
    }
    .odv-st__dims {
        left: auto;
        right: 16px;
        bottom: auto;
        top: 16px;
        background: rgba(255, 255, 255, 0.95);
        border: 1px solid rgba(17, 70, 57, 0.12);
        font-weight: 600;
    }
    .odv-st__toast {
        bottom: 78px;
    }
}

/* 5. Boş Duvar Karşılama Kartı */
.odv-st__empty {
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(17, 70, 57, 0.15);
    border-radius: 18px;
    padding: 20px 24px;
    box-shadow: 0 12px 32px rgba(17, 70, 57, 0.12);
}
.odv-st__empty b {
    color: #114639;
    font-size: 18px;
    font-weight: 800;
}
.odv-st__empty-btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 4px;
}
.odv-st__btn--lime {
    background: #E2F11E !important;
    color: #114639 !important;
    border: 1.5px solid #114639 !important;
    font-weight: 800;
    padding: 10px 18px;
}
.odv-st__btn--lime:hover {
    background: #114639 !important;
    color: #E2F11E !important;
}
.odv-st__empty .odv-st__btn--ghost {
    background: #114639;
    color: #ffffff !important;
    border-color: #114639;
    font-weight: 700;
    padding: 10px 18px;
}
.odv-st__empty .odv-st__btn--ghost:hover {
    background: #0d352b;
}

/* 6. Alt Özet & Sepete Ekle Barı */
.odv-st__bar {
    background: #ffffff;
    border-top: 1px solid #dde6e2;
    padding: 12px 24px;
}
.odv-st__count {
    color: #114639;
    font-weight: 700;
}
.odv-st__now {
    color: #114639;
    font-size: 21px;
    font-weight: 800;
}
.odv-st__off {
    background: #E2F11E;
    color: #114639;
    border: 1px solid #114639;
    font-weight: 800;
    padding: 3px 9px;
    border-radius: 999px;
}
.odv-st__ship {
    color: #114639;
    font-weight: 600;
}
.odv-st__arbtn {
    border: 1.5px solid #114639;
    color: #114639 !important;
    font-weight: 700;
    padding: 13px 20px;
}
.odv-st__arbtn:hover {
    background: #f3f7f5;
}
.odv-st__cta {
    background: #114639 !important;
    color: #E2F11E !important;
    font-weight: 800;
    padding: 15px 32px;
    border-radius: 999px;
    box-shadow: 0 6px 18px rgba(17, 70, 57, 0.20);
}
.odv-st__cta:hover:not(:disabled) {
    background: #0d352b !important;
}

/* 7. MOBİL DENEYİM — Sabit Sahne + Kaydırılabilir Katalog (Sayfa Zıplaması Yok!) */
@media (max-width: 899px) {
    body.odv-st-app {
        overflow: hidden !important;
        height: 100dvh;
    }
    .odv-st-shell {
        height: 100dvh;
        max-height: 100dvh;
        overflow: hidden;
        display: flex;
        flex-direction: column;
    }
    .odv-st-top {
        height: 48px;
        padding: 0 12px;
        gap: 8px;
        flex: none;
    }
    .odv-st-top__brand img {
        height: 24px;
    }
    .odv-st-top__badge {
        font-size: 9.5px;
        padding: 3px 7px;
    }
    .odv-st-steps {
        display: none;
    }
    .odv-st-top__back {
        padding: 5px 10px;
        font-size: 11.5px;
    }
    .odv-st-top__cart {
        width: 34px;
        height: 34px;
    }

    /* 3 Katmanlı Mobil Uygulama Düzeni */
    .odv-st {
        flex: 1;
        min-height: 0;
        height: auto;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }
    .odv-st__main {
        order: 1;
        height: 38dvh;
        min-height: 235px;
        max-height: 340px;
        flex: none;
        transition: height 0.22s ease;
    }
    .odv-st.is-stage-lg .odv-st__main {
        height: 55dvh;
        max-height: 500px;
    }
    .odv-st__side {
        order: 2;
        flex: 1;
        min-height: 0;
        display: flex;
        flex-direction: column;
        overflow: hidden;
        border-right: 0;
        border-top: 1px solid #dde6e2;
    }
    .odv-st__lib {
        flex: 1;
        min-height: 0;
        height: 100%;
        display: flex;
        flex-direction: column;
        overflow: hidden;
    }
    .odv-st__libhead {
        padding: 8px 10px 6px;
        gap: 6px;
        flex: none;
    }
    .odv-st__libtitle {
        display: none;
    }
    .odv-st__filter-row {
        grid-template-columns: 1.2fr 1fr;
        gap: 6px;
    }
    .odv-st__search {
        padding: 0 9px;
        border-radius: 8px;
    }
    .odv-st__search input {
        padding: 6px 0 !important;
        font-size: 12.5px !important;
    }
    .odv-st__filters {
        grid-template-columns: 1fr;
    }
    .odv-st__sort {
        display: none;
    }
    .odv-st__filters select {
        padding: 6px 24px 6px 9px;
        font-size: 12px;
        border-radius: 8px;
    }
    .odv-st__qcat {
        padding: 4px 10px;
        font-size: 11px;
    }
    .odv-st__scroll {
        flex: 1;
        min-height: 0;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        padding: 8px 10px 18px;
    }
    .odv-st__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px 8px;
    }
    .odv-st__card {
        padding: 5px;
        border-radius: 10px;
    }
    .odv-st__card b {
        font-size: 11.5px;
        margin-top: 4px;
    }
    .odv-st__card small {
        font-size: 10.5px;
    }
    .odv-st__card em {
        font-size: 10.5px;
        padding: 1px 5px;
    }

    /* Sahne Üst Araç Çubuğu — Mobilde Büzüşme Yok, Net Hap Butonlar! */
    .odv-st__tools {
        top: 8px;
        left: 8px;
        max-width: calc(100% - 92px);
        padding: 4px 6px;
        gap: 4px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .odv-st__tools button {
        flex: 0 0 auto !important;
        width: auto !important;
        height: 29px !important;
        min-width: 29px !important;
        padding: 0 7px !important;
        font-size: 11.5px !important;
    }
    .odv-st__tools button span {
        display: none !important;
    }
    .odv-st__tools button[data-act="tpl"] {
        background: #f3f7f5 !important;
        border: 1px solid #d5e2dc !important;
        padding: 0 9px !important;
    }
    .odv-st__tools button[data-act="tpl"] span,
    .odv-st__tools button.odv-st__magicbtn span {
        display: inline !important;
        font-weight: 800 !important;
        font-size: 11px !important;
        line-height: 1 !important;
    }
    .odv-st__tools button.odv-st__magicbtn {
        background: #E2F11E !important;
        color: #114639 !important;
        border: 1.5px solid #114639 !important;
        padding: 0 10px !important;
        height: 29px !important;
        border-radius: 999px !important;
    }
    /* Mobilde kalabalık yapan ikincil ikonları gizle ki ana araçlar tek bakışta sığsın */
    .odv-st__tools [data-act="snap"],
    .odv-st__tools [data-act="redo"],
    .odv-st__tools [data-act="hide"] {
        display: none !important;
    }
    .odv-st__tools button.odv-st__qf {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;
        flex: 0 0 19px !important;
        padding: 0 !important;
    }

    /* Mobilde Sahne Büyüt/Küçült Butonu (Sağ Üst) */
    .odv-st__stagezoom {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 8px;
        right: 8px;
        z-index: 10;
        height: 35px;
        padding: 0 10px;
        border-radius: 999px;
        border: 1px solid rgba(17, 70, 57, 0.16);
        background: rgba(255, 255, 255, 0.96);
        color: #114639;
        font-size: 11.5px;
        font-weight: 800;
        box-shadow: 0 4px 12px rgba(17, 70, 57, 0.12);
        cursor: pointer;
    }

    /* Mobilde Mekan Seçici: Sol-Altta Yatay Şerit (Duvarı Asla Kapatmaz) */
    .odv-st__rooms {
        top: auto;
        right: auto;
        left: 8px;
        bottom: 8px;
        flex-direction: row;
        align-items: center;
        gap: 6px;
        padding: 4px 6px;
        border-radius: 999px;
        max-height: none;
        max-width: calc(100% - 16px);
        overflow-x: auto;
        overflow-y: hidden;
        background: rgba(255, 255, 255, 0.95);
        box-shadow: 0 4px 14px rgba(17, 70, 57, 0.16);
    }
    .odv-st__rtoggle {
        width: auto;
        height: 28px;
        padding: 0 8px;
        color: #114639;
        font-weight: 800;
        font-size: 11.5px;
    }
    .odv-st__rb {
        width: 46px;
        height: 32px;
        border-radius: 999px;
    }
    .odv-st__colors {
        top: auto;
        right: auto;
        left: 8px;
        bottom: 52px;
    }

    /* Boş Duvar Kartı (Mobil Kompakt) */
    .odv-st__empty {
        padding: 12px 16px;
        border-radius: 14px;
        gap: 5px;
        width: calc(100% - 28px);
        max-width: 330px;
    }
    .odv-st__empty b {
        font-size: 15px;
    }
    .odv-st__empty span {
        font-size: 11.5px;
        line-height: 1.35;
    }
    .odv-st__empty .odv-st__btn {
        padding: 7px 12px;
        font-size: 11.5px;
    }

    /* Mobilde Alt Bar (Sepet + 3D/AR Yan Yana) */
    .odv-st__arpill {
        display: none !important;
    }
    .odv-st__bar {
        order: 3;
        flex: none;
        position: relative;
        top: auto;
        padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
        border-top: 1px solid #dde6e2;
        border-bottom: 0;
        box-shadow: 0 -4px 16px rgba(17, 70, 57, 0.08);
        gap: 8px;
    }
    .odv-st__now {
        font-size: 17px;
    }
    .odv-st__off {
        font-size: 10px;
        padding: 2px 6px;
    }
    .odv-st__ship {
        font-size: 10.5px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 190px;
    }
    .odv-st__acts2 {
        gap: 6px;
    }
    .odv-st__arbtn {
        display: inline-flex;
        padding: 10px 11px;
        font-size: 12px;
        gap: 5px;
    }
    .odv-st__arbtn svg {
        width: 15px;
        height: 15px;
    }
    .odv-st__cta {
        padding: 11px 16px;
        font-size: 12px;
    }
}

/* Mobil Klavye Açıldığında Sahneyi Otomatik Daralt */
@media (max-width: 899px) and (max-height: 560px) {
    .odv-st__main {
        height: 22dvh !important;
        min-height: 130px !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════════════
   v3.1 — oDuvar ÖZGÜN BENTO ESER & ÇERÇEVE DÜZENLEYİCİ + MOBİL ALT BAR DÜZELTMESİ
   ═══════════════════════════════════════════════════════════════════════════ */

.odv-st__edit {
    padding: 14px 16px 22px !important;
    background: #f8fbf9 !important;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* 1. Üst Navigasyon & Hızlı Aksiyonlar */
.odv-ep-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.odv-ep-back {
    border: 1px solid #cfe0d8 !important;
    background: #ffffff !important;
    color: #114639 !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}
.odv-ep-back:hover {
    background: #114639 !important;
    color: #E2F11E !important;
    border-color: #114639 !important;
}
.odv-ep-qacts {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}
.odv-ep-qbtn {
    border: 1px solid #d8e4de !important;
    background: #ffffff !important;
    color: #114639 !important;
    border-radius: 8px !important;
    padding: 5px 9px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}
.odv-ep-qbtn:hover {
    border-color: #114639 !important;
    background: #eef5f2 !important;
}
.odv-ep-qbtn.is-del {
    color: #b3261e !important;
    border-color: #f1d3d1 !important;
    background: #fff8f7 !important;
}
.odv-ep-qbtn.is-del:hover {
    background: #b3261e !important;
    color: #ffffff !important;
}

/* 2. Eser Özet & Canlı Fiyat Bento Kartı */
.odv-ep-hero {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f8fbf9;
    border: 1px solid #e2ece8;
    border-radius: 12px;
    padding: 10px 12px;
}
.odv-ep-thumb {
    width: 48px;
    height: 62px;
    box-sizing: content-box !important;
    flex-shrink: 0;
    border-radius: 2px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.12);
    position: relative;
}
.odv-ep-thumb .odv-st__clip {
    position: relative !important;
    display: block !important;
    width: 48px !important;
    height: 62px !important;
    overflow: hidden !important;
}
.odv-ep-thumb .odv-st__clip img {
    position: absolute !important;
    max-width: none !important;
    display: block !important;
}
.odv-ep-thumb.is-fr-black {
    border: 3px solid #1c1d1c;
}
.odv-ep-thumb.is-fr-wood {
    border: 3px solid #e1be90;
}
.odv-ep-thumb.is-fr-white {
    border: 3px solid #ffffff;
    outline: 1px solid #d5e0dc;
}
.odv-ep-thumb.is-fr-none {
    border: 0;
}
.odv-ep-meta {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.odv-ep-meta-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}
.odv-ep-coll {
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #114639;
    background: #e2ece9;
    padding: 2px 7px;
    border-radius: 999px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-ep-ext {
    font-size: 11px;
    font-weight: 700;
    color: #526b63 !important;
    text-decoration: none !important;
    white-space: nowrap;
}
.odv-ep-ext:hover {
    color: #114639 !important;
    text-decoration: underline !important;
}
.odv-ep-title {
    font-size: 14px;
    font-weight: 800;
    color: #114639;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-ep-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 2px;
}
.odv-ep-price del {
    font-size: 12.5px;
    color: #7c9089;
    font-weight: 600;
}
.odv-ep-price strong {
    font-size: 16px;
    font-weight: 800;
    color: #114639;
}
.odv-ep-pbadge {
    font-size: 10px;
    font-weight: 800;
    background: #ffffff;
    color: #114639;
    border: 1px solid #cfe0d8;
    padding: 2px 7px;
    border-radius: 999px;
    white-space: nowrap;
}
.odv-ep-pbadge.is-lime {
    background: #E2F11E;
    color: #114639;
    border-color: #114639;
}

/* 3. Bölüm Kutuları (Çerçeve Modeli & Tablo Ölçüsü) */
.odv-ep-sec {
    background: #ffffff;
    border: 1px solid #dde6e2;
    border-radius: 13px;
    padding: 11px 12px;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.odv-ep-sechead {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    color: #526b63;
    letter-spacing: 0.04em;
}
.odv-ep-sechead b {
    color: #114639;
    font-weight: 800;
}
.odv-ep-sync {
    border: 1px solid #114639 !important;
    background: #E2F11E !important;
    color: #114639 !important;
    border-radius: 999px !important;
    padding: 3px 9px !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}
.odv-ep-sync:hover {
    background: #114639 !important;
    color: #E2F11E !important;
}

/* 2x2 Çerçeve Modeli Kartları */
.odv-ep-fgrid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
.odv-ep-fcard {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    border: 1.5px solid #e2ebe7 !important;
    background: #f9fbfa !important;
    cursor: pointer;
    text-align: left;
    transition: all 0.15s ease;
}
.odv-ep-fcard:hover {
    border-color: #114639 !important;
    background: #f1f6f4 !important;
}
.odv-ep-fcard.is-on {
    border-color: #114639 !important;
    background: #114639 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(17, 70, 57, 0.18);
}
.odv-ep-fswatch {
    width: 26px;
    height: 26px;
    border-radius: 7px;
    flex-shrink: 0;
    position: relative;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.15);
}
.odv-ep-fswatch.k-black {
    background: #1c1b1a;
    border: 1.5px solid rgba(255, 255, 255, 0.35);
}
.odv-ep-fswatch.k-wood {
    background: repeating-linear-gradient(100deg, rgba(216,148,72,0) 0 2px, rgba(216,148,72,.26) 2px 3.2px, rgba(216,148,72,0) 3.2px 5.5px), linear-gradient(135deg, #ffedd4, #f8dbb0 55%, #efc68e);
    border: 1.5px solid rgba(196, 138, 71, 0.45);
}
.odv-ep-fswatch.k-white {
    background: #f5f3ef;
    border: 1.5px solid #cbd5d0;
}
.odv-ep-fswatch.k-none {
    background: #ffffff;
    border: 1.5px dashed #94a3b8;
}
.odv-ep-fswatch.k-none::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 4px;
    bottom: 4px;
    width: 1.5px;
    background: #b3261e;
    transform: rotate(45deg);
}
.odv-ep-ftxt {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.2;
}
.odv-ep-ftxt b {
    font-size: 12.5px;
    font-weight: 800;
    color: inherit;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-ep-ftxt small {
    font-size: 10px;
    color: #647c74;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-ep-fcard.is-on .odv-ep-ftxt small {
    color: #E2F11E;
}

/* Fiyatlı Ölçü Kartları */
.odv-ep-sgrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}
.odv-ep-scard {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 6px !important;
    border-radius: 10px !important;
    border: 1.5px solid #e2ebe7 !important;
    background: #f9fbfa !important;
    cursor: pointer;
    transition: all 0.15s ease;
}
.odv-ep-scard:hover:not(:disabled) {
    border-color: #114639 !important;
    background: #f1f6f4 !important;
}
.odv-ep-scard.is-on {
    border-color: #114639 !important;
    background: #114639 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(17, 70, 57, 0.16);
}
.odv-ep-scard b {
    font-size: 12px;
    font-weight: 800;
    color: inherit;
}
.odv-ep-scard small {
    font-size: 10.5px;
    font-weight: 700;
    color: #526b63;
}
.odv-ep-scard.is-on small {
    color: #E2F11E;
}

/* Alt Kalite Güvence Şeridi */
.odv-ep-guar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 10px;
    border-radius: 10px;
    background: #e9f2ee;
    color: #114639;
    font-size: 11px;
    font-weight: 700;
}

/* MOBİLDE ALT ÖZET BARI VE DÜZENLEME PANELİ İYİLEŞTİRMELERİ */
@media (max-width: 899px) {
    .odv-st__edit {
        position: fixed !important;
        inset: auto 0 0 0 !important;
        max-height: 56dvh !important;
        border-radius: 18px 18px 0 0 !important;
        box-shadow: 0 -12px 40px rgba(17, 70, 57, 0.24) !important;
        z-index: 100000 !important;
        padding: 12px 12px calc(14px + env(safe-area-inset-bottom)) !important;
        gap: 9px !important;
    }
    .odv-ep-hero {
        padding: 8px 10px;
        gap: 10px;
    }
    .odv-ep-thumb {
        width: 42px;
        height: 52px;
    }
    .odv-ep-sec {
        padding: 9px 10px;
        gap: 7px;
    }
    .odv-ep-fgrid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 5px;
    }
    .odv-ep-fcard {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 6px 4px !important;
        gap: 4px;
    }
    .odv-ep-fswatch {
        width: 22px;
        height: 22px;
    }
    .odv-ep-ftxt b {
        font-size: 11px;
    }
    .odv-ep-ftxt small {
        display: none;
    }
    .odv-ep-sgrid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 5px;
    }
    .odv-ep-scard {
        padding: 6px 2px !important;
    }
    .odv-ep-scard b {
        font-size: 11px;
    }
    .odv-ep-scard small {
        font-size: 9.5px;
    }
    .odv-ep-guar {
        display: none;
    }

    /* Mobil Alt Özet Barı: Üst Üste Binme Kesin Çözümü + Çizili Eski Fiyat Gösterimi */
    .odv-st__bar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
        padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
    }
    .odv-st__sum {
        flex: 1 1 0% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        gap: 1px !important;
    }
    .odv-st__total {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 5px !important;
    }
    .odv-st__was {
        display: inline !important;
        font-size: 12.5px !important;
        color: #7c9089 !important;
        text-decoration: line-through !important;
        font-weight: 600 !important;
    }
    .odv-st__was:empty {
        display: none !important;
    }
    .odv-st__now {
        font-size: 16.5px !important;
        font-weight: 800 !important;
    }
    .odv-st__off {
        font-size: 9.5px !important;
        padding: 2px 6px !important;
        max-width: 100% !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    .odv-st__ship {
        font-size: 10.5px !important;
        max-width: 100% !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    .odv-st__acts2 {
        flex: 0 0 auto !important;
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
    }
    .odv-st__arbtn {
        padding: 9px 10px !important;
        font-size: 11.5px !important;
        gap: 4px !important;
    }
    .odv-st__arbtn span {
        font-size: 11px !important;
    }
    .odv-st__cta {
        padding: 10px 14px !important;
        font-size: 11.5px !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════════════
   v3.3 — oDuvar ÖZGÜN ETİKETLİ SAHNE SEÇİCİ DOCK & DUVAR BOYASI KARTELASI
   ═══════════════════════════════════════════════════════════════════════════ */

.odv-st__rooms {
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(12px) !important;
    border: 1.5px solid rgba(17, 70, 57, 0.18) !important;
    box-shadow: 0 10px 28px rgba(17, 70, 57, 0.16) !important;
    padding: 6px 8px !important;
    gap: 7px !important;
}

.odv-st__rtoggle {
    background: #114639 !important;
    color: #E2F11E !important;
    border-radius: 10px !important;
    padding: 0 11px !important;
    height: 48px !important;
    width: auto !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    gap: 5px !important;
    flex-shrink: 0 !important;
}

.odv-st__rooms.is-closed {
    padding: 4px !important;
    border-radius: 12px !important;
}
.odv-st__rooms.is-closed .odv-st__rtoggle {
    height: 36px !important;
    padding: 0 12px !important;
}

.odv-st__rb {
    width: 78px !important;
    height: 50px !important;
    border-radius: 10px !important;
    border: 1.5px solid rgba(17, 70, 57, 0.16) !important;
    outline: none !important;
    position: relative !important;
    overflow: hidden !important;
    flex: 0 0 auto !important;
    transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease !important;
}
.odv-st__rb:hover {
    transform: translateY(-1px);
    border-color: #114639 !important;
}
.odv-st__rb.is-on {
    border: 2px solid #114639 !important;
    box-shadow: 0 0 0 2px #E2F11E, 0 4px 10px rgba(17, 70, 57, 0.18) !important;
}

.odv-st__rlbl {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(180deg, rgba(17, 70, 57, 0) 0%, rgba(12, 46, 38, 0.88) 45%, rgba(12, 46, 38, 0.96) 100%) !important;
    color: #ffffff !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    padding: 6px 3px 3px !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    letter-spacing: 0.01em !important;
}
.odv-st__rb.is-on .odv-st__rlbl {
    color: #E2F11E !important;
    font-weight: 800 !important;
}

/* Boya Rengi Kartı İkonu */
.odv-st__rpal {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    margin-bottom: 10px;
    background: conic-gradient(#E2ECE9 0 60deg, #CEDDF0 60deg 120deg, #F1D6D2 120deg 180deg, #F5E4B0 180deg 240deg, #E5BFA8 240deg 300deg, #114639 300deg 360deg);
    border: 1.5px solid #ffffff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.18);
    display: block;
}

/* Foto Yükle Kartı */
.odv-st__rb.is-up {
    background: #f3f7f5 !important;
    border: 1.5px dashed #114639 !important;
    color: #114639 !important;
    justify-content: flex-start !important;
    padding-top: 6px !important;
}
.odv-st__rb.is-up svg {
    width: 17px !important;
    height: 17px !important;
    stroke: #114639 !important;
}

/* Duvar Boyası Kartelası Barı (.odv-st__colors) */
.odv-st__colors {
    align-items: center !important;
    gap: 6px !important;
    background: rgba(255, 255, 255, 0.97) !important;
    backdrop-filter: blur(12px) !important;
    border: 1.5px solid rgba(17, 70, 57, 0.18) !important;
    border-radius: 12px !important;
    padding: 6px 10px !important;
    box-shadow: 0 8px 24px rgba(17, 70, 57, 0.15) !important;
    max-width: calc(100% - 24px) !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
}
.odv-st__colors::-webkit-scrollbar {
    display: none;
}
.odv-st__clbl {
    font-size: 11px;
    font-weight: 800;
    color: #114639;
    white-space: nowrap;
    margin-right: 2px;
}
.odv-st__colors button {
    width: 24px !important;
    height: 24px !important;
    border-radius: 7px !important;
    flex: 0 0 24px !important;
    border: 1.5px solid rgba(17, 70, 57, 0.22) !important;
    outline: none !important;
    transition: transform 0.15s ease !important;
}
.odv-st__colors button:hover {
    transform: scale(1.1);
}
.odv-st__colors button.is-on {
    border: 2px solid #114639 !important;
    box-shadow: 0 0 0 2px #E2F11E !important;
    transform: scale(1.08);
}

@media (max-width: 899px) {
    .odv-st__rooms {
        padding: 4px 6px !important;
        gap: 5px !important;
        border-radius: 12px !important;
    }
    .odv-st__rtoggle {
        height: 40px !important;
        padding: 0 9px !important;
        font-size: 11px !important;
    }
    .odv-st__rooms.is-closed .odv-st__rtoggle {
        height: 30px !important;
        padding: 0 10px !important;
    }
    .odv-st__rb {
        width: 64px !important;
        height: 42px !important;
        border-radius: 8px !important;
    }
    .odv-st__rlbl {
        font-size: 8.5px !important;
        padding: 4px 2px 2px !important;
    }
    .odv-st__rpal {
        width: 15px;
        height: 15px;
        margin-bottom: 8px;
    }
    .odv-st__colors {
        bottom: 58px !important;
        padding: 5px 8px !important;
    }
    .odv-st__clbl {
        display: none;
    }
    .odv-st__colors button {
        width: 22px !important;
        height: 22px !important;
        flex: 0 0 22px !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════════════
   v3.4 — oDuvar MİMARİ GALERİ ŞABLONLARI REHBERİ & 3D/AR STÜDYO PENCERESİ
   ═══════════════════════════════════════════════════════════════════════════ */

/* 1. Galeri Dizilim Rehberi (.odv-st__tpl) */
.odv-st__tpl {
    position: absolute;
    top: 56px;
    left: 14px;
    z-index: 25;
    width: min(440px, calc(100% - 28px)) !important;
    max-height: min(390px, calc(100% - 72px));
    overflow-y: auto;
    background: #ffffff !important;
    border: 1.5px solid #114639 !important;
    border-radius: 14px !important;
    padding: 11px 12px !important;
    box-shadow: 0 16px 40px rgba(17, 70, 57, 0.22) !important;
}
.odv-tpl-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e4ece8;
    margin-bottom: 8px;
}
.odv-tpl-head strong {
    display: block;
    font-size: 13.5px;
    font-weight: 800;
    color: #114639;
}
.odv-tpl-head span {
    display: block;
    font-size: 11px;
    color: #526b63;
    margin-top: 1px;
}
.odv-tpl-close {
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;
    border: 1px solid #d5e2dc !important;
    background: #f3f7f5 !important;
    color: #114639 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    flex-shrink: 0;
}
.odv-tpl-close:hover {
    background: #114639 !important;
    color: #E2F11E !important;
}
.odv-tpl-tabs {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 9px;
    overflow-x: auto;
    scrollbar-width: none;
}
.odv-tpl-tabs::-webkit-scrollbar {
    display: none;
}
.odv-tpl-tab {
    flex: 0 0 auto;
    border: 1px solid #d5e2dc !important;
    background: #f3f7f5 !important;
    color: #114639 !important;
    border-radius: 999px !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    cursor: pointer;
    transition: all 0.15s ease;
}
.odv-tpl-tab.is-on {
    background: #114639 !important;
    color: #E2F11E !important;
    border-color: #114639 !important;
}
.odv-st__tplg {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 7px !important;
}
.odv-st__tplb {
    position: relative;
    border: 1.5px solid #e1ebe6 !important;
    background: #f9fbfa !important;
    border-radius: 10px !important;
    padding: 6px 4px 5px !important;
    cursor: pointer;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
    transition: all 0.16s ease !important;
    text-align: center !important;
}
.odv-st__tplb[hidden] {
    display: none !important;
}
.odv-st__tplb:hover {
    border-color: #114639 !important;
    background: #eef5f2 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(17, 70, 57, 0.10);
}
.odv-tpl-cnt {
    align-self: flex-end;
    background: #114639;
    color: #E2F11E;
    font-size: 8px;
    font-weight: 800;
    padding: 1px 5px;
    border-radius: 999px;
    line-height: 1.2;
}
.odv-tpl-art {
    width: 100%;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 1px 0;
}
.odv-st__tplb svg {
    width: 64px !important;
    height: 36px !important;
}
.odv-st__tplb svg rect {
    fill: revert !important;
}
.odv-st__tplb b {
    font-size: 10px;
    font-weight: 800;
    color: #114639;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}
.odv-st__tplb small {
    font-size: 8.5px;
    font-weight: 600;
    color: #5a746b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

/* 2. oDuvar 3D & AR Canlı Duvar Önizleme Stüdyosu (.odv-st-ar) */
.odv-st-ar {
    background: rgba(11, 38, 31, 0.68) !important;
    backdrop-filter: blur(8px) !important;
    font-family: 'DM Sans', system-ui, -apple-system, sans-serif !important;
}
.odv-st-ar__box {
    width: min(1020px, 100%) !important;
    height: min(650px, 100%) !important;
    border-radius: 20px !important;
    border: 2px solid #114639 !important;
    box-shadow: 0 24px 70px rgba(8, 32, 26, 0.45) !important;
    overflow: hidden !important;
}
.odv-st-ar__h {
    background: #114639 !important;
    color: #ffffff !important;
    padding: 13px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}
.odv-st-ar__htitle {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
.odv-st-ar__hbadge {
    background: #E2F11E;
    color: #114639;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.05em;
    padding: 3px 9px;
    border-radius: 999px;
}
.odv-st-ar__h b {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #ffffff !important;
}
.odv-st-ar__dim {
    background: rgba(255, 255, 255, 0.14);
    color: #E2F11E !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 3px 10px;
    border-radius: 999px;
}
.odv-st-ar__x {
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
    transition: all 0.15s ease;
}
.odv-st-ar__x:hover {
    background: #E2F11E !important;
    color: #114639 !important;
}
.odv-st-ar__body {
    grid-template-columns: minmax(0, 1fr) 330px !important;
}
.odv-st-ar__view {
    background: radial-gradient(circle at 50% 42%, #f8fbf9 0%, #dcebe5 100%) !important;
}
.odv-st-ar__angles {
    position: absolute;
    top: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(8px);
    padding: 4px 6px;
    border-radius: 999px;
    border: 1px solid rgba(17, 70, 57, 0.15);
    box-shadow: 0 4px 14px rgba(17, 70, 57, 0.10);
}
.odv-st-ar__ang {
    border: 0;
    background: transparent;
    color: #114639;
    font-size: 11.5px;
    font-weight: 700;
    padding: 5px 11px;
    border-radius: 999px;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}
.odv-st-ar__ang:hover {
    background: #eef5f2;
}
.odv-st-ar__ang.is-on {
    background: #114639;
    color: #E2F11E;
}
.odv-st-ar__hint3d {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 4;
    background: rgba(17, 70, 57, 0.86);
    color: #ffffff;
    font-size: 11.5px;
    font-weight: 600;
    padding: 5px 14px;
    border-radius: 999px;
    white-space: nowrap;
    pointer-events: none;
}
.odv-st-ar__side {
    background: #f4f8f6 !important;
    border-left: 1px solid #d8e4de !important;
    padding: 18px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.odv-st-ar__card {
    background: #ffffff;
    border: 1.5px solid #cfe0d8;
    border-radius: 16px;
    padding: 16px;
    box-shadow: 0 6px 20px rgba(17, 70, 57, 0.06);
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.odv-st-ar__tag {
    align-self: flex-start;
    background: #e2ece9;
    color: #114639;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    padding: 3px 8px;
    border-radius: 999px;
}
.odv-st-ar__card h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 800;
    color: #114639;
}
.odv-st-ar__steps {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.odv-st-ar__steps > div {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #2f4d43;
}
.odv-st-ar__steps b {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #114639;
    color: #E2F11E;
    font-size: 11px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.odv-st-ar__qrwrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    background: #f8fbf9;
    border: 1.5px dashed #114639;
    border-radius: 14px;
    padding: 12px;
    margin: 2px 0;
}
.odv-st-ar__qr {
    width: 168px !important;
    height: 168px !important;
    margin: 0 !important;
    background: #ffffff;
    padding: 6px;
    border-radius: 10px;
}
.odv-st-ar__qrlbl {
    font-size: 11.5px;
    font-weight: 800;
    color: #114639;
}
.odv-st-ar__specs {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    color: #526b63;
}
.odv-st-ar__go {
    background: #114639 !important;
    color: #E2F11E !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    padding: 14px 18px !important;
    border-radius: 999px !important;
    margin-bottom: 0 !important;
    box-shadow: 0 6px 18px rgba(17, 70, 57, 0.22);
}

@media (max-width: 899px) {
    .odv-st__tpl {
        top: 42px !important;
        left: 8px !important;
        width: min(320px, calc(100% - 16px)) !important;
        max-height: 175px !important;
        padding: 7px 9px !important;
        border-radius: 12px !important;
    }
    .odv-tpl-head {
        padding-bottom: 5px !important;
        margin-bottom: 5px !important;
    }
    .odv-tpl-head strong {
        font-size: 11.5px !important;
    }
    .odv-tpl-head span {
        display: none !important;
    }
    .odv-tpl-close {
        width: 22px !important;
        height: 22px !important;
        font-size: 14px !important;
    }
    .odv-tpl-tabs {
        gap: 4px !important;
        margin-bottom: 6px !important;
    }
    .odv-tpl-tab {
        padding: 3px 7px !important;
        font-size: 9.5px !important;
    }
    .odv-st__tplg {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 4px !important;
    }
    .odv-st__tplb {
        padding: 4px 2px 3px !important;
        border-radius: 8px !important;
        gap: 1px !important;
    }
    .odv-tpl-cnt,
    .odv-st__tplb small {
        display: none !important;
    }
    .odv-tpl-art {
        height: 24px !important;
        margin: 0 !important;
    }
    .odv-st__tplb svg {
        width: 44px !important;
        height: 24px !important;
    }
    .odv-st__tplb b {
        font-size: 8.5px !important;
    }
    .odv-st-ar__box {
        border-radius: 0 !important;
        border: 0 !important;
    }
    .odv-st-ar__body {
        grid-template-columns: 1fr !important;
    }
    .odv-st-ar__hint3d {
        display: none;
    }
}


/* ═══════════════════════════════════════════════════════════════════════════
   v3.5 — KOMPAKT ALT BAR (2+ SATIR ÜRÜN GÖRÜNÜMÜ), FAVORİLERİM & KOLEKSİYON KOMBİNLEME
   ═══════════════════════════════════════════════════════════════════════════ */

/* 1. Katalog Kartı Kalp (Favori) Butonu */
.odv-st__card-img {
    position: relative !important;
}
.odv-card-fav {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 3;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(4px);
    border: 1px solid rgba(17, 70, 57, 0.16);
    color: #94a8a0;
    font-size: 13px;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
    transition: transform 0.15s ease, color 0.15s ease, background 0.15s ease;
}
.odv-card-fav:hover {
    transform: scale(1.12);
    color: #e53935;
}
.odv-card-fav.is-on {
    color: #e53935;
    background: #ffffff;
    border-color: rgba(229, 57, 53, 0.35);
}

/* Favorilerim Sekmesi Sayacı */
.odv-st__qcat--fav em {
    font-style: normal;
    background: rgba(17, 70, 57, 0.12);
    color: inherit;
    padding: 1px 5px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    margin-left: 3px;
}
.odv-st__qcat--fav.is-on em {
    background: #E2F11E;
    color: #114639;
}

/* Düzenleme Çekmecesi Favori Butonu */
.odv-ep-favbtn.is-on {
    background: #fff0f0 !important;
    border-color: #f5c2c0 !important;
    color: #c62828 !important;
}

/* 1b. Katalog Kartlarında Tekrarlı Kategori Alt Başlığını Gizle & Üst Başlığı Kompakt Yap */
.odv-st__card small {
    display: none !important;
}
.odv-st__libtitle {
    display: none !important;
}

/* 2. Koleksiyon & Favori Otomatik Kombin Barı (.odv-col-bar) */
.odv-col-bar {
    margin-top: 2px;
}
.odv-cbar-strip {
    display: flex;
    align-items: center;
    gap: 5px;
    overflow-x: auto;
    scrollbar-width: none;
    padding: 2px 0;
}
.odv-cbar-strip::-webkit-scrollbar {
    display: none;
}
.odv-cbar-tag {
    flex: 0 0 auto;
    font-size: 10.5px;
    font-weight: 800;
    color: #114639;
    white-space: nowrap;
}
.odv-cbar-pill {
    flex: 0 0 auto;
    border: 1px solid #c9dcd4 !important;
    background: linear-gradient(135deg, #f5faf8 0%, #e8f3ee 100%) !important;
    color: #114639 !important;
    border-radius: 999px !important;
    padding: 4px 10px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}
.odv-cbar-pill:hover {
    background: #114639 !important;
    color: #E2F11E !important;
    border-color: #114639 !important;
}
.odv-cbar-pill.is-fav {
    background: #fff3f2 !important;
    border-color: #f3c4c2 !important;
    color: #b71c1c !important;
}
.odv-cbar-active {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background: linear-gradient(135deg, #114639 0%, #175949 100%);
    color: #ffffff;
    padding: 6px 10px;
    border-radius: 10px;
}
.odv-cbar-lbl {
    font-size: 11.5px;
    color: #ffffff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-cbar-lbl b {
    color: #E2F11E;
    font-weight: 800;
}
.odv-cbar-hint {
    font-size: 10.5px;
    color: rgba(255, 255, 255, 0.85);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.odv-cbar-btn {
    flex: 0 0 auto;
    background: #E2F11E !important;
    color: #114639 !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 5px 11px !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
    transition: transform 0.14s ease;
}
.odv-cbar-btn:hover {
    transform: scale(1.03);
}

/* 3. Masaüstü & Mobil Ultra-Kompakt Alt Özet Barı (.odv-st__bar) */
.odv-st__bar {
    padding: 7px 14px !important;
}
.odv-st__sum {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 1px !important;
}
.odv-st__countrow {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}
.odv-st__total {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}
.odv-st__ship {
    display: none !important;
}

/* 4. Mobilde Katalogda Aynı Anda 2+ Satır Ürün Görünmesi İçin Kompakt Düzen */
@media (max-width: 899px) {
    .odv-st__main {
        height: 31dvh !important;
        min-height: 185px !important;
        max-height: 250px !important;
    }
    .odv-st.is-stage-lg .odv-st__main {
        height: 50dvh !important;
        max-height: 440px !important;
    }
    .odv-st__libhead {
        padding: 5px 8px 4px !important;
        gap: 4px !important;
    }
    .odv-st__filter-row {
        grid-template-columns: 1fr 125px !important;
        gap: 5px !important;
    }
    .odv-st__search input {
        padding: 4px 0 !important;
        font-size: 12px !important;
    }
    .odv-st__filters select {
        padding: 4px 20px 4px 7px !important;
        font-size: 11px !important;
    }
    .odv-st__qcat {
        padding: 3px 8px !important;
        font-size: 10.5px !important;
    }
    .odv-cbar-pill {
        padding: 3px 8px !important;
        font-size: 10px !important;
    }
    .odv-cbar-active {
        padding: 4px 8px !important;
        border-radius: 8px !important;
    }
    .odv-cbar-btn {
        padding: 4px 9px !important;
        font-size: 10px !important;
    }
    .odv-st__scroll {
        padding: 6px 8px 12px !important;
    }
    .odv-st__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }
    .odv-st__card {
        padding: 4px !important;
        border-radius: 8px !important;
        gap: 1px !important;
    }
    .odv-st__card-img {
        aspect-ratio: 4 / 4.7 !important;
    }
    .odv-card-fav {
        width: 22px !important;
        height: 22px !important;
        font-size: 11.5px !important;
        top: 4px !important;
        right: 4px !important;
    }
    .odv-st__card b {
        font-size: 10.5px !important;
        margin-top: 2px !important;
        line-height: 1.15 !important;
    }
    .odv-st__card small {
        display: none !important;
    }
    .odv-st__card em {
        font-size: 9.5px !important;
        padding: 1px 5px !important;
        margin-top: 1px !important;
    }

    /* Mobil Alt Özet Barı: Tek Satır Kompakt (48px Yükseklik!) */
    .odv-st__bar {
        padding: 5px 10px calc(5px + env(safe-area-inset-bottom)) !important;
        gap: 6px !important;
        min-height: 46px !important;
    }
    .odv-st__cdim {
        display: none !important;
    }
    .odv-st__count {
        font-size: 10.5px !important;
    }
    .odv-st__was {
        font-size: 11px !important;
    }
    .odv-st__now {
        font-size: 15px !important;
    }
    .odv-st__off {
        font-size: 9px !important;
        padding: 1.5px 5px !important;
        white-space: nowrap !important;
    }
    .odv-st__arbtn {
        padding: 7px 9px !important;
        font-size: 11px !important;
        height: 34px !important;
    }
    .odv-st__cta {
        padding: 7px 12px !important;
        font-size: 11px !important;
        height: 34px !important;
        white-space: nowrap !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════════════
   v3.5.2 — ARAMA & KATEGORİ BARI TAŞMA DÜZELTMESİ (MASAÜSTÜ + MOBİL) & SEO SR
   ═══════════════════════════════════════════════════════════════════════════ */

.odv-st__side,
.odv-st__lib,
.odv-st__libhead,
.odv-st__filter-row,
.odv-st__search,
.odv-st__filters,
.odv-st__qcats,
.odv-col-bar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.odv-st__side,
.odv-st__lib,
.odv-st__libhead {
    overflow-x: hidden !important;
}

.odv-st__libhead {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    padding: 10px 12px 8px !important;
}

.odv-st__filter-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

.odv-st__search {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 36px !important;
    padding: 0 11px !important;
    border-radius: 9px !important;
    background: #f3f7f5 !important;
    border: 1px solid #d5e2dc !important;
}

.odv-st__search svg {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
    color: #526b63 !important;
}

.odv-st__search input {
    flex: 1 1 0% !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    height: 100% !important;
    font-size: 12.5px !important;
    color: #114639 !important;
}

.odv-st__filters {
    display: grid !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) !important;
    gap: 6px !important;
    width: 100% !important;
}

.odv-st__filters select {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 34px !important;
    padding: 0 26px 0 10px !important;
    border-radius: 9px !important;
    border: 1px solid #d5e2dc !important;
    background-color: #f3f7f5 !important;
    color: #114639 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

@media (max-width: 899px) {
    .odv-st__libhead {
        padding: 6px 8px 5px !important;
        gap: 5px !important;
    }
    .odv-st__filter-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important;
        gap: 6px !important;
        align-items: center !important;
    }
    .odv-st__search {
        height: 32px !important;
        padding: 0 9px !important;
        border-radius: 8px !important;
    }
    .odv-st__search input {
        font-size: 11.5px !important;
    }
    .odv-st__filters {
        display: block !important;
    }
    .odv-st__filters select.odv-st__sort {
        display: none !important;
    }
    .odv-st__filters select.odv-st__cat {
        height: 32px !important;
        font-size: 11px !important;
        padding: 0 22px 0 8px !important;
        border-radius: 8px !important;
    }
}

/* Googlebot indekslemesi için ekran dışı semantik SEO alanı */
.odv-seo-sr {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* === v3.5.9: Kombini Kaydet (%10 İndirim) Soft Butonu & Modalı === */
.odv-st-top__savebtn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 35px;
	padding: 0 13px;
	border-radius: 999px;
	background: #114639;
	border: 1px solid #114639;
	color: #E2F11E;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	transition: all .18s ease;
}
.odv-st-top__savebtn:hover {
	background: #0c3329;
	color: #ffffff;
}
.odv-lead-modal {
	position: fixed;
	inset: 0;
	z-index: 99999;
	background: rgba(9, 30, 24, 0.72);
	backdrop-filter: blur(5px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.odv-lead-modal[hidden] {
	display: none !important;
}
.odv-lead-card {
	background: #ffffff;
	color: #102a23;
	width: 100%;
	max-width: 430px;
	border-radius: 20px;
	padding: 24px 22px;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
	position: relative;
	font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.odv-lead-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 0;
	background: #eef4f1;
	color: #114639;
	font-size: 18px;
	font-weight: 800;
	cursor: pointer;
}
.odv-lead-badge {
	display: inline-block;
	background: #E2F11E;
	color: #114639;
	font-size: 11px;
	font-weight: 800;
	padding: 4px 10px;
	border-radius: 999px;
	margin-bottom: 8px;
}
.odv-lead-card h2, .odv-lead-card h3 {
	margin: 0 0 6px;
	font-size: 20px;
	font-weight: 800;
	color: #114639;
}
.odv-lead-card p {
	margin: 0 0 14px;
	font-size: 13px;
	color: #4f6961;
	line-height: 1.45;
}
.odv-lead-field {
	margin-bottom: 10px;
}
.odv-lead-field input {
	width: 100% !important;
	height: 44px !important;
	padding: 0 14px !important;
	border-radius: 10px !important;
	border: 1.5px solid #c5d8d0 !important;
	background: #ffffff !important;
	background-color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #133b30 !important;
	box-sizing: border-box !important;
	opacity: 1 !important;
}
.odv-lead-field input::placeholder {
	color: #6e8880 !important;
	opacity: 1 !important;
	font-weight: 500 !important;
}
.odv-lead-field input:focus {
	outline: none;
	border-color: #114639;
}
.odv-lead-submit {
	width: 100%;
	height: 44px;
	border-radius: 999px;
	border: 0;
	background: #114639;
	color: #E2F11E;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	margin-top: 4px;
}
.odv-lead-res {
	margin-top: 14px;
	padding: 12px 14px;
	border-radius: 12px;
	background: #eef7f3;
	border: 1.5px solid #114639;
	text-align: center;
}
.odv-lead-code {
	display: inline-block;
	background: #114639;
	color: #E2F11E;
	font-weight: 800;
	font-size: 16px;
	letter-spacing: 0.08em;
	padding: 5px 14px;
	border-radius: 8px;
	margin: 6px 0;
}
.odv-lead-wa {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	margin-top: 8px;
	padding: 9px 14px;
	border-radius: 999px;
	background: #25D366;
	color: #fff !important;
	font-weight: 800;
	font-size: 13px;
	text-decoration: none;
	box-sizing: border-box;
}
@media (max-width: 600px) {
	.odv-st-top__savebtn span.hide-mob {
		display: none;
	}
	.odv-st-top__savebtn {
		padding: 0 10px;
		font-size: 11.5px;
	}
}



/* Duvarda Gör Demo: Boyut & Ölçek Rehberi + Yönlendirme Kartı */
.odv-ep-scale-guide {
    margin-top: 10px;
    padding: 10px 12px;
    background: #f4f9f6;
    border: 1.5px solid #c2d8cf;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    cursor: pointer;
    transition: all 0.16s ease;
}
.odv-ep-scale-guide:hover {
    border-color: #114639;
    background: #eaf3ef;
}
.odv-ep-sg-left {
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}
.odv-ep-sg-ico {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #e0efe9;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    flex-shrink: 0;
}
.odv-ep-sg-txt {
    min-width: 0;
}
.odv-ep-sg-txt strong {
    display: block;
    font-size: 12px;
    font-weight: 800;
    color: #114639;
    line-height: 1.2;
}
.odv-ep-sg-txt span {
    display: block;
    font-size: 11px;
    color: #4d6b61;
    line-height: 1.25;
    margin-top: 2px;
}
.odv-ep-sg-cta {
    font-size: 11px;
    font-weight: 800;
    color: #114639;
    background: #ffffff;
    border: 1px solid #b8d2c7;
    padding: 5px 10px;
    border-radius: 999px;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.15s ease;
}
.odv-ep-scale-guide:hover .odv-ep-sg-cta {
    background: #114639;
    color: #E2F11E;
    border-color: #114639;
}
.odv-ep-guide-tip {
    margin-top: 10px;
    padding: 10px 12px;
    background: #f8fbf9;
    border: 1px dashed #c5dcd2;
    border-radius: 12px;
    font-size: 11.5px;
    color: #48665c;
    line-height: 1.42;
}
.odv-ep-guide-tip strong {
    display: block;
    font-size: 12px;
    font-weight: 800;
    color: #114639;
    margin-bottom: 3px;
}
