:root{--ink:#203c38;--paper:#fff;--muted:#69716e;--line:#dce2de;--soft:#f3f5f2;--accent:#af5b3c;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;background:var(--paper)}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a.button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #ce8253;outline-offset:4px}header{min-height:104px;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px;background:#fff;position:sticky;top:0;z-index:10}.brand{font-size:28px;font-weight:700;letter-spacing:5px}.brand span{display:block;font-size:10px;letter-spacing:1.5px;font-weight:400;margin-top:7px}.selection-link{font-size:14px;white-space:nowrap;display:flex;align-items:center;gap:12px}.selection-link b{background:var(--ink);color:white;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:13px}main{max-width:1320px;margin:0 auto;padding:45px 5% 70px;min-height:70vh}footer{border-top:1px solid var(--line);padding:25px 5%;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;line-height:1.7}footer a{font-size:14px;text-decoration:underline}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(36px,5vw,60px);line-height:1.08;letter-spacing:-1.5px;margin-bottom:18px}h2{font-size:24px;font-weight:500}h3{font-size:18px;font-weight:500}p{line-height:1.6}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:20px}.intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:30px}.intro p{max-width:380px;color:var(--muted);margin-bottom:4px}.collection-meta{font-size:12px;letter-spacing:1px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:30px;display:flex;justify-content:space-between}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 30px}.chip{border:1px solid var(--line);padding:11px 15px;background:white;color:var(--ink);border-radius:2px;font-size:14px;min-height:42px}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 24px}.product-card{position:relative}.photo{background:#eef0ed;overflow:hidden;aspect-ratio:4/3;margin-bottom:16px;position:relative}.photo img{width:100%;height:100%;object-fit:cover;display:block}.sample-photo img{object-fit:cover;transform:scale(2.4);transform-origin:var(--focus,50% 50%)}.demo-image-label{position:absolute;bottom:10px;left:10px;background:#ffffffde;padding:4px 7px;font-size:10px;color:#555;letter-spacing:1px}.product-card .meta{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:10px;margin-bottom:9px}.product-card h3{margin:0 0 12px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.small-button{border:1px solid var(--line);background:white;color:var(--ink);padding:9px 13px;font-size:13px;min-height:42px}.small-button.selected{background:var(--soft)}.text-link{text-decoration:underline;text-underline-offset:4px;font-size:14px}.subtle{color:var(--muted);font-size:14px}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--ink);background:var(--ink);color:white;padding:17px 24px;min-height:54px;font-size:14px;font-weight:600;letter-spacing:.3px;border-radius:2px}.button.secondary,button.secondary{background:white;color:var(--ink);border:1px solid var(--line);padding:15px 22px}.full{width:100%}.back{display:inline-block;margin-bottom:28px;font-size:14px;color:var(--muted)}.detail{display:grid;grid-template-columns:1.12fr 1fr;gap:65px;align-items:start}.detail .photo{aspect-ratio:1/1}.detail h1{font-size:46px;margin:16px 0 20px}.detail .desc{color:var(--muted)}dl{margin:25px 0 30px}dl>div{display:grid;grid-template-columns:120px 1fr;gap:12px;border-bottom:1px solid var(--line);padding:14px 0;font-size:14px;line-height:1.5}dt{color:var(--muted)}dd{margin:0}.notes{font-size:13px;color:var(--muted);margin-top:20px}.narrow{max-width:780px;margin:auto}.page-title{margin-bottom:35px}.page-title h1{font-size:46px}.list-row{display:flex;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.list-row .photo{width:100px;min-width:100px;height:85px;aspect-ratio:auto;margin:0}.list-row h3{margin:6px 0}.list-row .remove{margin-left:auto;background:none;border:0;color:var(--muted);font-size:14px;text-decoration:underline;padding:12px}.list-info{flex:1}.actions{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:32px}.empty{padding:65px 20px;background:var(--soft);text-align:center}.empty h2{font-family:Georgia,serif;font-size:32px}.empty p{color:var(--muted)}.steps{display:flex;gap:20px;font-size:13px;color:var(--muted);margin-bottom:35px}.steps b{color:var(--ink)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:9px;font-size:14px}.field.wide{grid-column:1/-1}.field input,.field textarea{border:1px solid #b9c5bf;background:white;color:var(--ink);padding:15px;width:100%;border-radius:2px;min-height:50px}.field textarea{min-height:110px;resize:vertical}.field small{color:var(--muted)}.contact-review{background:var(--soft);padding:25px;margin:22px 0}.contact-review p{margin:5px 0;overflow-wrap:anywhere;white-space:pre-wrap}.alert{padding:14px 18px;background:#fff2df;border:1px solid #ebd1a8;color:#754d1d;font-size:14px;line-height:1.6;margin:20px 0}.success-icon{font-size:24px;width:55px;height:55px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;margin-bottom:25px}.receipt-id{font-family:monospace;font-size:18px;letter-spacing:1px}.error{color:#a72e22;line-height:1.6;font-size:14px}.loading{padding:40px;color:var(--muted)}#notice:empty{display:none}#notice{background:#f4e9db;color:#694e30;text-align:center;padding:9px 16px;font-size:12px;line-height:1.5}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:15px 22px;background:var(--ink);color:white;box-shadow:0 5px 25px #0002;z-index:50;max-width:90vw;font-size:14px;display:none}.admin-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.panel{border:1px solid var(--line);padding:24px;margin-bottom:24px}.panel h2{font-size:20px}.panel p{font-size:14px;color:var(--muted)}.panel input[type=file]{width:100%;margin-bottom:15px;font-size:14px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:14px 10px;vertical-align:top;line-height:1.5}th{font-size:12px;letter-spacing:.7px;color:var(--muted);font-weight:500}td button{background:none;border:0;text-decoration:underline;color:var(--ink);font:inherit;cursor:pointer;padding:0}.admin-detail{border:1px solid var(--line);padding:25px;margin-top:25px}.admin-detail h2{overflow-wrap:anywhere}.metric{font-family:Georgia,serif;font-size:44px;margin:0}.file-result{overflow-wrap:anywhere;white-space:pre-wrap;font-size:14px}.qr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.qr-card{border:1px dashed #aaa;text-align:center;padding:20px;break-inside:avoid}.qr-card img{width:160px;height:160px}.qr-card h2{font-size:22px;margin:10px 0}.qr-card small{overflow-wrap:anywhere;display:block;font-size:10px}.print-page{padding:30px}.offline{background:#fff2df!important}.hidden{display:none!important}@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.detail{gap:30px}.detail h1{font-size:36px}.intro{align-items:start}.intro p{max-width:280px}.admin-grid{grid-template-columns:1fr}}@media(max-width:600px){header{min-height:85px;padding:20px 5%;gap:10px}.brand{font-size:23px;letter-spacing:3px}.brand span{font-size:8px;letter-spacing:.7px}.selection-link{font-size:12px;gap:6px}.selection-link b{width:24px;height:24px}main{padding-top:28px}.intro{display:block}.intro p{max-width:none;margin-top:16px}.collection-meta{font-size:10px}.grid{gap:28px 14px}.product-card h3{font-size:16px;line-height:1.4}.product-card .meta{display:block;line-height:1.7}.product-card .meta span{display:block}.card-bottom{display:block}.card-bottom .subtle{display:block;margin-bottom:9px;font-size:12px}.small-button{width:100%}.detail{grid-template-columns:1fr;gap:18px}.detail .photo{aspect-ratio:4/3}.detail h1{font-size:38px}.filters{gap:6px}.chip{font-size:12px;padding:10px}.form-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.actions{align-items:stretch;flex-direction:column-reverse}.actions .button,.actions button{width:100%}.actions .text-link{text-align:center;padding:10px}.page-title h1{font-size:38px}.list-row{gap:13px}.list-row .photo{width:76px;min-width:76px;height:76px}.list-row h3{font-size:16px}.list-row .remove{padding:5px;font-size:12px}.list-row .subtle{font-size:12px}footer{display:block}footer a{display:block;margin-top:12px}.admin-head{align-items:start}.admin-head h1{font-size:36px}.qr-grid{grid-template-columns:1fr}.admin-nav .button{padding:12px;font-size:12px}.panel{padding:18px}}@media print{.print-help{display:none}.qr-grid{grid-template-columns:repeat(2,1fr)}.qr-card{break-inside:avoid}.print-page{padding:0}header,footer{display:none}}
.scan-cta{display:flex;align-items:center;gap:22px;background:var(--soft);padding:20px;margin:18px 0 28px}.scan-cta span{color:var(--muted);font-size:14px}.scan-page h1{margin-bottom:14px}.scan-progress{display:flex;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px;margin:24px 0}.scan-box{background:#f3f5f2;padding:20px;margin:22px 0}.scan-box video{display:block;width:100%;max-height:390px;aspect-ratio:4/3;object-fit:cover;background:#203c38;border-radius:2px}.scan-box p{font-size:14px;margin:16px 0}.scan-box button+button,.scan-found button+button{margin-top:10px}.manual-scan{display:flex;align-items:end;gap:10px;margin-top:22px}.manual-scan .field{flex:1}.manual-scan button{min-width:125px}.scan-found{border:1px solid var(--line);padding:20px;margin:24px 0}.scan-found .photo{max-width:420px}.scan-found h2{margin:12px 0 5px}.scan-found p{color:var(--muted);font-size:14px}@media(max-width:600px){.scan-cta{display:block}.scan-cta .button{width:100%;margin-bottom:12px}.scan-cta span{display:block}.manual-scan{display:block}.manual-scan button{width:100%;margin-top:10px}}
