/* 단가 비교 계산기: home palette + 사용성 우선 컴팩트 히어로. */
.upc-page .icon-btn{background:transparent;border-color:var(--line);color:var(--ink);width:38px;height:38px}
.upc-intro{padding:16px 0 14px}
.breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.intro-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px;padding-top:10px}
.intro-grid h1{font-size:25px;letter-spacing:-.8px;line-height:1.3;margin:6px 0 0;word-break:keep-all}
.intro-grid h1 span{color:var(--green)}
.intro-description{font-size:13px;color:var(--muted);line-height:1.6;word-break:keep-all;margin-top:6px}
.formula-card{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#edf3e8;border:1px solid #dce6d5;border-radius:10px;max-width:440px}
.upc-chip{padding:4px 8px;border-radius:6px;background:#fff;border:1px solid #cfe0cc;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:11px;font-weight:700;color:#4a5c4d;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px}
.upc-chip-result{color:var(--green)}
.upc-op{font-size:12px;font-weight:700;color:#8ba28c;flex-shrink:0}
.page-links{display:flex;gap:26px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin-bottom:14px;flex-wrap:wrap}
.page-links a{color:var(--muted);font-size:12px;text-decoration:none;font-weight:650}.page-links a:first-child{color:var(--green)}.page-links a:hover{text-decoration:underline;color:var(--green)}

.calculator-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;align-items:start}
.input-panel,.result-box{border:1px solid var(--line);border-radius:14px;padding:18px 20px 20px;min-width:0}
.input-panel{background:white}.result-box{background:#eff4e9;display:flex;flex-direction:column;border-color:#d8e3cf;position:sticky;top:20px}
.panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.panel-heading h2{font-size:16px;letter-spacing:-.4px;margin:0}
.step-number{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#edf3e8;color:var(--green);font-size:10px;font-weight:750;flex-shrink:0}
.result-box .step-number{background:#dfead7}
.helper{font-size:11px;color:var(--muted);line-height:1.8;margin:0 0 12px;word-break:keep-all}
.input-note{font-size:10px;color:var(--muted);margin-top:14px;text-align:center}

/* 상품 카드 */
.upc-products{display:flex;flex-direction:column;gap:14px}
.upc-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px 16px;background:#fcfdfb}
.upc-card-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.upc-name{flex:1;margin:0;border:1px solid #cedace;border-radius:8px;color:var(--ink);background:#fff;min-height:38px;font-size:13px;font-weight:700;padding:0 11px}
.upc-name:focus{border-color:var(--green);box-shadow:0 0 0 3px #15776012;outline:2px solid transparent}
.upc-remove{width:30px;height:30px;flex-shrink:0;border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:8px;font-size:15px;line-height:1}
.upc-remove:hover{background:#fbeaea;border-color:#e3b7b7;color:#a13a3a}
.upc-remove.hidden{display:none}

.tool-grid{display:grid;gap:10px}
.upc-row-2{grid-template-columns:1fr 1fr;margin-bottom:10px}
.field{margin-bottom:10px}
.field:last-child{margin-bottom:0}
.field label{display:block;font-size:11.5px;font-weight:700;color:var(--ink);margin:0 0 6px}
.field label small{font-weight:400;color:var(--muted);font-size:10px}
.input-with-unit{position:relative;display:flex;align-items:center}
.upc-page input[type=number],.upc-page select{margin:0;border:1px solid #cedace;border-radius:8px;color:var(--ink);background:#fff;min-height:40px;font-size:13px;padding:9px 36px 9px 11px;width:100%;min-width:0;box-sizing:border-box}
.upc-page select{padding-right:14px;font-size:12.5px}
.upc-page input:focus,.upc-page select:focus{border-color:var(--green);box-shadow:0 0 0 3px #15776012;outline:2px solid transparent}
.unit-badge{position:absolute;right:11px;font-size:10.5px;color:var(--muted);pointer-events:none}
.compound-input{display:flex;align-items:center;overflow:hidden;border:1px solid #cedace;border-radius:8px;background:#fff;min-height:40px}
.compound-input:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #15776012}
.compound-input input{flex:1;min-width:0;border:0!important;box-shadow:none!important}
.compound-input select{width:96px;flex-shrink:0;margin:0;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);font-size:12px;padding:0 8px;height:100%}
.upc-shipping-field{margin-top:0}

/* 고급 옵션(행사·용량·쿠폰·배송비): 기본 접힘 */
.upc-advanced{display:none;margin-top:10px;padding-top:12px;border-top:1px dashed var(--line)}
#product-list.upc-advanced-open .upc-advanced{display:block}
.upc-tight-helper{margin:6px 0 0}

.upc-add-btn{width:100%;margin-top:14px;padding:11px;border:1.5px dashed var(--line);background:#f7faf5;color:var(--green);font-size:13px;font-weight:700;border-radius:10px}
.upc-add-btn:hover{background:#eef4e9;border-color:#a7c1a3}
.upc-add-btn:disabled{opacity:.45;cursor:default}

.upc-advanced-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:14px;border:0;border-top:1px solid var(--line);background:none;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left}
.upc-advanced-toggle span:first-child small{font-weight:400;font-size:10px;color:var(--muted);background:#f0f3eb;border-radius:4px;padding:3px 6px;margin-left:5px}
.upc-advanced-toggle .toggle-icon{color:var(--green);font-size:16px;font-weight:700;flex-shrink:0}

/* 결과 */
.upc-hero-result{text-align:center;padding:18px 12px 16px;background:#fff;border:1px solid #d8e3cf;border-radius:12px}
.upc-hero-label{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.upc-hero-value{display:block;font-size:21px;font-weight:800;letter-spacing:-.5px;color:var(--green);margin-top:4px;line-height:1.3;word-break:keep-all}
.upc-hero-sub{font-size:12px;color:var(--muted);margin-top:10px;line-height:1.8;word-break:keep-all}

/* 비교 기준 토글 (고급 옵션 열렸을 때만) */
.upc-basis-toggle{display:flex;gap:6px;margin-top:12px}
.upc-basis-toggle.hidden{display:none}
.upc-basis-btn{width:auto;flex:1;padding:8px 6px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:11.5px;font-weight:700;border-radius:8px}
.upc-basis-btn:hover{background:#f3f6ef}
.upc-basis-btn.active{border-color:var(--green);background:#e6efdd;color:#115f4c}

.upc-qty-row{margin-top:12px;padding:14px;background:#fff;border:1px solid #d8e3cf;border-radius:10px}
.upc-qty-row label{display:block;font-size:12px;font-weight:700;color:var(--ink);margin-bottom:8px}
.upc-qty-row .input-with-unit{max-width:160px}
.upc-qty-highlight{margin-top:12px;padding-top:12px;border-top:1px dashed #d2dfc9;text-align:center}
.upc-qty-highlight-label{display:block;font-size:11px;color:var(--muted)}
.upc-qty-highlight-value{display:block;font-size:24px;font-weight:800;color:var(--green);margin-top:4px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}

.upc-col-100{display:none}
#compare-table:not(.upc-basic-mode) .upc-col-100{display:table-cell}

.upc-comparison{margin-top:20px}
.vs-comparison-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.vs-comparison-head h3{font-size:13px;color:var(--ink);margin:0}
.vs-comparison-head span{font-size:10px;color:var(--muted)}
.upc-compare-table{margin-top:2px}
.upc-compare-table th,.upc-compare-table td{padding:9px 8px;font-size:11.5px}
.upc-compare-table tbody tr.highlight{background:#e6efdd;outline:2px solid #79a77d;outline-offset:-2px}
.upc-compare-table tbody tr.highlight td{color:#2b553b;font-weight:750}
.upc-compare-table td:nth-child(2),.upc-compare-table td:nth-child(3),.upc-compare-table td:nth-child(4){font-variant-numeric:tabular-nums;white-space:nowrap}
.upc-badge{display:inline-block;font-size:9px;font-weight:750;color:#fff;background:var(--green);border-radius:5px;padding:2px 6px;margin-left:4px;vertical-align:middle}
.note{font-size:11px;color:var(--muted);line-height:1.9}
.result-disclaimer{padding-top:18px;margin-top:auto;font-size:10px}

.reference-heading{margin:46px 0 22px}.reference-heading .eyebrow{margin-bottom:6px}.reference-heading h2{font-size:25px;letter-spacing:-.8px;margin-bottom:6px}.reference-heading>p:last-child{font-size:13px;color:var(--muted)}
.info-section{border:1px solid var(--line);border-radius:13px;background:white;padding:25px;min-width:0}
.info-section h2{font-size:18px;letter-spacing:-.4px;margin-bottom:12px}.info-section p{font-size:12px;color:var(--muted);line-height:1.9;word-break:keep-all;margin-bottom:8px}
.info-section .helper{font-size:11px;margin-bottom:0}
.upc-formula{padding:14px 16px;background:#f3f6ef;border-radius:10px;color:var(--ink);font-weight:700;font-size:13px;margin-bottom:10px}
.table-wrap{margin:4px 0 6px;overflow-x:auto}.bmi-table{width:100%;border-collapse:collapse;font-size:12px}
.bmi-table th,.bmi-table td{text-align:left;padding:11px 10px;border-bottom:1px solid #e5eae1;vertical-align:middle;line-height:1.6}.bmi-table th{background:#f1f5ec;font-size:11px;font-weight:700;color:#5b6d59}.bmi-table td{color:#4a5c4d}.bmi-table th:first-child,.bmi-table td:first-child{padding-left:13px}

.faq-section{display:grid;grid-template-columns:1fr 1.8fr;gap:40px;border-top:1px solid var(--line);padding-top:34px;margin-top:42px}
.faq-heading h2{font-size:25px;letter-spacing:-.7px;margin-bottom:8px}.faq-heading p:last-child{font-size:12px;color:var(--muted)}
.faq-item{border-bottom:1px solid var(--line)}.faq-item:first-child{border-top:1px solid var(--line)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;font-size:14px;font-weight:650;cursor:pointer;list-style:none;word-break:keep-all}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary::after{content:'＋';color:var(--green);flex-shrink:0;font-weight:400;font-size:18px}.faq-item[open] summary::after{content:'−'}
.faq-answer{padding:0 24px 18px 0;font-size:13px;line-height:1.9;color:var(--muted);word-break:keep-all}
.related-section{border-top:1px solid var(--line);margin-top:38px;padding-top:30px}.related-section h2{font-size:22px;letter-spacing:-.6px;margin-bottom:20px}.related-section .eyebrow{margin-bottom:6px}
.related-links{display:grid;grid-template-columns:1fr 1fr;gap:16px}.related-links>a{display:flex;align-items:center;gap:16px;padding:20px;text-decoration:none;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:#f3f6ef}.related-links>a:hover{background:#eaf1e4;border-color:#a7c1a3}.related-links>a>span:first-child{font-size:27px}.related-links>a>span:last-child{margin-left:auto;color:var(--green)}.related-links h3{font-size:14px;margin-bottom:3px}.related-links p{font-size:11px;color:var(--muted)}
.upc-page .home-footer{margin-top:42px}

@media(min-width:800px){.upc-page .header-actions{flex-direction:row-reverse;gap:20px}}
@media(max-width:900px){.formula-card{display:none}.calculator-layout{gap:14px}.input-panel,.result-box{padding:16px 18px 18px}.info-section{padding:20px}.faq-section{gap:25px}}
@media(max-width:760px){.upc-row-2{grid-template-columns:1fr}}
@media(max-width:700px){.intro-grid{grid-template-columns:1fr;gap:8px}.intro-grid h1{font-size:22px}.upc-intro{padding:14px 0 10px}.page-links{gap:0;justify-content:space-between;padding:10px 0}.page-links a{font-size:11px}.calculator-layout{grid-template-columns:1fr}.result-box{position:static}.reference-heading{margin-top:30px}.faq-section{grid-template-columns:1fr;gap:22px;margin-top:26px;padding-top:24px}.related-links{grid-template-columns:1fr;gap:10px}.related-links>a{padding:18px}.info-section{padding:21px}.upc-page .home-footer{margin-top:30px}}
@media(max-width:380px){.upc-page .page-wrapper{padding-left:16px;padding-right:16px}.intro-grid h1{font-size:20px}.intro-description{font-size:12px}.input-panel,.result-box{padding:14px 14px 16px}.info-section{padding:18px 13px}}
@media(prefers-reduced-motion:reduce){.upc-page *{scroll-behavior:auto!important;transition:none!important}}
