/* VINNYDARCEK: media-based storefront + operations workspace. */
:root{--commerce-border:#dde3df;--commerce-surface:#fff;--commerce-muted:#65736e}
.product-no-photo{width:100%;min-height:160px;aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;background:#f0f3f0;color:#64746d;text-align:center;border:1px dashed #ced8d1;border-radius:10px;overflow:hidden}
.product-no-photo>.icon{width:38px;height:38px}.product-no-photo small{font-size:12px}.product-no-photo .no-photo-label{width:45%;max-height:140px;overflow:hidden}.no-photo-label svg{width:100%;height:auto}
.product-mockup{position:relative;display:block;margin:0 auto;width:100%;max-width:480px;line-height:0;overflow:hidden;border-radius:6px}.product-mockup>img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain;pointer-events:none}.mockup-label{position:absolute;line-height:0;transform-origin:center;overflow:hidden;filter:drop-shadow(0 1px 1px #0002)}.mockup-label svg{display:block;width:100%!important;height:100%!important;max-height:none!important}
.physical-label{display:block;max-width:100%;height:auto}.vd-real-product-photo{width:100%;height:100%;object-fit:contain!important;background:#fff}.vd-card-visual,.product-art,.vd-type-photo,.detail-visual{background:#fff}.detail-visual>.product-mockup{max-width:390px}.detail-visual>.vd-real-product-photo{max-height:650px}.detail-thumb .product-no-photo{min-height:60px;padding:4px}.detail-thumb .product-no-photo small,.detail-thumb .product-no-photo span{display:none}.detail-thumb .product-mockup{max-height:none}.detail-thumb-row{overflow-x:auto;display:flex;scroll-snap-type:x proximity}.detail-thumb{flex:0 0 86px;scroll-snap-align:start}.editor-stage>.product-mockup{max-width:330px}.editor-stage.label-stage>.physical-label{max-height:63vh;max-width:min(75%,380px);width:auto;filter:drop-shadow(0 8px 18px #253b381a)}.editor-stage>.product-no-photo{max-width:310px}.cart-thumb .product-mockup,.order-line-art .product-mockup{height:auto;max-height:100%}.cart-thumb .product-no-photo,.order-line-art .product-no-photo{min-height:90px;padding:6px}.cart-thumb .product-no-photo small,.order-line-art .product-no-photo small{display:none}.quality-art .product-mockup{max-width:270px}.quality-art>div>.physical-label{width:85%;max-height:360px;margin:auto}.ad-measure{text-align:center;font-size:13px;font-weight:650;letter-spacing:.02em;color:#1f605b;margin:12px 0;line-height:1.5}
.admin-shell.ad-shell{background:#f4f5f4;color:#202b27;font:14px/1.5 Arial,sans-serif}.ad-shell .admin-sidebar{width:244px;background:#eaf0ec;border-right:1px solid #d9e1dc;padding:25px 16px}.ad-shell .admin-main{margin-left:244px;background:#f4f5f4}.ad-shell .admin-sidebar .logo{padding:3px 10px 22px;transform:none}.ad-shell .admin-sidebar .logo-name{font-size:20px}.ad-shell .admin-sidebar .logo>.icon{width:34px;height:34px}.ad-shell .admin-nav-label{font-size:11px;color:#68766e;text-transform:uppercase;letter-spacing:.065em;margin:21px 11px 6px}.ad-shell .admin-nav a{border-radius:8px;margin:2px 0;min-height:40px;padding:9px 12px;font-size:13px;font-weight:550;color:#344d42}.ad-shell .admin-nav a.active{background:#d3e3db;color:#123c33;box-shadow:inset 3px 0 #1f605b}.ad-shell .admin-nav a:hover{background:#dfe8e1}.ad-shell .admin-nav .icon{width:18px;height:18px}.ad-shell .admin-sidebar-bottom{border-top:1px solid #d2dcd5;padding-top:16px}.ad-shell .admin-top{min-height:66px;border-bottom:1px solid #dce3df;background:#fff;box-shadow:0 1px 3px #1a342009;position:sticky;top:0;z-index:20;padding:12px 30px}.ad-shell .admin-top .search-field{background:#f1f4f1;border:1px solid #dfe5e0;border-radius:8px;min-height:40px;max-width:560px}.ad-shell .admin-top .search-field input{font-size:13px}.ad-shell .admin-body{padding:30px;max-width:1560px;margin:0 auto}.ad-shell h1{font-family:Arial,sans-serif;font-size:28px;letter-spacing:-.65px;line-height:1.25;font-weight:700}.ad-shell h2{font-family:Arial,sans-serif;font-size:16px;font-weight:700;letter-spacing:-.2px}.ad-shell h3{font-family:Arial,sans-serif;font-size:14px;font-weight:650}.ad-shell .admin-heading{align-items:center;margin:0 0 24px}.ad-shell .admin-heading p{font-size:13px;color:#68766e;margin-top:8px;max-width:660px}.ad-shell .ad-eyebrow{font-size:10px;letter-spacing:.07em;color:#758278;margin-bottom:7px}.ad-shell .panel{background:#fff;border:1px solid #dfe5e0;border-radius:12px;box-shadow:0 1px 3px #162b1510;padding:22px;margin-bottom:20px}.ad-shell .panel h2{margin-bottom:16px}.ad-shell .panel-head{margin-bottom:16px}.ad-shell .panel-head h2{margin-bottom:4px}.ad-shell .panel-head p{font-size:12px;color:#6e7972}.ad-shell .btn{border-radius:8px;font-size:13px;min-height:39px;padding:9px 15px;background:#1f605b;color:#fff;box-shadow:0 1px 2px #14332e18}.ad-shell .btn.outline{background:#fff;color:#2b4338;border:1px solid #ccd7cf}.ad-shell .btn:hover{filter:brightness(.96)}.ad-shell .small-btn{min-height:34px;padding:6px 11px;font-size:12px}.ad-shell .field{margin-bottom:16px}.ad-shell label,.ad-shell .field label{font-size:13px;font-weight:500}.ad-shell .field input,.ad-shell .field select,.ad-shell .field textarea{border:1px solid #bccac1;border-radius:7px;background:#fff;min-height:40px;color:#273c32;padding:10px 12px;font:14px/1.45 Arial,sans-serif}.ad-shell .field textarea{min-height:100px;resize:vertical}.ad-shell input:focus,.ad-shell select:focus,.ad-shell textarea:focus{outline:2px solid #71a59a;outline-offset:1px}.ad-shell .check{font-size:13px;align-items:flex-start;line-height:1.5;gap:10px;margin:12px 0}.ad-shell .check input{margin-top:3px;flex-shrink:0}.ad-shell .data-table th{background:#f7f9f7;color:#5d6d62;font-size:12px;border-bottom:1px solid #dde5de;padding:12px 16px}.ad-shell .data-table td{border-bottom:1px solid #edf0ec;padding:15px 16px;font-size:13px}.ad-shell .data-table tr:hover td{background:#f9fbf9}.ad-shell .status{border-radius:6px;padding:4px 8px;font:11px/1.3 Arial,sans-serif}.ad-shell .status.pending,.ad-shell .status.new{color:#785f16;background:#fff0bf}.ad-shell .status.approved,.ad-shell .status.ready,.ad-shell .status.done,.ad-shell .status.shipped{color:#26573c;background:#dff0e2}.ad-shell .status.review{color:#4f4184;background:#eae5f6}.ad-shell .status.test{color:#53635a;background:#edf1ed}.ad-shell .note-card{background:#f4f7f3;border:1px solid #dce6dc;border-radius:8px;font-size:12px;color:#58685c;padding:14px}.ad-shell .ad-filters{gap:12px;background:#fff;border:1px solid #dee5df;border-radius:10px;padding:16px;margin-bottom:16px}.ad-shell .ad-control input,.ad-shell .ad-control select{min-height:38px;border:1px solid #c4d0c7;border-radius:7px}.ad-shell .ad-stat{box-shadow:none}.ad-shell .ad-test-note{font-size:12px;background:#fff4dd;border:1px solid #ecdfbf;border-radius:7px;color:#716236;padding:10px 15px;margin-bottom:20px}.ad-shell .ad-sync{font-size:11px;max-width:150px;color:#607467}.ad-product-heading .text-link{font-size:12px;margin-bottom:14px}.ad-product-heading .text-link .icon{width:16px}.ad-product-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.ad-product-grid>.stack{gap:0;min-width:0}.ad-product-aside{min-width:0}.ad-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.ad-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.ad-media-card{border:1px solid #e0e5df;border-radius:9px;overflow:hidden;position:relative}.ad-media-card img{width:100%;height:140px;object-fit:contain;background:#fafbfa}.ad-media-card>span{position:absolute;left:6px;top:6px;font-size:10px;background:#fff;border-radius:4px;padding:2px 5px;box-shadow:0 1px 3px #0001}.ad-media-card>div{display:flex;gap:4px;padding:6px;justify-content:space-between}.ad-media-card>div .btn{font-size:10px;padding:5px;min-height:30px}.ad-upload{border:1.5px dashed #a6bdae;border-radius:9px;min-height:120px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;background:#f8faf7;padding:15px;position:relative;cursor:pointer}.ad-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.ad-upload .icon{width:22px;height:22px}.ad-upload span{font-size:11px;color:#708074}.ad-mockup-source{margin:14px 0}.ad-mockup-source img{width:110px;height:150px;object-fit:contain;border:1px solid #dbe3db;border-radius:7px}.ad-calibration-card #calibration-preview{min-height:220px;background:repeating-conic-gradient(#f1f3f0 0% 25%,#fff 0% 50%) 50% / 16px 16px;border:1px solid #e4e9e2;border-radius:7px;padding:0;overflow:hidden}.ad-calibration-card .product-mockup{max-width:100%}.ad-calibration-card .product-no-photo{border:0}.ad-url{font-size:12px;background:#f2f5f1;padding:12px;border-radius:6px;overflow-wrap:anywhere}.ad-occasion-fields{border:0;margin:20px 0 0;padding:0}.ad-occasion-fields legend{font-weight:600;margin-bottom:5px}.ad-savebar{position:sticky;bottom:12px;margin:12px 0 0;background:#fff;box-shadow:0 4px 20px #1f382721;border:1px solid #cad8ce;border-radius:10px;display:flex;gap:10px;padding:12px 16px;z-index:15;align-items:center}.ad-savebar>span{flex:1;font-size:12px;color:#5c7163}.ad-cms-media{padding:16px 0;border-bottom:1px solid #e2e8e0}.ad-cms-media label{display:grid;gap:10px}.ad-cms-media img{width:100%;max-height:170px;object-fit:cover;margin-top:12px;border-radius:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.ad-product-thumb{width:44px;height:55px;overflow:hidden;border-radius:5px;background:#f1f4ef;flex-shrink:0}.ad-product-thumb .vd-real-product-photo{height:55px}.ad-product-thumb .product-no-photo{min-height:55px;padding:5px}.ad-product-thumb .product-no-photo span,.ad-product-thumb .product-no-photo small{display:none}
@media(min-width:1001px){.ad-shell .ad-bottom-nav{display:none}.ad-shell .ad-mobile-logo{display:none}.ad-shell .admin-sidebar{position:fixed;top:0;bottom:0;overflow:auto}.ad-shell .admin-body .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1200px){.ad-product-grid{grid-template-columns:minmax(0,1fr) 270px}.ad-shell .admin-body{padding:22px}.ad-shell .admin-top{padding:12px 20px}}
@media(max-width:1000px){.ad-shell .admin-sidebar{display:none}.ad-shell .admin-main{margin-left:0}.ad-shell .admin-body{padding:24px 20px 105px}.ad-shell .admin-top{padding:12px 18px}.ad-shell .ad-bottom-nav{background:#fff;border-top:1px solid #dce5dd}.ad-shell .ad-bottom-nav a[aria-current=page]{color:#1f605b;background:#e7f0e9}.ad-shell .ad-mobile-logo{font-size:13px}.ad-savebar{bottom:80px}.ad-product-aside .ad-calibration-card{position:sticky;top:90px}}
@media(max-width:760px){.ad-product-grid{grid-template-columns:1fr}.ad-product-aside{display:contents}.ad-product-aside .ad-calibration-card{position:static;order:0}.ad-shell .admin-body{padding:20px 12px 105px}.ad-shell h1{font-size:25px}.ad-shell .panel{padding:18px 15px}.ad-shell .admin-heading{gap:16px;flex-wrap:wrap}.ad-shell .admin-heading>.row{width:100%;justify-content:flex-end}.ad-shell .admin-top{padding:10px 12px}.ad-shell .admin-top-actions .ad-sync{display:none}.ad-shell .field input,.ad-shell .field select,.ad-shell .field textarea{font-size:16px;min-height:44px}.ad-shell .btn,.ad-shell .small-btn{min-height:44px}.ad-shell .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ad-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ad-media-card img{height:170px}.ad-media-card>div .btn{min-height:40px;font-size:11px}.ad-savebar{padding:10px;border-radius:8px;bottom:76px;flex-wrap:wrap}.ad-savebar>span{flex:1 0 100%;font-size:11px}.ad-savebar>.btn{flex:1;font-size:12px}.ad-presets .btn{flex:1 0 40%;font-size:11px}.ad-calibration-card #calibration-preview{max-width:340px;margin:auto}.ad-shell .ad-filters{padding:12px}.ad-shell .data-table td{padding:8px 10px}.editor-stage.label-stage>.physical-label{max-height:360px;max-width:230px}.editor-stage>.product-mockup{max-width:230px}.detail-visual>.product-mockup{max-width:300px}.ad-shell .quality-layout{grid-template-columns:1fr}.ad-shell .order-detail-grid{grid-template-columns:1fr}.product-no-photo{min-height:125px;padding:12px}.product-no-photo>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Constrain the entire photo, so calibration stays relative to uncropped image pixels. */
.product-mockup{width:min(100%,calc(var(--mockup-height,500px) * var(--photo-ratio,.67)))}
.ad-product-cell>div:not(.ad-product-thumb){width:auto;height:auto;min-width:0;flex:1;background:transparent;border-radius:0;overflow:visible}.ad-product-cell .ad-product-thumb{width:48px;height:60px}.ad-product-cell a{color:#244e3d}.ad-product-cell small{display:block;color:#6e7b70;margin-top:4px}
.editor-stage{--mockup-height:min(59vh,500px)}.editor-stage>.product-mockup{max-width:90%}.editor-stage.zoom>.product-mockup{transform:scale(1.12)}.ad-calibration-card{--mockup-height:410px}.ad-calibration-card .product-mockup{margin:auto}.proof-art{--mockup-height:450px}.cart-thumb,.order-line-art{--mockup-height:150px}.quality-art{--mockup-height:360px}.ad-kanban .kanban-preview{--mockup-height:120px}.ad-kanban .kanban-preview .product-mockup{margin:auto}.detail-thumb{--mockup-height:90px}.detail-thumb>.physical-label{max-height:85px;width:auto;margin:auto}
@media(max-width:950px){.editor-stage{--mockup-height:min(43vh,410px)}}
@media(max-width:760px){.editor-stage{--mockup-height:min(36vh,300px)}.ad-calibration-card{--mockup-height:390px}.proof-art{--mockup-height:320px}}

/* Proof content must determine its own height; images must never cover consent. */
.proof-form .proof-grid{align-items:start}
.proof-visuals{min-width:0}
.proof-design{margin:0}
.proof-design figcaption{font-size:14px;font-weight:700;margin:0 0 12px;color:#253b38}
.proof-form .proof-art{height:auto;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px;background:#edf2ee;border:1px solid #dce5df;border-radius:9px}
.proof-form .proof-art>svg{display:block;width:100%;height:auto;max-width:100%;max-height:420px;object-fit:contain}
.proof-dimensions{font-size:12px;color:#65736e;margin:10px 0 0;text-align:center}
.proof-product{margin-top:20px;border-top:1px solid #dce5df;padding-top:14px}
.proof-product summary{min-height:44px;cursor:pointer;font-size:14px;font-weight:600;line-height:1.5;padding:10px 0}
.proof-product-photo{overflow:hidden;border-radius:8px;background:white;--mockup-height:350px}
.proof-product p{font-size:12px;line-height:1.6;margin:10px 0 0;color:#65736e}
.proof-form .proof-confirmation{position:relative;display:flex;align-items:flex-start;gap:12px;margin:24px 0 0;padding:16px;min-height:60px;width:100%;border:1px solid #adc9bf;border-radius:9px;background:#edf6f1;color:#253b38;cursor:pointer;font-size:14px;line-height:1.6}
.proof-confirmation>input{display:block;position:static;appearance:auto;opacity:1;visibility:visible;flex:0 0 22px;width:22px;height:22px;margin:1px 0 0;accent-color:#1f605b;cursor:pointer}
.proof-confirmation>input:focus-visible{outline:3px solid #1f605b;outline-offset:3px}
.proof-confirmation>span{min-width:0}
.proof-form .proof-error{margin:10px 0 0;color:#9e3328;font-size:13px;line-height:1.5}
.proof-form .proof-error[hidden]{display:none}
.proof-form .modal-actions{margin-top:18px}
@media(max-width:700px){.proof-form .proof-grid{display:grid;grid-template-columns:1fr;gap:20px}.proof-form .proof-details{padding:0}.proof-form .proof-art>svg{max-height:340px}.proof-form .proof-confirmation{padding:14px;font-size:14px}.proof-form .modal-actions>.btn{min-height:46px}.proof-product-photo{--mockup-height:280px}}
