.case-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.case-card{border:1px solid #dce5f1;border-radius:16px;overflow:hidden;text-decoration:none;color:#17365d;background:white;transition:transform .18s,border-color .18s}.case-card:hover{transform:translateY(-3px);border-color:#1769ed}.case-card:focus-visible{outline:3px solid #1769ed;outline-offset:3px}.case-photo{aspect-ratio:4/3;position:relative;background:#fff}.case-photo img{height:100%;width:100%;object-fit:contain}.case-photo small{position:absolute;top:14px;left:14px;background:#fff3d9;color:#80581d;padding:5px 10px;border-radius:6px}.case-card-copy{padding:22px}.case-card h3{font-size:20px;margin:0 0 14px}.case-tags{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 22px}.case-tags span{font-size:12px;padding:5px 9px;border-radius:5px;background:#f0f5fc;color:#476487}.case-card b{color:#0969ed;font-size:14px}.case-empty{padding:42px;background:#f6f8fc;border-radius:12px;color:#677f9c}.case-admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.case-admin-row{display:flex;align-items:center;gap:22px;padding:18px;border:1px solid #dce5f1;border-radius:12px;background:white;margin:12px 0}.case-admin-row img{width:110px;height:90px;object-fit:contain}.case-admin-row h3{margin:0}.case-row-actions{display:flex;gap:8px;margin-left:auto}.case-admin-editor{padding:28px;background:#fff;border:1px solid #dce5f1;border-radius:14px;margin-top:24px}.case-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.case-editor-grid label{display:grid;gap:8px;font-size:14px}.case-editor-grid select,.case-editor-grid input{box-sizing:border-box;min-width:0;width:100%;padding:12px;border:1px solid #cbd9ec;border-radius:7px;font:inherit;background:white;color:#17365d}.case-editor-checks{display:flex;flex-wrap:wrap;gap:20px;margin:24px 0}.case-editor-checks label{display:flex;align-items:center;gap:6px}.case-upload-preview{width:180px;height:150px;object-fit:contain;margin-top:18px}.case-editor-note{color:#7186a1;font-size:13px}.case-edit-actions{display:flex;gap:12px}.case-quote-body{margin:0;background:#f5f8fc;color:#18375c;font-family:Arial,'Microsoft YaHei',sans-serif}.case-quote-header{padding:22px max(24px,calc((100vw - 1200px)/2));background:#183b66;color:white;display:flex;align-items:center;justify-content:space-between;gap:20px}.case-quote-header a{color:inherit;text-decoration:none}.case-quote-header strong{font-size:22px}.case-quote-main{max-width:1200px;margin:40px auto;padding:0 24px}.case-quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px}.case-quote-visual,.case-quote-form{padding:30px;background:white;border:1px solid #e0e8f2;border-radius:16px;min-width:0}.case-quote-visual img{width:100%;aspect-ratio:1;object-fit:contain}.case-quote-visual h1{font-size:26px;margin:18px 0 10px}.case-quote-visual p,.case-quote-form>p{font-size:14px;color:#7185a0}.case-quote-form h2{font-size:23px;margin:0 0 12px}.case-size-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.case-quote-form label{font-size:14px}.case-quote-form input[type=number]{display:block;box-sizing:border-box;width:100%;min-width:0;padding:14px;border:1px solid #c6d7ee;border-radius:7px;margin:9px 0 20px;font-size:16px}.case-quote-form details{border-top:1px solid #e0e8f2;padding-top:20px;margin-top:25px}.case-quote-form summary{cursor:pointer;color:#1267df;margin-bottom:20px}.case-quote-body button{font:inherit;border:1px solid #c7d8ef;background:white;color:#1667d9;border-radius:8px;padding:13px 20px;cursor:pointer}.case-quote-body button.primary{background:#096cef;color:white;border-color:#096cef}.case-quote-body button:disabled{opacity:.5;cursor:wait}.case-price{padding:22px 0;border-top:1px solid #e0e8f2;margin-top:24px;min-height:95px}.case-price strong{display:block;font-size:36px;color:#086bea;margin:8px 0}.case-price p{margin:8px 0;color:#6a809e;font-size:14px}.case-quote-actions{display:flex;gap:12px;flex-wrap:wrap}.case-error{color:#b3261e!important}.case-quote-body footer{padding:28px;text-align:center;font-size:12px;color:#7185a0}.case-quote-body footer a{color:inherit}.case-quote-meta{padding:12px;background:#f4f8ff;border-radius:8px;font-size:13px;color:#5f7693}.case-quote-form>button{width:100%}
@media(max-width:760px){.case-gallery{grid-template-columns:1fr}.case-quote-layout{grid-template-columns:1fr;gap:18px}.case-quote-main{padding:0 14px;margin:20px auto}.case-quote-visual,.case-quote-form{padding:22px}.case-quote-visual img{max-height:280px}.case-admin-row{flex-wrap:wrap}.case-row-actions{margin-left:0}.case-editor-grid{grid-template-columns:1fr}.case-quote-header{padding:18px}.case-quote-header strong{font-size:18px}}

.case-selected-finishes{margin:20px 0}.case-selected-finishes h4{margin:0 0 12px}.case-selected-finishes .case-editor-checks{align-items:center}.case-selected-finishes select{min-width:180px}.case-more-finishes,.case-quote-settings{border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px;margin:14px 0;background:#fff}.case-more-finishes summary,.case-quote-settings summary{cursor:pointer;color:#1767e8;font-size:14px}.case-more-finishes[open] summary,.case-quote-settings[open] summary{margin-bottom:16px}.case-included-process{color:#64748b}

/* Match the public site header without changing quote form behavior. */
.case-quote-body .official-top{background:#fff;max-width:1320px;box-sizing:border-box;font:15px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif}
.case-quote-body .official-top a{text-decoration:none;color:inherit}
.case-quote-body .official-top .nav-quote{color:#fff}
.case-quote-body .official-top a:focus-visible,.case-quote-body button:focus-visible,.case-quote-body summary:focus-visible{outline:3px solid #1767e8;outline-offset:4px}
.case-quote-visual p,.case-quote-form>p,.case-price p,.case-editor-note{color:#526780}
.case-quote-form .dimension-help{border:1px solid #dce5f1;border-radius:8px;background:#f7faff;padding:12px 14px;margin:10px 0 18px;font-size:14px;line-height:1.7}
.case-quote-form .dimension-help summary{margin:0;font-weight:600}
.case-quote-form .dimension-help p{margin:10px 0 0;color:#425973}
.case-save-guide{margin-top:18px;padding:14px;background:#f7faff;border:1px solid #e0e8f2;border-radius:8px;font-size:13px;line-height:1.7;color:#526780}
.case-save-guide p{margin:0 0 8px}.case-save-guide p:last-child{margin-bottom:0}
.case-quote-body .official-top *{box-sizing:border-box}

.case-gallery-main{display:block;width:100%;padding:0;border:0;background:#fff;cursor:zoom-in;touch-action:pan-y}.case-gallery-main img{display:block;width:100%;height:360px;object-fit:contain}.case-gallery-caption{font-size:13px;color:#526780;line-height:1.6}.case-gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px}.case-gallery-thumbs button{flex:0 0 68px;padding:3px;background:#fff;border:1px solid #dce5f1;border-radius:8px;cursor:pointer}.case-gallery-thumbs button[aria-pressed=true]{border:2px solid #1767e8}.case-gallery-thumbs img{width:60px;height:60px;object-fit:contain}.case-copy-section{margin-top:24px}.case-copy-section h2{font-size:18px}.case-copy-section p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:#526780}.case-usage-label{display:inline-block;background:#edf4ff;padding:4px 10px;border-radius:6px;color:#1767e8}.case-image-viewer{box-sizing:border-box;width:min(1000px,94vw);max-height:94dvh;border:0;border-radius:12px;padding:20px;background:#fff;color:#17304e}.case-image-viewer::backdrop{background:#132439b3}.case-image-viewer img{display:block;max-width:100%;width:100%;height:70dvh;object-fit:contain}.case-image-viewer p{white-space:pre-wrap;overflow-wrap:anywhere}.case-viewer-close{display:block;margin-left:auto;padding:10px 16px;cursor:pointer}.case-gallery-edit-row{display:flex;gap:14px;align-items:center;border:1px solid #dce5f1;padding:12px;border-radius:8px;margin:10px 0}.case-gallery-edit-row>img{width:80px;height:80px;object-fit:contain}.case-gallery-edit-row label{flex:1;min-width:0}.case-gallery-edit-row>div{display:flex;gap:6px;flex-wrap:wrap}.case-editor-grid textarea{font:inherit;width:100%;box-sizing:border-box;resize:vertical;padding:10px;border:1px solid #c7d6e9;border-radius:6px}@media(max-width:600px){.case-gallery-main img{height:260px}.case-gallery-edit-row{flex-wrap:wrap}.case-gallery-edit-row>div{width:100%}}

.case-quantity-comparison{margin:20px 0;padding-top:16px;border-top:1px solid #dce5f1}.case-quantity-comparison[hidden]{display:none}.case-quantity-comparison h3{font-size:19px;margin:0 0 10px}.case-quantity-comparison p{font-size:13px;color:#526780;line-height:1.7}.case-quantity-tier{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border:1px solid #dce5f1;border-radius:8px;padding:14px;margin:10px 0}.case-quantity-tier.current{background:#eff6ff;border-color:#8eb7ff}.case-quantity-tier>div{display:grid;gap:5px}.case-quantity-tier strong{font-size:16px;color:#1767e8}.case-quantity-tier small,.case-quantity-tier span{font-size:13px;color:#526780}.case-quantity-tier .case-quantity-saving{color:#187241}.case-quantity-tier button{padding:10px 14px;background:white;border:1px solid #bcd3f6;border-radius:6px;color:#1767e8;cursor:pointer}

/* Preserve uploaded artwork without adding a tint or shadow. */
.case-gallery-main,.case-gallery-main img,.case-gallery-thumb img,.case-image-viewer img{background:#fff;box-shadow:none;filter:none}

/* Case editing follows the customer-facing content order. */
.case-admin-editor .case-editor-grid label{font-size:16px}.case-admin-editor h3{font-size:19px;margin:26px 0 14px}.case-admin-editor small{font-size:13px;line-height:1.7;color:#526780;font-weight:400}.case-admin-editor textarea{box-sizing:border-box;width:100%;min-width:0;padding:12px;font-family:inherit;font-size:16px;line-height:1.7;border:1px solid #cbd9ec;border-radius:7px;resize:vertical;color:#17365d}.case-editor-wide{grid-column:1/-1}


.case-admin-more{margin:20px 0;border:1px solid #dce5f1;border-radius:8px;padding:14px}.case-admin-more>summary{cursor:pointer;font-size:16px;color:#526780}.case-admin-more[open]>summary{margin-bottom:16px}
