:root{font-family:Arial,Helvetica,sans-serif;color:#202020;background:#f5f5f2;font-size:16px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{height:72px;background:#fff;border-bottom:1px solid #e6e6e2;display:flex;align-items:center;gap:28px;padding:0 max(28px,calc((100vw - 1440px)/2));color:#464646}.brand{font-size:1.42rem;font-weight:900;letter-spacing:-.095em;text-decoration:none;color:#151515;white-space:nowrap}.site-header>span{border-left:1px solid #d8d8d3;padding-left:28px;font-size:.88rem}.site-link{margin-left:auto;font-weight:700;font-size:.88rem;text-decoration:none}.site-link:hover,.selected-panel a:hover{text-decoration:underline}main{max-width:1440px;margin:auto;padding:48px 28px 64px}.page-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}.kicker{font-size:.72rem;font-weight:800;letter-spacing:.15em;color:#7a7a75;margin:0 0 10px}.page-heading h1{font-size:clamp(2.15rem,4vw,3.6rem);letter-spacing:-.06em;line-height:1.02;margin:0 0 12px}.page-heading p:last-child{color:#666;margin:0;font-size:1.05rem}.step-count{font-size:.9rem;font-weight:700;color:#858580}.workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.83fr);gap:22px;align-items:start}.photo-panel,.product-panel,.action-panel{background:#fff;border:1px solid #e8e8e5;border-radius:12px}.photo-panel,.product-panel{padding:24px}.section-heading,.section-heading>div{display:flex;align-items:center}.section-heading{justify-content:space-between;margin-bottom:22px;gap:12px}.section-heading>div{gap:12px}.section-heading h2,.action-panel h2{font-size:1.25rem;letter-spacing:-.03em;margin:0}.step{width:28px;height:28px;background:#202020;color:#fff;border-radius:50%;font-size:.83rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;flex:none}.section-hint{font-size:.78rem;color:#777;text-align:right}.photo-stage{position:relative;aspect-ratio:4/3;min-height:360px;border:1px dashed #bdbdb6;background:#f3f2ef;border-radius:8px;overflow:hidden;display:grid;place-items:center}.photo-stage.dragover{border-color:#e07a32;background:#fff4ea}.photo-stage>img{display:block;width:100%;height:100%;object-fit:contain;background:#222}.upload-placeholder{text-align:center;padding:24px;display:flex;flex-direction:column;align-items:center;gap:10px;color:#72726e}.upload-placeholder strong{font-size:1.25rem;color:#232323;letter-spacing:-.03em}.upload-icon{width:60px;height:60px;border-radius:50%;background:#fff;box-shadow:0 1px 10px #00000012;display:grid;place-items:center;font-size:2rem;color:#d36b24;margin-bottom:8px}.upload-button,.replace-photo,.primary-button,.secondary-button{border:0;border-radius:5px;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px}.upload-button,.primary-button{background:#ed7628;color:#161616}.upload-button{margin-top:10px;cursor:pointer}.upload-button:hover,.primary-button:hover:not(:disabled){background:#d96417}.primary-button:disabled{background:#d8d8d4;color:#7a7a76}.replace-photo{position:absolute;right:16px;bottom:16px;background:#fff;color:#181818;box-shadow:0 2px 12px #0002}.examples{padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:#777}.example-list{display:flex;gap:7px;flex-wrap:wrap}.example-list button{background:#f5f5f2;border:1px solid #dfdfda;border-radius:4px;padding:8px 11px;font-size:.8rem;font-weight:700}.example-list button:hover{border-color:#202020}.surface-choice{border:0;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}.surface-choice legend{font-size:.82rem;font-weight:800;margin-bottom:10px}.surface-choice label{position:relative;cursor:pointer}.surface-choice input{position:absolute;opacity:0}.surface-choice span{display:block;border:1px solid #d5d5d0;border-radius:5px;padding:11px 16px;font-size:.87rem;font-weight:700}.surface-choice input:checked+span{background:#202020;color:#fff;border-color:#202020}.surface-choice input:focus-visible+span{outline:3px solid #ed7628;outline-offset:2px}.surface-note{font-size:.82rem;color:#666;line-height:1.45;margin:12px 0 22px;min-height:20px}.search-row input{width:100%;height:46px;border:1px solid #cfcfca;border-radius:5px;padding:0 14px;background:#fff}.search-row input:focus{outline:2px solid #ed7628;outline-offset:1px}.category-tabs{display:flex;gap:7px;overflow-x:auto;padding:16px 0 4px}.category-tabs button{flex:none;border:1px solid #deded9;background:#fff;border-radius:40px;padding:8px 13px;font-size:.82rem;font-weight:700}.category-tabs button.active{background:#202020;color:#fff;border-color:#202020}.product-result-line{display:flex;justify-content:space-between;align-items:center;padding:13px 0;font-size:.81rem;color:#656560}.product-result-line button{border:0;background:none;text-decoration:underline;color:#333;font-size:.8rem}.product-grid{height:405px;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:max-content;gap:10px;align-content:start;padding-right:3px}.product-card{min-width:0;background:#fff;border:1px solid #e1e1dc;border-radius:6px;padding:0;text-align:left;overflow:hidden;transition:border-color .15s,box-shadow .15s}.product-card:hover,.product-card.selected{border-color:#ed7628;box-shadow:0 0 0 1px #ed7628}.product-card img{width:100%;aspect-ratio:1.22;object-fit:cover;background:#eae9e4;display:block}.card-info{display:flex;flex-direction:column;padding:10px;min-height:88px}.card-info small{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#8a6d54;font-weight:800}.card-info strong{font-size:.82rem;line-height:1.25;margin-top:5px;overflow-wrap:anywhere}.card-info span{font-size:.72rem;color:#777;margin-top:auto;padding-top:6px}.empty{grid-column:1/-1;padding:35px;text-align:center;color:#666}.selected-panel{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;border:1px solid #e8e8e2;background:#fafaf8;border-radius:6px;padding:12px;margin-top:18px}.selected-panel img{width:112px;height:112px;object-fit:cover;border-radius:4px}.selected-panel>div{display:flex;flex-direction:column;align-items:start;gap:6px;min-width:0}.selected-panel span{font-size:.69rem;font-weight:800;color:#777;text-transform:uppercase;letter-spacing:.08em}.selected-panel strong{font-size:.94rem;line-height:1.25}.selected-panel label{font-size:.76rem;font-weight:700;margin-top:4px}.selected-panel select{width:100%;height:36px;border:1px solid #ccc;border-radius:4px;padding:0 8px;background:#fff;font-size:.8rem}.selected-panel a{font-size:.75rem;font-weight:700;margin-top:3px}.action-panel{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding:20px 24px}.action-panel>div{display:flex;align-items:center;gap:13px}.action-panel p{font-size:.82rem;color:#777;margin:5px 0 0}.action-panel .primary-button{min-width:220px}.disclaimer{max-width:880px;color:#777;font-size:.78rem;line-height:1.55;margin:19px 0 0}.modal{position:fixed;inset:0;z-index:20;background:#000b;display:grid;place-items:center;padding:20px}.modal-card{background:#fff;border-radius:10px;width:min(100%,1060px);max-height:calc(100vh - 40px);overflow:auto;padding:20px}.modal-heading,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:15px}.modal-heading h2{font-size:1.4rem;margin:0 0 15px;letter-spacing:-.03em}.icon-button{border:0;background:#f2f2ef;border-radius:50%;height:38px;width:38px;font-size:1.55rem}.compare{position:relative;width:100%;height:min(70vh,680px);background:#222;overflow:hidden}.compare>img,.before img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.before{position:absolute;inset:0;z-index:1}.divider{position:absolute;z-index:2;top:0;bottom:0;width:3px;background:#fff;box-shadow:0 0 8px #0008;pointer-events:none}.divider:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:42px;width:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#111;font-size:1.3rem;box-shadow:0 2px 8px #0004}.compare-label{position:absolute;z-index:2;top:14px;background:#fff;color:#222;border-radius:3px;padding:5px 9px;font-size:.72rem;font-weight:800}.label-before{left:14px}.label-after{right:14px}.compare input{position:absolute;z-index:4;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}.modal-actions{padding-top:16px;font-size:.81rem;color:#777}.modal-actions>div{display:flex;gap:8px}.secondary-button{background:#f0f0ec;color:#222}.busy-card{background:#fff;border-radius:10px;padding:45px;text-align:center;max-width:400px}.busy-card h2{margin:20px 0 8px;font-size:1.3rem}.busy-card p{color:#666;line-height:1.5}.busy-card>span{color:#777;font-size:.82rem}.spinner{width:46px;height:46px;margin:auto;border:4px solid #f0e4db;border-top-color:#ed7628;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;z-index:30;left:50%;bottom:22px;transform:translateX(-50%);max-width:min(90vw,600px);background:#202020;color:#fff;border-radius:6px;padding:14px 18px;box-shadow:0 10px 30px #0003;font-size:.9rem}@media(max-width:1050px){.workspace{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-stage{max-height:600px}}@media(max-width:680px){.site-header{height:62px;padding:0 17px}.site-header>span{display:none}.brand{font-size:1.25rem}.site-link{font-size:.75rem}main{padding:30px 14px 42px}.page-heading{margin-bottom:20px}.page-heading h1{font-size:2.3rem}.page-heading p:last-child{font-size:.93rem}.step-count{display:none}.photo-panel,.product-panel{padding:16px}.section-hint{font-size:.67rem}.photo-stage{min-height:290px;aspect-ratio:1/1}.upload-placeholder strong{font-size:1rem}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));height:410px}.action-panel{padding:17px;align-items:stretch;flex-direction:column}.action-panel .primary-button{width:100%}.modal{padding:0}.modal-card{border-radius:0;max-height:100vh;min-height:100vh;padding:15px}.compare{margin:0 -15px;max-height:65vh}.modal-actions{align-items:stretch;flex-direction:column}.modal-actions>div{display:grid;grid-template-columns:1fr 1fr}.modal-actions .primary-button,.modal-actions .secondary-button{font-size:.8rem;padding:0 8px}}
