:root{font-family:system-ui,-apple-system,"Noto Sans KR",sans-serif;color:#183238;background:#f5f8f8;font-size:15px;line-height:1.55;--accent:#087f8e}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #2aafbf;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar{position:sticky;top:0;z-index:2;background:#fff;padding:14px 16px;border-bottom:1px solid #e2ebec}.brand{display:block;color:var(--accent);font-size:21px;font-weight:800;text-decoration:none;margin-bottom:10px}.brand span{font-size:15px;color:#537177;font-weight:500}.search input{width:100%;height:44px;border:1px solid #d7e5e7;border-radius:10px;padding:0 13px;background:#f7fafa;color:inherit}.layout{max-width:960px;margin:auto;padding:16px}.categories{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 8px}.categories button{flex-shrink:0;min-height:44px;border:1px solid #d6e3e5;border-radius:24px;background:#fff;color:#3b5b61;padding:8px 16px}.categories button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.summary{font-size:13px;color:#587278;margin:8px 0 16px}.products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-card{text-align:left;display:flex;flex-direction:column;padding:0;background:#fff;border:1px solid #dfe9eb;border-radius:13px;overflow:hidden;color:inherit;min-width:0}.product-photo{width:100%;aspect-ratio:1;object-fit:contain;background:#fff;border-bottom:1px solid #edf2f2}.photo-empty{display:flex;align-items:center;justify-content:center;color:#758c91;background:#eef3f3}.product-copy{padding:12px;display:flex;flex-direction:column;flex:1;width:100%}.product-title{font-size:15px;line-height:1.45;margin:0 0 7px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-summary{font-size:12px;color:#59737a;line-height:1.5;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.product-price{font-size:20px;color:var(--accent);margin-top:auto}.price-missing{font-size:15px;color:#71868b}.price-date{font-size:11px;color:#71868b;margin-top:3px}.footnote{font-size:12px;color:#617b81;margin:24px 0}.empty{grid-column:1/-1;padding:28px 18px;background:#fff;border-radius:12px;text-align:center}.empty button{min-height:44px;border:0;border-radius:8px;padding:8px 18px;color:white;background:var(--accent)}dialog{border:0;border-radius:14px;padding:0;width:min(620px,calc(100% - 24px));max-height:calc(100dvh - 24px);max-height:calc(100vh - 24px);color:inherit;box-shadow:0 8px 50px #08283040}dialog::backdrop{background:#0c272866}.detail-toolbar{position:sticky;top:0;background:white;z-index:1;text-align:right;border-bottom:1px solid #e8efef;padding:8px 12px}.detail-toolbar button{min-height:44px;border:0;border-radius:8px;background:#eef5f5;padding:8px 16px;color:#36565b}#productDetailContent{padding:18px}.detail-title{font-size:21px;line-height:1.45;overflow-wrap:anywhere;margin:0 0 18px}.detail-image{width:100%;height:260px;object-fit:contain;background:#fff;border-radius:8px}.gallery{display:flex;gap:8px;overflow-x:auto;margin:10px 0 20px}.gallery button{padding:2px;border:1px solid #d5e3e5;border-radius:6px;background:white}.gallery img{display:block;width:60px;height:60px;object-fit:contain}.detail-price{font-size:27px;color:var(--accent);display:block;margin:12px 0 0}.detail-info h3{font-size:16px;margin:22px 0 8px}.detail-info p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#3f5e64}.merchant-link{display:block;text-align:center;min-height:48px;background:var(--accent);color:#fff;font-weight:700;text-decoration:none;border-radius:9px;padding:12px;margin-top:24px}@media(min-width:700px){.products{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar{display:flex;gap:28px;align-items:center;justify-content:center}.brand{margin:0}.search{width:min(550px,60%)}}@media(max-width:339px){.products{grid-template-columns:1fr}}
