.cv-preview{position:relative;display:block;aspect-ratio:210/297;overflow:hidden;background:#fff}.cv-preview-inner{position:absolute;top:0;left:0;width:210mm;transform-origin:top left;pointer-events:none}.cve-root{position:fixed;inset:0;z-index:40;display:flex;flex-direction:column;overflow:hidden;background:var(--color-light);font-size:13px}.cve-top{flex-shrink:0;gap:10px;height:56px;padding:0 14px;border-bottom:1px solid var(--color-border-color);background:var(--color-white)}.cve-top,.cve-top-group{display:flex;align-items:center}.cve-top-group{gap:8px;min-width:0}.cve-top-toolbar{margin-left:12px}.cve-top-toolbar .studio-segment-btn{width:30px;padding:0;font-size:13px}.cve-top-toolbar .studio-segment-btn:disabled{opacity:.4;filter:none;cursor:default}.cve-top-toolbar .studio-segment.is-active{border-color:var(--color-primary-200);background:var(--color-primary-50)}.cve-top-toolbar .studio-segment-btn.is-muted{opacity:.35}.cve-toolbar-hint{display:none;margin-left:8px;color:var(--color-gray-500);font-size:11.5px;white-space:nowrap}.cve-toolbar-hint.is-visible{display:inline}.cve-top-group.is-end{margin-left:auto;flex-shrink:0}.cve-title-input{height:36px;min-width:140px;max-width:320px;padding:0 10px;border:1px solid transparent;border-radius:var(--radius-lg);background:transparent;color:var(--color-dark);font-size:14px;font-weight:600}.cve-title-input:hover{border-color:var(--color-border-color)}.cve-title-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-white);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 15%,transparent)}.cve-save-state{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--color-gray-500);white-space:nowrap}.cve-save-state.is-error{color:var(--color-danger)}.cve-save-state.is-dirty{color:var(--color-warning)}.cve-save-state.is-saved{color:var(--color-success)}.cve-divider{width:1px;height:22px;background:var(--color-border-color)}.cve-body{display:flex;flex:1 1;min-height:0}.cve-rail{flex-shrink:0;gap:4px;width:78px;padding:10px 8px;border-right:1px solid var(--color-border-color);background:var(--color-white);overflow-y:auto}.cve-rail,.cve-rail-btn{display:flex;flex-direction:column}.cve-rail-btn{align-items:center;justify-content:center;gap:5px;height:60px;border:0;border-radius:var(--radius-xl);background:transparent;color:var(--color-gray-500);font-size:10.5px;font-weight:500;line-height:1;cursor:pointer;transition:background-color .2s,color .2s}.cve-rail-btn i{font-size:19px}.cve-rail-btn:hover{background:var(--color-light);color:var(--color-dark)}.cve-rail-btn.is-on{background:var(--color-primary-50);color:var(--color-primary)}.cve-panel{display:flex;flex-direction:column;flex-shrink:0;width:320px;min-height:0;overflow:hidden;border-right:1px solid var(--color-border-color);background:var(--color-white);animation:cve-panel-in .28s cubic-bezier(.22,1,.36,1)}.cve-panel>*{min-width:320px}@keyframes cve-panel-in{0%{width:0}to{width:320px}}.cve-panel.is-closing{animation:cve-panel-out .24s cubic-bezier(.4,0,1,1) forwards}.cve-panel.is-closing .cve-panel-body{animation:none}@keyframes cve-panel-out{0%{width:320px}to{width:0}}@keyframes cve-panel-body-in{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cve-panel,.cve-panel-body{animation:none}}.cve-panel-head{flex-shrink:0;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--color-border-color)}.cve-panel-head,.cve-panel-title{display:flex;align-items:center;gap:8px}.cve-panel-title{color:var(--color-dark);font-size:13px;font-weight:600}.cve-panel-title i{color:var(--color-primary);font-size:15px}.cve-panel-body{flex:1 1;min-height:0;padding:14px;overflow-y:auto;scrollbar-width:thin;animation:cve-panel-body-in .26s ease-out both;animation-delay:.06s}.cve-block{margin-bottom:18px}.cve-block:last-child{margin-bottom:0}.cve-field-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px;color:var(--color-dark);font-size:12px;font-weight:600}.cve-field-label small{color:var(--color-gray-500);font-size:11px;font-weight:500}.cve-canvas-wrap{position:relative;display:flex;flex:1 1;min-width:0;min-height:0}.cve-canvas{flex:1 1;min-width:0;overflow:auto;background:var(--color-light);scrollbar-width:thin}.cve-canvas-inner{display:flex;justify-content:center;min-width:max-content;padding:28px 40px 140px}.cve-sheet-frame{position:relative;box-shadow:0 10px 34px rgba(15,23,42,.16)}.cve-wave{position:absolute;top:0;inset-inline:0;min-height:100%;z-index:4;background:var(--color-white);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;will-change:transform;-webkit-mask-image:linear-gradient(180deg,#000 -1.8%,rgba(0,0,0,.5) -.9%,transparent 0);mask-image:linear-gradient(180deg,#000 -1.8%,rgba(0,0,0,.5) -.9%,transparent 0)}@media (prefers-reduced-motion:reduce){.cve-wave{display:none}}.cve-zoom-value{min-width:44px;text-align:center;color:var(--color-dark);font-size:11.5px;font-weight:600}.cve-swatches{display:flex;flex-wrap:wrap;gap:8px}.cve-swatch{position:relative;width:28px;height:28px;padding:0;border:2px solid var(--color-white);border-radius:50%;box-shadow:0 0 0 1px var(--color-border-color);cursor:pointer;transition:transform .15s}.cve-swatch:hover{transform:scale(1.08)}.cve-swatch.is-on{box-shadow:0 0 0 2px var(--color-dark)}.cve-swatch.is-custom{overflow:hidden;background:conic-gradient(#f43f5e,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#f43f5e)}.cve-swatch input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.cve-swatch i{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;text-shadow:0 1px 2px rgba(0,0,0,.35)}.cve-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.cve-template-card{padding:0;border:1px solid var(--color-border-color);border-radius:var(--radius-xl);background:var(--color-white);text-align:left;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s}.cve-template-card:hover{border-color:var(--color-primary);box-shadow:0 6px 18px rgba(79,70,229,.14)}.cve-template-card.is-on{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 30%,transparent)}.cve-template-thumb{border-bottom:1px solid var(--color-border-color)}.cve-template-name{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px 10px;color:var(--color-dark);font-size:12px;font-weight:600}.cve-template-name i{color:var(--color-primary)}.cve-section-row{display:flex;align-items:center;gap:6px;margin-bottom:6px;padding:7px 8px 7px 10px;border:1px solid var(--color-border-color);border-radius:var(--radius-lg);background:var(--color-white);transition:border-color .2s,background-color .2s}.cve-section-row.is-active{border-color:var(--color-primary);background:var(--color-primary-50)}.cve-section-row.is-hidden{background:var(--color-light)}.cve-section-name{display:flex;flex:1 1;align-items:center;gap:8px;min-width:0;color:var(--color-dark);font-size:12.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}button.cve-section-name{padding:0;border:0;background:none;cursor:pointer}.cve-section-name i{flex-shrink:0;color:var(--color-gray-400);font-size:13px}.cve-section-name span{min-width:0;overflow:hidden;text-overflow:ellipsis}.cve-section-actions{display:flex;flex-shrink:0;align-items:center;gap:2px}.cve-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.cve-add-btn{display:flex;align-items:stretch;border:1px solid var(--color-border-color);border-radius:var(--radius-lg);background:var(--color-white);color:var(--color-dark);transition:border-color .2s,color .2s}.cve-add-main{display:flex;flex:1 1;align-items:center;gap:8px;min-width:0;padding:9px 10px;border:0;background:transparent;color:inherit;font-size:12px;font-weight:500;text-align:left;cursor:pointer}.cve-add-main i{flex-shrink:0;color:var(--color-primary);font-size:15px}.cve-add-main span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cve-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.cve-add-btn.is-added{background:var(--color-light);color:var(--color-gray-500)}.cve-add-btn.is-added .cve-add-main{cursor:default}.cve-add-btn.is-added .cve-add-main i{color:var(--color-success)}.cve-row-handle{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:24px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-gray-400);font-size:14px;cursor:-webkit-grab;cursor:grab;touch-action:none}.cve-row-handle:hover{background:var(--color-primary-50);color:var(--color-primary)}.cve-row-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.cve-add-btn .cve-row-handle{border-left:1px solid var(--color-border-color);border-radius:0 var(--radius-lg) var(--radius-lg) 0}.cve-section-row .cve-row-handle{height:24px;margin-left:-4px}.cve-bg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.cve-bg-tile{display:flex;flex-direction:column;gap:5px;padding:5px;border:1px solid var(--color-border-color);border-radius:var(--radius-lg);background:var(--color-white);cursor:pointer;transition:border-color .2s,box-shadow .2s}.cve-bg-tile.is-on,.cve-bg-tile:hover{border-color:var(--color-primary)}.cve-bg-tile.is-on{box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 30%,transparent)}.cve-bg-thumb{position:relative;display:flex;flex-direction:column;gap:4px;aspect-ratio:210/297;padding:10px 8px;border:1px solid var(--color-border-color);border-radius:4px;background-color:#fff;overflow:hidden}.cve-bg-thumb-line{display:block;height:3px;border-radius:2px;background:rgba(100,116,139,.35)}.cve-bg-thumb-line.is-short{width:60%}.cve-bg-name{color:var(--color-dark);font-size:11px;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cve-font-option{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:0;border-radius:var(--radius-lg);background:transparent;color:var(--color-dark);text-align:left;cursor:pointer}.cve-font-option.is-on,.cve-font-option:hover{background:var(--color-primary-50)}.cve-font-name{flex-shrink:0;font-size:15px;line-height:1.2}.cve-font-sample{min-width:0;color:var(--color-gray-500);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cve-font-option i{margin-left:auto;color:var(--color-primary)}.cve-required-badge{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border:1px solid #fecaca;border-radius:999px;background:#fef2f2;color:#b91c1c;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}.cve-required-badge:hover{background:#fee2e2}.cve-photo-editor{display:flex;flex-wrap:wrap;align-items:flex-start;gap:22px}.cve-photo-main{flex-shrink:0;width:360px;max-width:100%}.cve-photo-side{flex:1 1;min-width:220px;padding:16px;border:1px solid var(--color-border-color);border-radius:var(--radius-lg);background:var(--color-light)}.cve-photo-side .studio-help{margin-top:12px}.cve-photo-stage{position:relative;flex-shrink:0;max-width:100%;border-radius:var(--radius-lg);background:var(--color-light);overflow:hidden;touch-action:none}.cve-photo-crop{position:absolute;inset:0;pointer-events:none}.cve-photo-crop-line{position:absolute;background:rgba(255,255,255,.55)}.cve-photo-crop-line.is-v1,.cve-photo-crop-line.is-v2{top:0;bottom:0;width:1px}.cve-photo-crop-line.is-v1{left:33.333%}.cve-photo-crop-line.is-v2{left:66.666%}.cve-photo-crop-line.is-h1,.cve-photo-crop-line.is-h2{left:0;right:0;height:1px}.cve-photo-crop-line.is-h1{top:33.333%}.cve-photo-crop-line.is-h2{top:66.666%}.cve-photo-crop.is-round .cve-photo-crop-line{opacity:.6}.cve-photo-crop-corner{position:absolute;width:18px;height:18px;border:3px solid #fff;filter:drop-shadow(0 0 2px rgba(15,23,42,.5))}.cve-photo-crop-corner.is-tl{top:6px;left:6px;border-right:0;border-bottom:0}.cve-photo-crop-corner.is-tr{top:6px;right:6px;border-left:0;border-bottom:0}.cve-photo-crop-corner.is-bl{bottom:6px;left:6px;border-right:0;border-top:0}.cve-photo-crop-corner.is-br{bottom:6px;right:6px;border-left:0;border-top:0}.cve-photo-crop.is-round .cve-photo-crop-corner{display:none}.cve-photo-slider{margin-top:10px}.cve-photo-zoom-row{display:flex;align-items:center;gap:8px}.cve-photo-zoom-row .studio-range{flex:1 1;min-width:0}.cve-photo-actions--tight{margin-top:8px}.cve-photo-backdrops{display:flex;align-items:center;gap:8px;margin-top:6px}.cve-photo-backdrop{width:26px;height:26px;border-radius:50%;border:2px solid var(--color-border-color);cursor:pointer;box-shadow:inset 0 0 0 1px rgba(15,23,42,.06)}.cve-photo-backdrop.is-on{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(79,70,229,.2)}.cve-photo-backdrop-label{font-size:12px;color:var(--color-gray-500)}.cve-photo-slider:first-child{margin-top:14px}.cve-photo-previews{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px;margin-top:6px}.cve-photo-preview-item{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0}.cve-photo-preview-item figcaption{font-size:11px;color:var(--color-gray-500)}.cve-photo-preview-canvas{display:block;border-radius:8px;border:1px solid var(--color-border-color);background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.12)}.cve-photo-preview-canvas.is-round{border-radius:50%}.cve-photo-preview-canvas.is-alpha,.cve-photo-stage.is-alpha{background-color:#ffffff;background-image:linear-gradient(45deg,#e2e8f0 25%,transparent 0),linear-gradient(-45deg,#e2e8f0 25%,transparent 0),linear-gradient(45deg,transparent 75%,#e2e8f0 0),linear-gradient(-45deg,transparent 75%,#e2e8f0 0);background-size:14px 14px;background-position:0 0,0 7px,7px -7px,-7px 0}.cve-photo-preview-canvas.is-placeholder{background:repeating-linear-gradient(45deg,#f1f5f9 0 8px,#e2e8f0 8px 16px)}.cve-photo-canvas{display:block;cursor:-webkit-grab;cursor:grab;touch-action:none}.cve-photo-canvas:active{cursor:-webkit-grabbing;cursor:grabbing}.cve-photo-mask{position:absolute;inset:0;background:radial-gradient(circle at center,transparent 0,transparent 49.6%,rgba(15,23,42,.5) 50%);pointer-events:none}.cve-photo-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:16px;color:var(--color-gray-500);font-size:12.5px;text-align:center}.cve-photo-controls{width:100%}.cve-score{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--color-border-color);border-radius:var(--radius-xl);background:var(--color-white)}.cve-score-ring{flex-shrink:0;width:64px;height:64px;background:conic-gradient(var(--cve-score-color) var(--cve-score),var(--color-gray-200) 0)}.cve-score-ring,.cve-score-ring span{display:flex;align-items:center;justify-content:center;border-radius:50%}.cve-score-ring span{width:50px;height:50px;background:var(--color-white);color:var(--color-dark);font-size:18px;font-weight:700}.cve-score--success{--cve-score-color:var(--color-success)}.cve-score--warning{--cve-score-color:var(--color-warning)}.cve-score--danger{--cve-score-color:var(--color-danger)}.cve-score-title{display:block;color:var(--color-dark);font-size:13px;font-weight:600}.cve-score-text{margin:2px 0 0;color:var(--color-gray-500);font-size:12px;line-height:1.5}.cve-check-list{margin:0;padding:0;list-style:none}.cve-check-list li{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--color-border-color)}.cve-check-list li:last-child{border-bottom:0}.cve-check-list li>i{flex-shrink:0;margin-top:2px;color:var(--color-gray-400);font-size:15px}.cve-check-list li.is-ok>i{color:var(--color-success)}.cve-check-label{display:block;color:var(--color-dark);font-size:12.5px;font-weight:500}.cve-check-label small{color:var(--color-gray-400);font-size:10.5px}.cve-check-hint{display:block;margin-top:2px;color:var(--color-gray-500);font-size:11.5px;line-height:1.45}.cve-match-bar{height:8px;border-radius:999px;background:var(--color-gray-200);overflow:hidden}.cve-match-bar span{display:block;height:100%;border-radius:999px;background:var(--color-danger);transition:width .3s}.cve-match-bar.is-mid span{background:var(--color-warning)}.cve-match-bar.is-good span{background:var(--color-success)}.cve-chip-wrap{display:flex;flex-wrap:wrap;gap:6px}.cve-chip{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 9px;border:1px solid var(--color-border-color);border-radius:999px;background:var(--color-white);color:var(--color-gray-700);font-size:11.5px;font-weight:500}.cve-chip i{font-size:11px}.cve-chip.is-missing{border-color:#fecaca;background:#fef2f2;color:#b91c1c;cursor:pointer}.cve-chip.is-missing:hover{background:#fee2e2}.cve-chip.is-matched{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.cve-suggest-block{margin-bottom:8px;padding:10px 12px;border:1px solid var(--color-border-color);border-radius:var(--radius-lg);background:var(--color-white)}.cve-suggest-text{margin:0 0 8px;font-size:12.5px}.cve-suggest-text,.cve-tip-list{color:var(--color-gray-700);line-height:1.55}.cve-tip-list{margin:0;padding-left:16px;font-size:12px}.cve-tip-list li{margin-bottom:4px;list-style:disc}.cve-tip-list.is-warning li::marker{color:var(--color-warning)}.cve-range-row{display:flex;align-items:center;gap:10px}.cve-range-row .studio-range{flex:1 1}.cve-range-value{min-width:56px;font-size:11.5px;font-weight:600;text-align:right}.cve-note,.cve-range-value{color:var(--color-gray-700)}.cve-note{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:var(--radius-lg);background:var(--color-primary-50);font-size:12px;line-height:1.5}.cve-note i{flex-shrink:0;margin-top:1px;color:var(--color-primary);font-size:14px}.cve-preview-bar{flex-shrink:0;gap:10px;padding:8px 14px;border-bottom:1px solid var(--color-border-color);background:var(--color-primary-50);color:var(--color-gray-700);font-size:12.5px}.cve-center,.cve-preview-bar{display:flex;align-items:center;justify-content:center}.cve-center{flex:1 1;padding:40px;color:var(--color-gray-500)}.cve-share-link{display:flex;align-items:center;gap:8px}.cve-share-link input{flex:1 1;min-width:0}.cve-photo-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.cve-photo-preview{width:56px;height:56px;border-radius:var(--radius-lg);object-fit:cover;border:1px solid var(--color-border-color)}.cve-photo-row{display:flex;align-items:center;gap:12px}@media (max-width:1279px){.cve-toolbar-hint{display:none!important}}@media (max-width:1023px){.cve-panel{position:absolute;top:0;bottom:0;left:78px;z-index:6;box-shadow:12px 0 30px rgba(15,23,42,.12)}.cve-body{position:relative}}.cvg-hero{border-radius:var(--radius-2xl);background:var(--background-image-primary-gradient);color:var(--color-white)}.cvg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:22px;gap:22px}.cvg-card{display:flex;flex-direction:column;border:1px solid var(--color-border-color);border-radius:var(--radius-2xl);background:var(--color-white);box-shadow:0 1px 2px #1018280d;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}.cvg-card:hover{transform:translateY(-3px);border-color:var(--color-primary);box-shadow:0 14px 34px rgba(79,70,229,.16)}.cvg-thumb{position:relative;overflow:hidden;padding:15px 15px 0;border-bottom:1px solid var(--color-border-color);background:var(--color-light)}.cvg-thumb .cv-preview{border-radius:5px 5px 0 0;box-shadow:0 10px 26px -14px #10182866,0 0 0 1px #1018280f;transition:transform .24s cubic-bezier(.32,.72,0,1)}.cvg-card:hover .cvg-thumb .cv-preview{transform:translateY(-6px)}.cvg-thumb-overlay{position:absolute;inset:0;flex-direction:column;gap:8px;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(0deg,rgba(15,23,42,.62),rgba(15,23,42,.1) 62%);opacity:0;transition:opacity .2s}.cvg-card:hover .cvg-thumb-overlay{opacity:1}.cvg-body{display:flex;flex-direction:column;gap:10px;padding:16px}.cvg-tags{display:flex;flex-wrap:wrap;gap:4px}.cvg-swatches{display:flex;gap:5px}.cvg-swatch{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.cvl-shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));grid-gap:26px 22px;gap:26px 22px}.cvl-tile{display:flex;flex-direction:column;gap:8px;min-width:0;color:inherit;text-decoration:none}.cvl-paper{position:relative;aspect-ratio:210/297;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.14),0 8px 18px rgba(15,23,42,.09);transition:box-shadow .22s,transform .22s}.cvl-tile:hover .cvl-paper{transform:translateY(-3px);box-shadow:0 2px 4px rgba(15,23,42,.16),0 16px 34px rgba(79,70,229,.22)}.cvl-paper .cv-preview{aspect-ratio:auto;height:100%}.cvl-paper:after{content:"";position:absolute;inset:0;border-radius:10px;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);pointer-events:none}.cvl-tile.is-primary .cvl-paper:after{box-shadow:inset 0 0 0 2px var(--color-success)}.cvl-veil{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px;background:linear-gradient(180deg,rgba(15,23,42,.55),rgba(15,23,42,.78));opacity:0;transition:opacity .2s}.cvl-tile:focus-within .cvl-veil,.cvl-tile:hover .cvl-veil{opacity:1}.cvl-tile:focus-within .cvl-veil-ghost,.cvl-tile:focus-within .cvl-veil-primary,.cvl-tile:hover .cvl-veil-ghost,.cvl-tile:hover .cvl-veil-primary{opacity:1;transform:translateY(0) scale(1)}.cvl-kebab .studio-icon-btn-sm{transform:scale(.85);transition:transform .2s cubic-bezier(.34,1.56,.64,1),background .18s}.cvl-tile:focus-within .cvl-kebab .studio-icon-btn-sm,.cvl-tile:hover .cvl-kebab .studio-icon-btn-sm{transform:scale(1)}.cvl-veil-ghost,.cvl-veil-primary{opacity:0;transform:translateY(10px) scale(.96);transition:opacity .24s ease-out,transform .28s cubic-bezier(.22,1,.36,1),background .18s,color .18s;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;max-width:148px;padding:7px 12px;border-radius:999px;font-size:12.5px;font-weight:600;text-decoration:none;cursor:pointer;border:1px solid transparent}.cvl-veil>:first-child{transition-delay:.02s}.cvl-veil>:nth-child(2){transition-delay:.07s}.cvl-veil>:nth-child(3){transition-delay:.12s}.cvl-veil-primary{background:var(--color-white);color:var(--color-primary)}.cvl-veil-primary:hover{background:var(--color-primary);color:#fff}.cvl-veil-ghost{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.7);color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cvl-veil-ghost:hover{background:rgba(255,255,255,.28);color:#fff}.cvl-veil-ghost:disabled{opacity:.6;cursor:default}.cvl-flag{position:absolute;top:8px;left:8px;z-index:3;display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:var(--color-success);color:#fff;font-size:10.5px;font-weight:600;box-shadow:0 2px 6px rgba(22,163,74,.35)}.cvl-kebab{position:absolute;top:6px;right:6px;z-index:4;opacity:0;transition:opacity .2s}.cvl-tile:focus-within .cvl-kebab,.cvl-tile:hover .cvl-kebab{opacity:1}.cvl-kebab .studio-icon-btn-sm{background:#fff;border-color:transparent;box-shadow:0 2px 8px rgba(15,23,42,.25)}.cvl-name{display:block;color:var(--color-dark);font-size:13.5px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.cvl-name:hover{color:var(--color-primary)}.cvl-sub{display:flex;align-items:center;gap:5px;min-width:0;color:var(--color-gray-500);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cvl-swatch{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px rgba(15,23,42,.12)}.cvl-bar{display:flex;align-items:center;gap:7px}.cvl-bar,.cvl-bar-track{position:relative;min-width:0}.cvl-bar-track{flex:1 1;background:#e2e8f0}.cvl-bar-fill,.cvl-bar-track{height:4px;border-radius:999px}.cvl-bar-fill{position:absolute;inset-inline-start:0;top:0;max-width:100%;background:var(--color-danger)}.cvl-bar-fill.is-mid{background:var(--color-warning)}.cvl-bar-fill.is-good{background:var(--color-success)}.cvl-bar em{font-style:normal;font-size:10.5px;color:var(--color-gray-500);flex-shrink:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cvl-tile.is-new .cvl-paper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px;border:1.5px dashed var(--color-border-color);background:linear-gradient(180deg,#fff,var(--color-light));box-shadow:none;text-align:center}.cvl-tile.is-new .cvl-paper:after{display:none}.cvl-tile.is-new:hover .cvl-paper{border-color:var(--color-primary);transform:translateY(-3px);box-shadow:0 12px 26px rgba(79,70,229,.16)}.cvl-new-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--color-primary-50);color:var(--color-primary);font-size:19px}.cvl-new-title{font-size:13px;font-weight:600;color:var(--color-dark)}.cvl-new-hint{font-size:11px;color:var(--color-gray-500)}.cvl-tile-gone .cvl-paper-gone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:14px;border:1.5px dashed var(--color-border-color);background:var(--color-light);box-shadow:none;text-align:center}.cvl-tile-gone .cvl-paper-gone:after{display:none}.cvl-gone-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--color-gray-500);font-size:18px}.cvl-gone-title{font-size:12.5px;font-weight:600;color:var(--color-dark);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cvl-gone-hint{font-size:11px;color:var(--color-gray-500)}.cvf-toolbar{animation:cvf-toolbar-in .16s cubic-bezier(.22,1,.36,1);position:fixed;z-index:10001;display:flex;flex-direction:column;gap:6px;padding:5px;border:1px solid var(--color-border-color);border-radius:12px;background:var(--color-white);box-shadow:0 14px 40px rgba(15,23,42,.22);font-family:Inter,Segoe UI,system-ui,sans-serif;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cvf-row{display:flex;flex-wrap:nowrap;align-items:center;gap:2px;overflow-x:auto;scrollbar-width:none}.cvf-row>*{flex:0 0 auto}.cvf-btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:5px;height:30px;min-width:30px;padding:0 6px;border:0;border-radius:8px;background:transparent;color:var(--color-gray-700);font-size:13px;font-weight:500;cursor:pointer;transition:background-color .15s,color .15s}.cvf-btn i{font-size:14px;line-height:1}.cvf-btn:hover{background:var(--color-light);color:var(--color-dark)}.cvf-btn.is-on{background:var(--color-primary-50);color:var(--color-primary)}.cvf-btn--wide span{font-size:12px}.cvf-caret{font-size:11px!important;color:var(--color-gray-400)}.cvf-aa{font-size:11px;font-weight:800;letter-spacing:.02em}.cvf-sep{width:1px;height:20px;margin:0 3px;background:var(--color-border-color)}.cvf-pop{border-top:1px solid var(--color-border-color);padding-top:6px}@keyframes cvf-toolbar-in{0%{opacity:0;transform:translateY(-4px) scale(.97)}to{opacity:1;transform:none}}.cvf-pop{animation:cvf-pop-in .16s ease-out}@keyframes cvf-pop-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.cvf-pop--font{display:flex;flex-direction:column;gap:6px}.cvf-search{height:30px;padding:0 10px;border:1px solid var(--color-border-color);border-radius:8px;font-size:12.5px;color:var(--color-dark)}.cvf-search:focus{outline:none;border-color:var(--color-primary)}.cvf-font-list{max-height:220px;overflow-y:auto;scrollbar-width:thin}.cvf-eyebrow{display:block;padding:6px 8px 2px;color:var(--color-gray-400);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.cvf-font{display:block;width:100%;padding:5px 8px;border:0;border-radius:6px;background:transparent;color:var(--color-dark);font-size:15px;text-align:left;cursor:pointer}.cvf-font:hover{background:var(--color-primary-50)}.cvf-empty{display:block;padding:10px;color:var(--color-gray-500);font-size:12px;text-align:center}.cvf-reset{align-self:flex-start;height:26px;padding:0 10px;border:1px solid var(--color-border-color);border-radius:999px;background:var(--color-white);color:var(--color-gray-700);font-size:11.5px;font-weight:500;cursor:pointer}.cvf-reset:hover{border-color:var(--color-primary);color:var(--color-primary)}.cvf-pop--spacing{display:flex;flex-direction:column;gap:8px;min-width:260px}.cvf-spacing-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cvf-spacing-input{display:inline-flex;align-items:center;gap:4px;color:var(--color-gray-500);font-size:11.5px}.cvf-num{width:64px;height:26px;padding:0 6px;border:1px solid var(--color-border-color);border-radius:6px;background:var(--color-white);color:var(--color-dark);font-size:12px;font-weight:600;text-align:center}.cvf-num:focus{border-color:var(--color-primary);outline:none}.cvf-range{width:100%;accent-color:var(--color-primary);cursor:pointer}.cvf-spacing-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.cvf-apply{height:26px;padding:0 14px;border:0;border-radius:999px;background:var(--color-primary);color:var(--color-white);font-size:11.5px;font-weight:600;cursor:pointer}.cvf-pop--size{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.cvf-size{min-width:34px;height:28px;padding:0 6px;border:1px solid var(--color-border-color);border-radius:6px;background:var(--color-white);color:var(--color-dark);font-size:12px;font-weight:600;cursor:pointer}.cvf-size.is-on,.cvf-size:hover{border-color:var(--color-primary);color:var(--color-primary)}.cvf-size.is-on{background:var(--color-primary-50)}.cvf-btn--swatch{flex-direction:column;gap:1px;padding:0 5px}.cvf-color-bar{display:block;width:16px;height:3px;border-radius:2px;box-shadow:0 0 0 1px rgba(15,23,42,.18)}.cvf-color-bar.is-none{position:relative;overflow:hidden}.cvf-color-bar.is-none:after{content:"";position:absolute;inset:0;border-top:1px solid #ef4444;transform:rotate(-12deg)}.cvf-pop--colors{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.cvf-swatch{position:relative;width:24px;height:24px;padding:0;border:1px solid rgba(15,23,42,.15);border-radius:6px;cursor:pointer}.cvf-swatch:hover{transform:scale(1.1)}.cvf-swatch--none:after{content:"";position:absolute;inset:4px;border-top:2px solid #ef4444;transform:rotate(-45deg) translateY(8px)}.cvf-swatch--custom{overflow:hidden;background:conic-gradient(#f43f5e,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#f43f5e)}.cvf-swatch--custom input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.cvg-card:focus-within .cvl-veil-ghost,.cvg-card:hover .cvl-veil-ghost{opacity:1;transform:translateY(0) scale(1)}.cvg-thumb-overlay .studio-btn-primary{width:100%;max-width:148px;justify-content:center}.cvg-body{flex:1 1 auto}.cvg-swatchrow{display:flex;align-items:center;gap:10px;margin-bottom:8px}.cvg-swatchlabel{flex-shrink:0;font-size:11.5px;line-height:1.5}.cvg-cta{margin-top:auto}.cvg-thumb-overlay .studio-btn-primary{opacity:0;transform:translateY(12px) scale(.96);transition:opacity .24s ease-out,transform .28s cubic-bezier(.22,1,.36,1)}.cvg-card:focus-within .cvg-thumb-overlay .studio-btn-primary,.cvg-card:hover .cvg-thumb-overlay .studio-btn-primary{opacity:1;transform:translateY(0) scale(1)}.cvg-card:focus-within .cvl-veil-ghost,.cvg-card:hover .cvl-veil-ghost{transition-delay:.07s}.cvg-head{min-width:0}.cvg-body .cvg-name{margin-bottom:2px;line-height:1.4}.cvg-body .cvg-industry{margin-bottom:4px;line-height:1.4}.cvg-body .cvg-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:calc(2 * 1.35em);margin-bottom:0;line-height:1.35;overflow:hidden}.cvg-tags{flex-wrap:nowrap;overflow:hidden}.cvg-tags .studio-pill{flex-shrink:0;white-space:nowrap}.cvg-tags .studio-pill:last-child{min-width:0;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.cvg-wait{border-radius:5px 5px 0 0;background:linear-gradient(180deg,#ffffff,#f4f6f9);box-shadow:0 10px 26px -14px #10182866,0 0 0 1px #1018280f}.cvf-bar{position:relative;z-index:7;display:flex;flex-shrink:0;border-bottom:1px solid var(--color-border-color);background:var(--color-white)}.cvf-bar-in{position:relative;gap:12px;width:100%;padding:5px 14px;font-family:Inter,Segoe UI,system-ui,sans-serif;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cvf-bar-in,.cvf-bar-row{display:flex;align-items:center;min-width:0}.cvf-bar-row{flex-wrap:wrap;gap:2px}.cvf-bar-row>*{flex:0 0 auto}.cvf-bar-hint{flex-shrink:0;color:var(--color-gray-500);font-size:11.5px;white-space:nowrap}.cvf-btn:disabled{opacity:.4;filter:none;background:transparent;color:var(--color-gray-700);cursor:default}.cvf-pop--down{position:absolute;top:calc(100% - 1px);z-index:8;max-width:calc(100vw - 32px);padding:8px;border:1px solid var(--color-border-color);border-top:0;border-radius:0 0 12px 12px;background:var(--color-white);box-shadow:0 16px 34px rgba(15,23,42,.18)}.cvf-pop--down.cvf-pop--font{width:288px}.cvf-pop--down.cvf-pop--colors,.cvf-pop--down.cvf-pop--size,.cvf-pop--down.cvf-pop--spacing{width:300px}.cvf-pop--down .cvf-font-list{max-height:min(340px,50vh)}@media (max-width:1679px){.cvf-bar-hint{display:none}}@media (max-width:1439px){.cvf-bar .cvf-btn--wide span{display:none}.cvf-bar .cvf-btn--wide{padding:0 4px}}.cvf-pop--list{display:flex;flex-direction:column;gap:2px;width:200px}.cvf-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:var(--color-dark);font-size:13px;text-align:left;cursor:pointer}.cvf-choice.is-on,.cvf-choice:hover{background:var(--color-primary-50)}.cvf-choice.is-on{color:var(--color-primary)}.cvf-choice-note{color:var(--color-gray-400);font-size:11px;font-weight:400}.cvf-size-custom{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin-top:2px;padding-top:8px;border-top:1px solid var(--color-border-color)}.cvf-toolbar .cvf-row{flex-wrap:wrap;overflow-x:visible}.cvf-pop--link{display:flex;flex-direction:column;gap:8px;width:300px}.cvf-pop--link .cvf-search{width:100%}.cvf-link-error{color:var(--color-danger);font-size:11.5px}.cvf-link-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.cvg-thumb .jx-hd-thumbbox{border-radius:5px 5px 0 0;box-shadow:0 10px 26px -14px #10182866,0 0 0 1px #1018280f;transition:transform .24s cubic-bezier(.32,.72,0,1)}.cvg-card:hover .cvg-thumb .jx-hd-thumbbox{transform:translateY(-6px)}@media (max-width:575.98px){.cvg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cvg-card:hover{transform:none}.cvg-thumb{padding:10px 10px 0}.cvg-thumb-overlay{padding:10px}.cvg-thumb-overlay .cvl-veil-ghost,.cvg-thumb-overlay .studio-btn-primary{font-size:12px}.cvg-body{gap:8px;padding:10px 10px 12px}.cvg-body .cvg-name{font-size:13px}.cvg-body .cvg-desc{display:none}.cvg-swatchrow{margin-bottom:0}.cvg-swatchlabel{display:none}.cvg-swatches{flex-wrap:wrap}.cvg-cta{height:auto;min-height:36px;padding:6px;font-size:12px;line-height:1.3;text-align:center;white-space:normal}.cvg-cta>i{display:none}.cvg-tags{flex-wrap:wrap;row-gap:4px}.cvg-tags .studio-pill{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cvg-tags .studio-pill:nth-child(n+3){display:none}.cvl-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.cvl-sub{flex-wrap:wrap;row-gap:1px;line-height:1.45;white-space:normal}}@media (hover:none) and (pointer:coarse){.cvg-swatches .cve-swatch:after{content:"";position:absolute;inset:-3px}}