.p3d-hero { padding:24px 28px; margin-bottom:16px; }
.p3d-hero .h3d-hero-h1 { margin:12px 0 6px; font-size:28px; }
.p3d-hero .h3d-hero-sub { font-size:14px; max-width:460px; }
@media (max-width:640px) { .p3d-hero { padding:16px 16px 18px; } .p3d-hero .h3d-hero-h1 { font-size:19px; } .p3d-hero .h3d-hero-sub { font-size:13px; } }

.p3d-wrap { display:grid; grid-template-columns:minmax(0,1fr) 372px; gap:16px; align-items:start; }
.p3d-stage-col { min-width:0; }
.p3d-toolbar { display:flex; flex-wrap:nowrap; align-items:center; gap:6px; background:#ffffff; border:1px solid #e5e7eb; border-bottom:none; border-radius:14px 14px 0 0; padding:9px 10px; overflow-x:auto; overflow-y:hidden; scrollbar-width:thin; }
.p3d-toolbar::-webkit-scrollbar { height:5px; }
.p3d-toolbar::-webkit-scrollbar-thumb { background:#d1d5db; border-radius:3px; }
.p3d-seg { display:inline-flex; border:1.5px solid #e5e7eb; border-radius:10px; overflow:hidden; flex:0 0 auto; }
.p3d-seg button { border:none; background:#ffffff; padding:7px 11px; font:inherit; font-size:12.5px; font-weight:700; color:#6b7280; cursor:pointer; white-space:nowrap; display:inline-flex; align-items:center; gap:6px; transition:background .15s, color .15s; }
.p3d-seg button.active { background:#ea580c; color:#ffffff; }
.p3d-tool { display:inline-flex; align-items:center; gap:6px; border:1.5px solid #e5e7eb; border-radius:10px; background:#ffffff; padding:7px 9px; font:inherit; font-size:12.5px; font-weight:600; color:#4b5563; cursor:pointer; white-space:nowrap; flex:0 0 auto; transition:border-color .15s, background .15s, color .15s; }
.p3d-tool i { font-size:12px; color:#9ca3af; transition:color .15s; }
.p3d-tool:hover:not(:disabled) { border-color:#fdba74; }
.p3d-tool.active { border-color:#ea580c; background:#fff7ed; color:#c2410c; }
.p3d-tool.active i { color:#ea580c; }
.p3d-tool.p3d-hot { background:#ea580c; border-color:#ea580c; color:#ffffff; }
.p3d-tool.p3d-hot i { color:#ffffff; }
.p3d-tool.p3d-hot:hover:not(:disabled) { background:#c2410c; border-color:#c2410c; }
.p3d-tool-icon { padding:7px 12px; }
.p3d-tool-icon i { font-size:15px; color:#4b5563; }
.p3d-tool-icon:hover:not(:disabled) i { color:#ea580c; }
.p3d-count { display:inline-flex; align-items:center; gap:6px; margin-left:2px; padding:7px 11px; border-radius:999px; background:#fff7ed; color:#c2410c; font-size:12.5px; font-weight:700; white-space:nowrap; flex:0 0 auto; }
.p3d-count i { font-size:11px; }
.p3d-count b { color:#c2410c; }

.p3d-viewport { position:relative; height:62vh; min-height:440px; border:1px solid #e5e7eb; border-top:none; border-radius:0 0 14px 14px; overflow:hidden; background:radial-gradient(circle at 50% 30%, #ffffff 0%, #eef1f5 70%, #e3e7ec 100%); touch-action:none; user-select:none; overscroll-behavior:contain; }
.p3d-viewport canvas { display:block; width:100%; height:100%; outline:none; }
.p3d-touch { position:absolute; inset:0; z-index:6; display:none; flex-direction:column; align-items:center; justify-content:center; gap:18px; pointer-events:none; }
.p3d-touch.show { display:flex; animation:p3dTouchIn .35s ease; }
@keyframes p3dTouchIn { from { opacity:0; } to { opacity:1; } }
.p3d-touch-stage { position:relative; width:120px; height:120px; }
.p3d-touch-dot { position:absolute; top:50%; left:50%; width:34px; height:34px; margin:-17px 0 0 -17px; border-radius:50%; background:rgba(234,88,12,.85); box-shadow:0 0 0 9px rgba(234,88,12,.18), 0 6px 16px rgba(17,24,39,.3); opacity:0; }
.p3d-touch-drag { animation:p3dTouchDrag 4.4s ease-in-out infinite; }
.p3d-touch-p1 { animation:p3dTouchP1 4.4s ease-in-out infinite; }
.p3d-touch-p2 { animation:p3dTouchP2 4.4s ease-in-out infinite; }
@keyframes p3dTouchDrag { 0% { opacity:0; transform:translate(-44px,0) scale(.6); } 6% { opacity:1; transform:translate(-44px,0) scale(1); } 24% { opacity:1; transform:translate(44px,0) scale(1); } 40% { opacity:1; transform:translate(-44px,0) scale(1); } 46% { opacity:0; transform:translate(-44px,0) scale(.6); } 100% { opacity:0; transform:translate(-44px,0) scale(.6); } }
@keyframes p3dTouchP1 { 0%,50% { opacity:0; transform:translate(-36px,-36px) scale(.6); } 56% { opacity:1; transform:translate(-36px,-36px) scale(1); } 74% { opacity:1; transform:translate(-7px,-7px) scale(1); } 92% { opacity:1; transform:translate(-36px,-36px) scale(1); } 98%,100% { opacity:0; transform:translate(-36px,-36px) scale(.6); } }
@keyframes p3dTouchP2 { 0%,50% { opacity:0; transform:translate(36px,36px) scale(.6); } 56% { opacity:1; transform:translate(36px,36px) scale(1); } 74% { opacity:1; transform:translate(7px,7px) scale(1); } 92% { opacity:1; transform:translate(36px,36px) scale(1); } 98%,100% { opacity:0; transform:translate(36px,36px) scale(.6); } }
.p3d-touch-text { max-width:250px; text-align:center; font-size:13px; font-weight:700; line-height:1.45; color:#ffffff; background:rgba(17,24,39,.76); padding:10px 15px; border-radius:12px; backdrop-filter:blur(3px); }
.p3d-viewport:fullscreen { border-radius:0; height:100vh; }

.p3d-stepbar { display:flex; align-items:center; gap:10px; margin:2px 0 4px; }
.p3d-step-play { width:36px; height:36px; border-radius:50%; border:none; background:#ea580c; color:#fff; cursor:pointer; flex:0 0 36px; font-size:13px; }
.p3d-step-play:hover { background:#c2410c; }
.p3d-step-play.on { background:#111827; }
.p3d-stepbar-txt { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.p3d-stepbar-txt span { font-size:11.5px; color:#6b7280; }
.p3d-stepbar-txt b { font-size:12.5px; color:#111827; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

.p3d-viewport .k3d-brand { z-index:4; }

.p3d-help { display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:8px; font-size:11.5px; color:#6b7280; }
.p3d-help i { color:#ea580c; margin-right:4px; }

.p3d-panel { min-width:0; align-self:start; height:calc(62vh + 54px); min-height:494px; display:flex; flex-direction:column; }
.p3d-panes { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; padding-right:7px; margin-right:-7px; scrollbar-width:thin; scrollbar-color:#d1d5db transparent; }
.p3d-panes::-webkit-scrollbar { width:7px; }
.p3d-panes::-webkit-scrollbar-thumb { background:#d1d5db; border-radius:4px; }
.p3d-panes::-webkit-scrollbar-track { background:transparent; }
body.dark-theme .p3d-panes::-webkit-scrollbar-thumb { background:#4b5563; }
.p3d-tabs { flex:0 0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:4px; background:#f3f4f6; border:1px solid #e5e7eb; border-radius:12px; padding:4px; margin-bottom:12px; }
.p3d-tabs button { border:none; background:transparent; border-radius:9px; padding:8px 4px; font:inherit; font-size:11.5px; font-weight:600; color:#4b5563; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:4px; }
.p3d-tabs button i { font-size:13px; }
.p3d-tabs button.active { background:#ffffff; color:#c2410c; box-shadow:0 1px 3px rgba(0,0,0,.12); }
.p3d-hint { font-size:12px; color:#6b7280; line-height:1.5; margin:0 0 10px; }
.p3d-layers { display:flex; flex-direction:column; gap:6px; }
.p3d-layer { display:flex; align-items:center; gap:9px; padding:7px 9px; border:1px solid #e5e7eb; border-radius:10px; font-size:12.5px; color:#111827; cursor:pointer; }
.p3d-layer i { width:16px; text-align:center; color:#ea580c; }
.p3d-layer span { flex:1; }
.p3d-layer b { font-size:11px; color:#9ca3af; font-weight:600; }
.p3d-layer input { accent-color:#ea580c; }
.p3d-check { display:flex; align-items:center; gap:8px; font-size:12.5px; color:#374151; margin-top:10px; cursor:pointer; }
.p3d-check input { accent-color:#ea580c; }

.p3d-dots { display:flex; align-items:center; gap:8px; padding:8px 2px 4px; overflow-x:auto; overflow-y:hidden; scrollbar-width:none; -ms-overflow-style:none; scroll-behavior:smooth; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
.p3d-dots::-webkit-scrollbar { width:0; height:0; display:none; }
.p3d-dot { position:relative; width:28px; height:28px; flex:0 0 28px; border-radius:50%; border:2px solid #e5e7eb; background:#ffffff; color:#9ca3af; font:inherit; font-size:11px; font-weight:700; cursor:pointer; padding:0; transition:border-color .15s, background .15s, color .15s; }
.p3d-dot:hover { border-color:#fdba74; color:#c2410c; }
.p3d-dot.done { background:#111827; border-color:#111827; color:#ffffff; }
.p3d-dot.active { background:#ea580c; border-color:#ea580c; color:#ffffff; box-shadow:0 0 0 3px #fed7aa; }
.p3d-dotcap { margin-top:12px; font-size:12.5px; font-weight:600; color:#111827; line-height:1.4; }
.p3d-dotcap small { display:block; margin-top:4px; font-size:11px; font-weight:400; color:#9ca3af; line-height:1.45; }

.p3d-sizerow { display:flex; gap:8px; margin-top:12px; }
.p3d-sizerow .kch-btn { flex:1; }
.p3d-sizenote { font-size:12px; color:#c2410c; margin-top:10px; line-height:1.45; }
.p3d-sizenote:empty { display:none; }
.p3d-live { border-color:#bfdbfe; background:linear-gradient(180deg,#f5f9ff,#ffffff); }
.p3d-live .kch-card-title i { color:#2563eb; }
.p3d-live .kch-btn-primary { background:linear-gradient(135deg,#0ea5e9,#6366f1); }
.p3d-live .kch-btn { margin-top:4px; }
body.dark-theme .p3d-live { border-color:#1e3a5f; background:linear-gradient(180deg,#152033,#111827); }
.p3d-panel .kch-btn, .p3d-panel .kch-btn:hover:not(:disabled) { box-shadow:none; transform:none; }

.p3d-catalog { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.p3d-cat { border:1px solid #e5e7eb; border-radius:12px; background:#ffffff; padding:7px 6px 9px; display:flex; flex-direction:column; align-items:center; gap:4px; cursor:pointer; font:inherit; color:#111827; text-align:center; }
.p3d-cat:hover { border-color:#fdba74; background:#fff7ed; }
.p3d-cat-img { width:100%; height:52px; object-fit:contain; border-radius:8px; background:linear-gradient(180deg,#f8fafc,#eef1f5); pointer-events:none; }
.p3d-cat-ic { width:100%; height:52px; border-radius:8px; background:linear-gradient(180deg,#f8fafc,#eef1f5); display:flex; align-items:center; justify-content:center; }
.p3d-cat i { font-size:18px; color:#ea580c; }
.p3d-cat span { font-size:11.5px; font-weight:600; line-height:1.2; }
.p3d-cat small { font-size:10px; color:#9ca3af; }
body.dark-theme .p3d-cat-img, body.dark-theme .p3d-cat-ic { background:linear-gradient(180deg,#273141,#1b2330); }

.p3d-catscroll .p3d-catgroup { position:sticky; top:-1px; z-index:2; background:#ffffff; padding:6px 0 5px; margin:6px 0 6px; }
.p3d-catscroll .p3d-catgroup:first-child { margin-top:0; }
body.dark-theme .p3d-catscroll .p3d-catgroup { background:#111827; }
@media (max-width:1024px) { .p3d-catscroll .p3d-catgroup { position:static; } }

.p3d-viewport .p3d-vctrl { left:10px; bottom:10px; max-height:calc(100% - 20px); }
.p3d-viewport .p3d-vctrl .k3d-vbtn:hover:not(:disabled) { background:#ea580c; color:#fff; }
.p3d-viewport .p3d-vctrl .k3d-vbtn.active { background:#ea580c; color:#fff; }
.p3d-viewport .p3d-vctrl .k3d-vbtn.active:hover:not(:disabled) { background:#c2410c; color:#fff; }
.p3d-viewport .p3d-vctrl .k3d-vbtn-danger:hover:not(:disabled) { background:#dc2626; color:#fff; }
.k3d-vbtn.p3d-armed, body.dark-theme .p3d-viewport .p3d-vctrl .k3d-vbtn.p3d-armed { background:#fff7ed; color:#c2410c; box-shadow:inset 0 0 0 1.5px #fdba74; }
@keyframes p3dArm { 0%,100% { box-shadow:inset 0 0 0 1.5px #fdba74, 0 0 0 0 rgba(234,88,12,.55); } 60% { box-shadow:inset 0 0 0 1.5px #fdba74, 0 0 0 6px rgba(234,88,12,0); } }
.k3d-vbtn.p3d-armed.active, body.dark-theme .p3d-viewport .p3d-vctrl .k3d-vbtn.p3d-armed.active { background:#ea580c; color:#ffffff; box-shadow:none; }
.k3d-vbtn.p3d-arm-flash { animation:p3dArm .9s ease-out 2; }
@keyframes p3dBlink { 0%,100% { box-shadow:0 0 0 0 rgba(234,88,12,.6); } 70% { box-shadow:0 0 0 7px rgba(234,88,12,0); } }
.k3d-vbtn.p3d-blink, body.dark-theme .p3d-viewport .p3d-vctrl .k3d-vbtn.p3d-blink { background:#fff7ed; color:#c2410c; animation:p3dBlink 1.5s ease-out infinite; }
.p3d-props-flash { animation:p3dCardFlash 1s ease-out 2; }
@keyframes p3dCardFlash { 0%,100% { box-shadow:0 0 0 0 rgba(234,88,12,.35); } 55% { box-shadow:0 0 0 6px rgba(234,88,12,0); } }
body.dark-theme .p3d-viewport .p3d-vctrl { background:rgba(17,24,39,.9); border-color:#374151; }
body.dark-theme .p3d-viewport .p3d-vctrl .k3d-vbtn { background:#2b3340; color:#cbd5e1; }
body.dark-theme .p3d-viewport .p3d-vctrl .k3d-vsep { background:#374151; }

.p3d-morebox { position:absolute; z-index:6; right:10px; top:10px; width:236px; max-width:calc(100% - 20px); background:rgba(255,255,255,.97); border:1px solid #e5e7eb; border-radius:14px; padding:9px 10px; box-shadow:0 8px 22px rgba(17,24,39,.16); backdrop-filter:blur(4px); }
.p3d-more-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; font-size:12.5px; font-weight:700; color:#111827; }
.p3d-more-x { border:none; background:transparent; color:#9ca3af; cursor:pointer; padding:2px 4px; font-size:13px; }
.p3d-more-x:hover { color:#dc2626; }
.p3d-more-list { display:flex; flex-direction:column; gap:6px; }
.p3d-more-list .p3d-tool { justify-content:flex-start; width:100%; }
.p3d-tool-ar { background:linear-gradient(135deg,#0ea5e9,#6366f1); border-color:transparent; color:#fff; }
.p3d-tool-ar:hover { border-color:transparent; color:#fff; filter:brightness(1.06); }
.p3d-tool-ar i, .p3d-tool-ar:hover i { color:#ffffff; }
.p3d-tool:disabled { opacity:.45; cursor:not-allowed; }
.p3d-tool:disabled:hover { border-color:#e5e7eb; color:#374151; }
body.dark-theme .p3d-morebox { background:rgba(17,24,39,.95); border-color:#374151; }
body.dark-theme .p3d-more-head { color:#f3f4f6; }
body.dark-theme .p3d-tool:disabled:hover { border-color:#374151; color:#e5e7eb; }

.p3d-ar { position:fixed; inset:0; z-index:5000; display:none; }
.p3d-ar.open { display:block; }
.p3d-ar-back { position:absolute; inset:0; background:rgba(15,23,42,.62); backdrop-filter:blur(2px); }
.p3d-ar-box { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:min(700px,95vw); max-height:94vh; display:flex; flex-direction:column; background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 26px 64px rgba(2,6,23,.45); }
.p3d-ar-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 18px; border-bottom:1px solid #eef2f7; font-size:15px; font-weight:700; color:#0f172a; }
.p3d-ar-head i { color:#6366f1; margin-right:8px; }
.p3d-ar-x { width:34px; height:34px; border:none; background:#f1f5f9; border-radius:10px; color:#475569; cursor:pointer; font-size:15px; }
.p3d-ar-x:hover { background:#e2e8f0; }
.p3d-ar-body { padding:14px; display:flex; flex-direction:column; gap:12px; overflow:auto; }
.p3d-ar-stage { position:relative; width:100%; height:min(62vh,520px); min-height:280px; border-radius:14px; overflow:hidden; background:#eef2f7; }
.p3d-ar-stage model-viewer { width:100%; height:100%; background:#eef2f7; --poster-color:transparent; }
.p3d-ar-load { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:20px; text-align:center; color:#475569; font-size:14px; font-weight:600; }
.p3d-ar-spin { width:34px; height:34px; border:3px solid #cbd5e1; border-top-color:#6366f1; border-radius:50%; animation:p3dArSpin 1s linear infinite; }
@keyframes p3dArSpin { to { transform:rotate(360deg); } }
.p3d-ar-go { position:absolute; left:50%; bottom:16px; transform:translateX(-50%); display:inline-flex; align-items:center; gap:9px; padding:13px 22px; border:none; border-radius:999px; background:linear-gradient(135deg,#0ea5e9,#6366f1); color:#fff; font-size:15px; font-weight:700; cursor:pointer; box-shadow:0 10px 24px rgba(79,70,229,.4); }
.p3d-ar-note { margin:0; font-size:13px; line-height:1.5; color:#475569; background:#f8fafc; border:1px solid #eef2f7; border-radius:12px; padding:11px 13px; }
.p3d-ar-note b { color:#0f172a; }
.p3d-ar-qr { display:flex; align-items:center; gap:14px; margin-top:11px; padding-top:11px; border-top:1px solid #e2e8f0; }
.p3d-ar-qr-img { flex:0 0 auto; width:124px; height:124px; display:flex; align-items:center; justify-content:center; background:#ffffff; border:1px solid #e2e8f0; border-radius:12px; color:#cbd5e1; font-size:30px; overflow:hidden; }
.p3d-ar-qr-img img, .p3d-ar-qr-img canvas { display:block; width:112px; height:112px; }
.p3d-ar-qr-txt { flex:1; min-width:0; font-size:12.5px; line-height:1.5; color:#475569; }
.p3d-ar-qr-txt b { display:block; margin-bottom:4px; }
.p3d-ar-copy { margin-top:8px; display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border:1px solid #cbd5e1; border-radius:10px; background:#fff; color:#0f172a; font:inherit; font-size:12.5px; font-weight:600; cursor:pointer; }
.p3d-ar-copy:hover { background:#f1f5f9; }
body.dark-theme .p3d-ar-qr { border-top-color:#334155; }
body.dark-theme .p3d-ar-qr-txt { color:#cbd5e1; }
body.dark-theme .p3d-ar-copy { background:#1e293b; border-color:#334155; color:#e2e8f0; }
@media (max-width:520px) { .p3d-ar-qr { flex-direction:column; align-items:flex-start; } }
body.dark-theme .p3d-ar-box { background:#1e293b; }
body.dark-theme .p3d-ar-head { border-color:#334155; color:#f1f5f9; }
body.dark-theme .p3d-ar-note { background:#0f172a; border-color:#334155; color:#cbd5e1; }
body.dark-theme .p3d-ar-note b { color:#f8fafc; }

.p3d-vlayers { position:absolute; z-index:5; left:64px; bottom:10px; width:250px; max-width:calc(100% - 78px); max-height:calc(100% - 20px); overflow-y:auto; background:rgba(255,255,255,.96); border:1px solid #e5e7eb; border-radius:14px; padding:10px 11px; box-shadow:0 8px 22px rgba(17,24,39,.16); backdrop-filter:blur(4px); }
.p3d-vlayers-head { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; font-size:12.5px; font-weight:700; color:#111827; }
.p3d-vlayers-head i { color:#ea580c; margin-right:5px; }
.p3d-vlayers-x { border:none; background:transparent; color:#9ca3af; cursor:pointer; padding:2px 4px; font-size:13px; }
.p3d-vlayers-x:hover { color:#dc2626; }
.p3d-vlayers .p3d-layer { background:#ffffff; }
body.dark-theme .p3d-vlayers { background:rgba(17,24,39,.94); border-color:#374151; }
body.dark-theme .p3d-vlayers-head { color:#f3f4f6; }
body.dark-theme .p3d-vlayers .p3d-layer { background:#1f2937; border-color:#374151; color:#e5e7eb; }
@media (max-width:640px) { .p3d-viewport .p3d-vctrl { left:8px; bottom:8px; padding:4px; gap:4px; } .p3d-viewport .p3d-vctrl .k3d-vbtn { width:30px; height:30px; font-size:12px; border-radius:8px; } .p3d-vlayers { left:52px; bottom:8px; width:215px; } .p3d-morebox { right:8px; top:8px; width:215px; } }

.p3d-props .row { display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px; margin-bottom:8px; }
.p3d-actrow { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-top:12px; }
.p3d-actrow .kch-btn { min-width:0; padding:9px 4px; font-size:11.5px; gap:5px; white-space:nowrap; overflow:hidden; }
.p3d-actrow .kch-btn i { font-size:11px; }
.p3d-props .p3d-reset { margin-top:8px; padding:9px 10px; font-size:12px; white-space:normal; line-height:1.3; }
.p3d-buylock { margin-top:12px; padding:12px 13px; border:1px dashed #fdba74; border-radius:12px; background:#fff7ed; }
.p3d-buylock b { display:flex; align-items:center; gap:7px; font-size:12.5px; color:#111827; }
.p3d-buylock b i { color:#2563eb; }
.p3d-buylock span a { color:#2563eb; font-weight:600; }
.p3d-buylock span { display:block; margin:6px 0 9px; font-size:11.5px; line-height:1.5; color:#6b7280; }
.p3d-buylock .kch-btn { padding:9px 12px; font-size:12.5px; }
body.dark-theme .p3d-buylock { background:#26170c; border-color:#c2410c; }
body.dark-theme .p3d-buylock b { color:#f3f4f6; }
.p3d-props input.p3d-fog { filter:blur(4.5px); color:#6b7280; user-select:none; pointer-events:none; cursor:not-allowed; }
.p3d-props label.p3d-fogwrap { position:relative; }
.p3d-props label.p3d-fogwrap::after { content:'\f023'; font-family:'Font Awesome 6 Free'; font-weight:900; position:absolute; right:8px; bottom:9px; font-size:10px; color:#c2410c; }
.p3d-props label { display:flex; flex-direction:column; gap:4px; font-size:11px; color:#6b7280; }
.p3d-props input[type=number], .p3d-props input[type=text] { box-sizing:border-box; min-width:0; width:100%; padding:7px 8px; border:1px solid #d1d5db; border-radius:8px; font:inherit; font-size:12.5px; color:#111827; background:#fff; }
.p3d-sw { display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 10px; }
.p3d-sw button { width:24px; height:24px; border-radius:50%; border:2px solid #fff; box-shadow:0 0 0 1px #d1d5db; cursor:pointer; padding:0; }
.p3d-sw button.active { box-shadow:0 0 0 2px #ea580c; }
.p3d-addons { display:flex; flex-direction:column; gap:6px; }
.p3d-addon { display:flex; align-items:center; gap:8px; padding:7px 9px; border:1px solid #e5e7eb; border-radius:10px; font-size:12.5px; cursor:pointer; }
.p3d-addon.active { border-color:#fdba74; background:#fff7ed; }
.p3d-addon i { color:#ea580c; width:16px; text-align:center; }
.p3d-addon span { flex:1; }
.p3d-addon small { color:#9ca3af; }
.p3d-addon button { border:none; background:transparent; color:#9ca3af; cursor:pointer; padding:4px; }
.p3d-addon button:hover { color:#dc2626; }

.p3d-spec { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.p3d-spec table { width:100%; border-collapse:collapse; font-size:12px; }
.p3d-spec th { text-align:left; font-size:10.5px; color:#9ca3af; font-weight:600; padding:0 4px 6px; border-bottom:1px solid #e5e7eb; }
.p3d-spec td { padding:6px 4px; border-bottom:1px solid #f3f4f6; vertical-align:top; color:#111827; overflow-wrap:anywhere; }
.p3d-spec td.l { color:#ea580c; font-weight:700; white-space:nowrap; }
.p3d-spec td.q { white-space:nowrap; text-align:right; }
.p3d-spec td.s { white-space:nowrap; color:#4b5563; }
.p3d-spec td.s b { color:#c2410c; font-weight:600; }
.p3d-spec small { display:block; color:#9ca3af; font-size:10.5px; }
.p3d-tools { font-size:12.5px; color:#374151; line-height:1.6; }
.p3d-locked { filter:blur(6px); user-select:none; pointer-events:none; opacity:.85; max-height:420px; overflow:hidden; }
.p3d-lock { display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; padding:18px 14px; margin-bottom:12px; border:1px dashed #fdba74; border-radius:14px; background:#fff7ed; }
.p3d-lock i { font-size:22px; color:#2563eb; }
.p3d-lock span a { color:#2563eb; font-weight:600; }
.p3d-lock b { font-size:14px; color:#111827; }
.p3d-lock span { font-size:12px; color:#6b7280; line-height:1.5; }
.p3d-lock .kch-btn { margin-top:4px; }
body.dark-theme .p3d-lock { background:#26170c; border-color:#c2410c; }
body.dark-theme .p3d-lock b { color:#f3f4f6; }
.p3d-missing { max-width:640px; }
.p3d-missing p { font-size:14px; line-height:1.6; color:#374151; }

body.dark-theme .p3d-toolbar { background:#111827; border-color:#374151; }
body.dark-theme .p3d-toolbar::-webkit-scrollbar-thumb { background:#4b5563; }
body.dark-theme .p3d-seg { border-color:#374151; }
body.dark-theme .p3d-seg button { background:#1f2937; color:#9ca3af; }
body.dark-theme .p3d-seg button.active { background:#ea580c; color:#ffffff; }
body.dark-theme .p3d-tool { background:#1f2937; border-color:#374151; color:#e5e7eb; }
body.dark-theme .p3d-tool i { color:#6b7280; }
body.dark-theme .p3d-tool-icon i { color:#e5e7eb; }
body.dark-theme .p3d-tool.active { background:#26170c; border-color:#ea580c; color:#fdba74; }
body.dark-theme .p3d-count { background:#26170c; color:#fdba74; }
body.dark-theme .p3d-count b { color:#fdba74; }
body.dark-theme .p3d-viewport { border-color:#374151; background:radial-gradient(circle at 50% 30%, #2b3441 0%, #1a2230 70%, #121a26 100%); }
body.dark-theme .p3d-stepbar-txt span { color:#9ca3af; }
body.dark-theme .p3d-stepbar-txt b { color:#f3f4f6; }
body.dark-theme .p3d-tabs { background:#1f2937; border-color:#374151; }
body.dark-theme .p3d-tabs button { color:#9ca3af; }
body.dark-theme .p3d-tabs button.active { background:#111827; color:#fdba74; }
body.dark-theme .p3d-layer, body.dark-theme .p3d-addon, body.dark-theme .p3d-cat { border-color:#374151; background:#1f2937; color:#e5e7eb; }
body.dark-theme .p3d-dot { background:#1f2937; border-color:#374151; color:#9ca3af; }
body.dark-theme .p3d-dot.done { background:#f3f4f6; border-color:#f3f4f6; color:#111827; }
body.dark-theme .p3d-dot.active { background:#ea580c; border-color:#ea580c; color:#ffffff; box-shadow:0 0 0 3px #7c2d12; }
body.dark-theme .p3d-dotcap { color:#f3f4f6; }
body.dark-theme .p3d-spec td { color:#e5e7eb; border-bottom-color:#374151; }
body.dark-theme .p3d-props input[type=number], body.dark-theme .p3d-props input[type=text] { background:#111827; border-color:#374151; color:#e5e7eb; }
body.dark-theme .p3d-count b { color:#f3f4f6; }

.p3d-mobilebar { display:none; }

@media (max-width: 1024px) {
    .p3d-wrap { grid-template-columns:1fr; }
    .p3d-viewport { height:70vh; min-height:480px; }
    .p3d-panel { height:auto; min-height:0; display:block; }
    .p3d-panes { overflow:visible; min-height:0; padding-right:0; margin-right:0; }
    .p3d-mobilebar { display:flex; flex-direction:column; align-items:stretch; gap:8px; margin-top:8px; }
    .p3d-mobilebar .p3d-vctrl { position:static; left:auto; right:auto; top:auto; bottom:auto; width:100%; max-height:none; overflow:visible; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:center; gap:5px; padding:6px; backdrop-filter:none; box-shadow:none; }
    .p3d-mobilebar .p3d-vctrl .k3d-vbtn { width:34px; height:34px; font-size:13px; }
    .p3d-mobilebar .p3d-vctrl .k3d-vsep { width:1px; height:20px; margin:0 2px; }
    .p3d-mobilebar .p3d-vlayers, .p3d-mobilebar .p3d-morebox { position:static; left:auto; right:auto; top:auto; bottom:auto; width:100%; max-width:none; max-height:none; overflow:visible; box-shadow:none; backdrop-filter:none; }
    .p3d-steplist, .p3d-stepbar { max-width:100%; min-width:0; }
    .p3d-dots { flex-wrap:nowrap; overflow-x:auto; overflow-y:hidden; gap:6px; padding:6px 4px; }
    .p3d-dot { width:26px; height:26px; flex:0 0 26px; font-size:10.5px; }
    #p3d-vrest > .k3d-vsep:first-child { display:none; }
    #p3d-ground-toggle { display:none; }
    .p3d-viewport #p3d-vcam { display:flex; position:absolute; z-index:4; left:8px; bottom:8px; flex-direction:row; flex-wrap:wrap; align-items:center; gap:3px; padding:4px 5px; max-width:calc(100% - 16px); background:rgba(255,255,255,.92); border:1px solid #e5e7eb; border-radius:11px; box-shadow:0 6px 18px rgba(15,23,42,.14); backdrop-filter:blur(4px); }
    .p3d-viewport #p3d-vcam .k3d-vbtn { width:28px; height:28px; font-size:11px; border-radius:7px; }
    .p3d-viewport #p3d-vcam .k3d-vbtn:hover:not(:disabled) { background:#ea580c; color:#fff; }
    .p3d-viewport #p3d-vcam .k3d-vsep { width:1px; height:15px; margin:0 1px; }
    .p3d-viewport #p3d-vcam .k3d-vbtn.active { background:#ea580c; color:#fff; }
    .p3d-viewport #p3d-vcam .k3d-vbtn.active:hover:not(:disabled) { background:#c2410c; color:#fff; }
    #p3d-vcam .p3d-vauto-part { display:inline-flex; }
    #p3d-vcam span.p3d-vauto-part { display:inline-block; }
    body.dark-theme .p3d-viewport #p3d-vcam { background:rgba(17,24,39,.9); border-color:#374151; }
    body.dark-theme .p3d-viewport #p3d-vcam .k3d-vbtn { background:#2b3340; color:#cbd5e1; }
    body.dark-theme .p3d-viewport #p3d-vcam .k3d-vsep { background:#374151; }
}
@media (max-width: 640px) {
    .p3d-toolbar { gap:5px; padding:8px; border-radius:12px 12px 0 0; }
    .p3d-tool { padding:7px 8px; font-size:12px; }
    .p3d-tool-icon { padding:7px 10px; }
    .p3d-seg button { padding:7px 9px; font-size:12px; }
    .p3d-viewport { height:72vh; min-height:440px; border-radius:0 0 12px 12px; }
    .p3d-help { display:none; }
    .p3d-catalog { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 640px) and (orientation:landscape) {
    .p3d-viewport { height:86vh; min-height:300px; }
}

.p3d-more { margin-top:10px; display:flex; flex-direction:column; gap:8px; }
.p3d-clamp { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.p3d-spec-peek { position:relative; }
.p3d-peek-note { font-size:11.5px; color:#9ca3af; margin:8px 0 0; }

.p3d-modal { position:fixed; inset:0; z-index:9000; display:flex; align-items:center; justify-content:center; padding:24px 16px; }
.p3d-modal[hidden] { display:none; }
.p3d-modal-back { position:absolute; inset:0; background:rgba(17,24,39,.55); backdrop-filter:blur(2px); }
.p3d-modal-box { position:relative; width:min(760px,100%); max-height:86vh; display:flex; flex-direction:column; background:#ffffff; border-radius:18px; box-shadow:0 24px 60px rgba(17,24,39,.28); overflow:hidden; }
.p3d-modal-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; border-bottom:1px solid #e5e7eb; }
.p3d-modal-head b { font-size:15px; color:#111827; }
.p3d-modal-x { width:32px; height:32px; border-radius:9px; border:1px solid #e5e7eb; background:#f9fafb; color:#6b7280; cursor:pointer; }
.p3d-modal-x:hover { color:#111827; border-color:#d1d5db; }
.p3d-modal-body { padding:16px 18px 20px; overflow:auto; }
.p3d-modal-body h4 { margin:18px 0 8px; font-size:13px; font-weight:700; color:#111827; }
.p3d-modal-body h4:first-child { margin-top:0; }
.p3d-modal-body .p3d-hint { margin-bottom:12px; }
.p3d-modal-body .p3d-locked { max-height:none; }
body.dark-theme .p3d-modal-box { background:#111827; }
body.dark-theme .p3d-modal-head { border-bottom-color:#374151; }
body.dark-theme .p3d-modal-head b, body.dark-theme .p3d-modal-body h4 { color:#f3f4f6; }
body.dark-theme .p3d-modal-x { background:#1f2937; border-color:#374151; color:#9ca3af; }
body.dark-theme .p3d-tools { color:#d1d5db; }
@media (max-width:640px) {
    .p3d-modal { padding:0; }
    .p3d-modal-box { width:100%; max-height:100vh; height:100%; border-radius:0; }
    .p3d-viewport .k3d-brand { right:10px; bottom:10px; top:auto; left:auto; }
    .p3d-viewport .k3d-brand img { height:22px; }
    .p3d-viewport .k3d-brand span { font-size:12px; }
}

.p3d-cats { display:flex; flex-direction:column; }
.p3d-catgroup { font-size:10.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#9ca3af; margin:12px 0 6px; }
.p3d-catgroup:first-child { margin-top:0; }
body.p3d-modal-open { overflow:hidden; }
body.dark-theme .p3d-viewport .k3d-brand span { color:#f4f6f9; }

.p3d-props .p3d-reset { margin-top:8px; }
.p3d-props .p3d-partnote { font-size:11px; color:#9ca3af; line-height:1.45; margin:0 0 10px; }
.p3d-toolseg { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-top:12px; }
.p3d-toolseg .kch-btn { min-width:0; padding:8px 4px; font-size:11.5px; gap:5px; white-space:nowrap; overflow:hidden; }
.p3d-props .p3d-toolhint { font-size:11px; color:#6b7280; line-height:1.45; margin:7px 0 0; }
.p3d-props .p3d-toolhint--warn { color:#c2410c; font-weight:600; }
.p3d-sidebox { margin-top:8px; padding:9px; border:1px solid #fdba74; border-radius:10px; background:#fff7ed; }
.p3d-sidebox b { display:block; font-size:12px; color:#9a3412; margin-bottom:6px; }
.p3d-steprow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px; }
.p3d-steprow .kch-btn { min-width:0; padding:7px 2px; font-size:12px; }
.p3d-steprow--in { grid-template-columns:minmax(0,1fr) auto; margin-top:6px; }
.p3d-turnbox { margin-top:8px; display:flex; flex-direction:column; gap:6px; }
.p3d-turnrow { padding:7px 9px; border:1px solid #e5e7eb; border-left-width:4px; border-radius:10px; }
.p3d-turnrow--x { border-left-color:#dc2626; }
.p3d-turnrow--y { border-left-color:#16a34a; }
.p3d-turnrow--z { border-left-color:#2563eb; }
.p3d-turnhead { display:flex; justify-content:space-between; align-items:baseline; font-size:11px; color:#6b7280; margin-bottom:4px; }
.p3d-turnhead b { font-size:13px; color:#111827; }
.p3d-slide { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:6px; align-items:center; }
.p3d-sidebox .p3d-slide { grid-template-columns:minmax(0,1fr) 64px; margin-bottom:6px; }
.p3d-slide .kch-btn { min-width:0; padding:6px 7px; font-size:11.5px; }
.p3d-slide input[type=range] { width:100%; accent-color:#ea580c; touch-action:none; margin:0; }
.p3d-slide-val { font-size:12px; font-weight:700; color:#9a3412; text-align:right; }
.p3d-slide-now { float:right; font-weight:600; color:#6b7280; }
.p3d-sidebox .p3d-toolhint { margin-top:6px; }
.p3d-pdfnote { margin:8px 0 0; }
.p3d-props .p3d-approx { display:flex; gap:7px; margin:-2px 0 10px; font-size:11px; line-height:1.45; color:#9a3412; }
body.dark-theme .p3d-props .p3d-approx { color:#fdba74; }
body.dark-theme .p3d-turnrow { border-color:#374151; }
body.dark-theme .p3d-turnhead b { color:#f3f4f6; }
body.dark-theme .p3d-slide-val { color:#fdba74; }
.p3d-props .p3d-multibtn { margin-top:8px; padding:8px 10px; font-size:12px; }
.p3d-props .p3d-multibtn.active { border-color:#ea580c; color:#c2410c; background:#fff7ed; }
body.dark-theme .p3d-sidebox { background:#26170c; border-color:#c2410c; }
body.dark-theme .p3d-sidebox b { color:#fdba74; }
body.dark-theme .p3d-props .p3d-multibtn.active { background:#26170c; color:#fdba74; }

.p3d-cat { touch-action:manipulation; }
.p3d-cat:active { cursor:grabbing; }
.p3d-cat { cursor:grab; }
.p3d-ghost { position:fixed; z-index:9500; left:0; top:0; pointer-events:none; display:flex; align-items:center; gap:7px; padding:7px 11px; border-radius:11px; background:#111827; color:#ffffff; font-size:12.5px; font-weight:600; box-shadow:0 10px 24px rgba(17,24,39,.3); }
.p3d-ghost[hidden] { display:none; }
.p3d-ghost i { color:#fdba74; }
.p3d-viewport.p3d-drop { outline:2px dashed #fdba74; outline-offset:-6px; }
.p3d-viewport.p3d-drop-on { outline:2px solid #ea580c; }
.p3d-viewport.p3d-drop-on::after { content:'Отпустите, объект встанет сюда'; position:absolute; left:50%; top:14px; transform:translateX(-50%); background:rgba(234,88,12,.95); color:#fff; font-size:12px; font-weight:600; padding:6px 12px; border-radius:999px; pointer-events:none; z-index:5; }

.p3d-matname { margin:2px 0 10px; font-size:12px; font-weight:600; color:#374151; }
body.dark-theme .p3d-matname { color:#cbd5e1; }

.p3d-vauto-part { display:none; }

.p3d-order { margin-top:12px; padding:12px; border:1px solid #fdba74; border-radius:12px; background:linear-gradient(180deg,#fffaf5,#ffffff); }
.p3d-order .kch-card-title i { color:#ea580c; }
.p3d-orderrow { display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:7px 0; border-top:1px solid #f1f5f9; font-size:12.5px; color:#6b7280; }
.p3d-orderrow:first-of-type { border-top:none; }
.p3d-orderrow b { font-size:16px; font-weight:800; color:#111827; }
.p3d-order .kch-btn { margin-top:10px; }
.p3d-order-note { margin:10px 0 0; }
.p3d-order-edits { margin:6px 0 4px; color:#c2410c; font-weight:600; }
.p3d-order-edits[hidden] { display:none; }
body.dark-theme .p3d-order-edits { color:#fdba74; }
body.dark-theme .p3d-order { border-color:#c2410c; background:linear-gradient(180deg,#26170c,#111827); }
body.dark-theme .p3d-orderrow { border-color:#374151; }
body.dark-theme .p3d-orderrow b { color:#f3f4f6; }
.p3d-props input[data-paylock] { cursor:not-allowed; background:#f9fafb; }
.p3d-props .p3d-paylock p { display:flex; gap:7px; align-items:flex-start; margin:0 0 9px; }
.p3d-props .p3d-paylock .kch-btn { margin:0; }
.p3d-props input[data-paylock]::placeholder { color:#9ca3af; font-size:11px; }
.p3d-props input[data-paylock]:focus { outline:none; border-color:#fdba74; }
.p3d-props .p3d-paylock { display:block; margin:0 0 10px; padding:9px 11px; border-radius:10px; background:#fff7ed; border:1px solid #fed7aa; font-size:12px; line-height:1.45; color:#9a3412; }
.p3d-props .p3d-paylock[hidden] { display:none; }
.p3d-props .p3d-paylock i { margin-top:2px; }
.p3d-props .p3d-paylock.is-blink { animation:p3dPayBlink .45s ease 3; }
@keyframes p3dPayBlink { 50% { box-shadow:0 0 0 4px rgba(234,88,12,.25); } }
body.dark-theme .p3d-props input[data-paylock] { background:#111827; }
body.dark-theme .p3d-props .p3d-paylock { background:#26170c; border-color:#7c2d12; color:#fdba74; }
.p3d-tunebar { display:flex; align-items:center; gap:12px; margin:0 0 10px; padding:11px 14px; border:1px solid #fed7aa; border-radius:14px; background:#fff7ed; color:#7c2d12; font-size:12.5px; line-height:1.5; }
.p3d-tunebar > i { flex:0 0 auto; font-size:18px; color:#ea580c; }
.p3d-tunebar span { flex:1; min-width:0; }
.p3d-tunebar b { color:#7c2d12; }
.p3d-tunebar .kch-btn { flex:0 0 auto; width:auto; white-space:nowrap; }
@media (max-width:640px) { .p3d-tunebar { flex-wrap:wrap; } .p3d-tunebar .kch-btn { width:100%; } }
body.dark-theme .p3d-tunebar { background:#26170c; border-color:#7c2d12; color:#fdba74; }
body.dark-theme .p3d-tunebar b { color:#fed7aa; }
.p3d-hero-more { display:inline-flex; align-items:center; gap:8px; margin-top:12px; padding:8px 14px; border-radius:10px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.35); color:#fff; font-size:13px; font-weight:600; text-decoration:none; transition:background .15s; }
.p3d-hero-more:hover { background:rgba(255,255,255,.26); color:#fff; }
@media (max-width:640px) { .p3d-hero-more { margin-top:10px; padding:7px 12px; font-size:12.5px; } }
.p3d-more-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
.p3d-more-card { display:flex; flex-direction:column; gap:6px; text-decoration:none; color:inherit; border:1px solid #e2e8f0; border-radius:12px; padding:6px; background:#fff; transition:border-color .15s, transform .15s; }
.p3d-more-card:hover { border-color:#ea580c; transform:translateY(-1px); }
.p3d-more-fig { position:relative; display:block; aspect-ratio:4 / 3; border-radius:8px; overflow:hidden; background:linear-gradient(180deg,#F4F3FF,#E8EDFF); }
.p3d-more-fig img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.p3d-more-3d { position:absolute; left:6px; top:6px; display:inline-flex; align-items:center; gap:4px; padding:3px 7px; border-radius:999px; background:rgba(234,88,12,.95); color:#fff; font-size:10.5px; font-weight:700; }
.p3d-more-t { font-size:12px; font-weight:600; line-height:1.3; color:#1B2559; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:31px; padding:0 2px 2px; }
.p3d-more-all { margin-top:12px; border:1.5px solid #ea580c; background:#fff7ed; color:#c2410c; font-weight:700; }
.p3d-more-all:hover { background:#ea580c; color:#fff; }
body.dark-theme .p3d-more-card { background:#111827; border-color:#374151; }
body.dark-theme .p3d-more-card:hover { border-color:#ea580c; }
body.dark-theme .p3d-more-fig { background:linear-gradient(180deg,#273141,#1b2330); }
body.dark-theme .p3d-more-t { color:#e5e7eb; }
body.dark-theme .p3d-more-all { background:transparent; color:#fdba74; }
body.dark-theme .p3d-more-all:hover { background:#ea580c; color:#fff; }

.p3d-premium-badge { display:inline-flex; align-items:center; gap:7px; margin-left:6px; padding:5px 12px; border-radius:999px; background:linear-gradient(135deg,#f7d774 0%,#d99a1c 100%); color:#1a1204; font-size:11.5px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; vertical-align:middle; box-shadow:0 6px 16px -8px rgba(224,168,46,.8); }
html body.p3d-premium .p3d-viewport { border-color:#2a3142; background:radial-gradient(circle at 50% 30%, #262c3d 0%, #121622 60%, #07090f 100%); }
html body.p3d-premium .p3d-viewport .p3d-vctrl,
html body.p3d-premium .p3d-viewport #p3d-vcam { background:rgba(15,18,28,.9); border-color:#2f3648; }
html body.p3d-premium .p3d-viewport .p3d-vctrl .k3d-vbtn:not(.active):not(.p3d-armed):not(.p3d-blink),
html body.p3d-premium .p3d-viewport #p3d-vcam .k3d-vbtn:not(.active):not(.p3d-armed):not(.p3d-blink) { background:#1f2636; color:#e5e7eb; }
html body.p3d-premium .p3d-viewport .p3d-vctrl .k3d-vsep,
html body.p3d-premium .p3d-viewport #p3d-vcam .k3d-vsep { background:#2f3648; }
html body.p3d-premium .p3d-viewport .k3d-brand span { color:#f4f6f9; }

.p3d-photo-fig { position:relative; display:block; aspect-ratio:16/10; border-radius:12px; overflow:hidden; background:#eef1f5; margin-bottom:10px; }
.p3d-photo-fig img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .3s; }
.p3d-photo-fig:hover img { transform:scale(1.04); }
.p3d-photo-fig::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(15,23,42,0) 45%, rgba(15,23,42,.72) 100%); pointer-events:none; }
.p3d-photo-flow { position:absolute; left:10px; right:10px; bottom:10px; z-index:1; display:flex; align-items:center; justify-content:center; gap:8px; color:#fff; font-size:12px; font-weight:700; }
.p3d-photo-flow > span { display:inline-flex; align-items:center; gap:5px; padding:5px 10px; border-radius:999px; background:rgba(255,255,255,.18); backdrop-filter:blur(3px); white-space:nowrap; }
.p3d-photo-flow > i { font-size:11px; opacity:.85; }
.p3d-photo-pts { list-style:none; margin:4px 0 12px; padding:0; display:flex; flex-wrap:wrap; gap:6px; }
.p3d-photo-pts li { display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border-radius:999px; background:#fff7ed; color:#c2410c; font-size:12px; font-weight:700; }
body.dark-theme .p3d-photo-fig { background:#1a2230; }
body.dark-theme .p3d-photo-pts li { background:#2b1d10; color:#fdba74; }
html body.p3d-premium .p3d-photo-pts li { background:rgba(245,196,81,.12); color:#b45309; }
html body.p3d-premium.dark-theme .p3d-photo-pts li { color:#f5c451; }
