:root{--color-primary: #1F3A5F;--color-bg: #F4F6F8;--color-surface: #FFFFFF;--color-text: #1B2735;--color-muted: #667384;--color-accent: #D9E5F3;--color-line: #E1E7ED;--color-green: #2E9E5B;--color-yellow: #E0A800;--color-red: #D64545;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 24px;--radius: 12px;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--color-bg);font-size:var(--text-base)}button,input{font:inherit}button{cursor:pointer}button:focus-visible{outline:3px solid #91B9E7;outline-offset:3px}.app-shell{min-height:100vh}.topbar{height:64px;background:var(--color-primary);color:#fff}.topbar-inner{max-width:780px;height:100%;margin:0 auto;padding:0 var(--space-5);display:flex;align-items:center;justify-content:space-between}h1{margin:0;font-size:var(--text-lg);letter-spacing:-.03em}.page{width:min(100%,780px);margin:0 auto;padding:40px var(--space-5) 56px}.signal-lights{display:inline-flex;align-items:center;gap:5px;padding:7px 8px;border-radius:999px;background:#ffffff1f}.light{width:10px;height:10px;border-radius:50%;opacity:.24;background:#cfd7e2;box-shadow:inset 0 0 0 1px #0000001f}.light.is-on{opacity:1;box-shadow:0 0 0 2px #ffffff4d,0 0 9px currentColor}.light.green{color:var(--color-green)}.light.yellow{color:var(--color-yellow)}.light.red{color:var(--color-red)}.light.green.is-on{background:var(--color-green)}.light.yellow.is-on{background:var(--color-yellow)}.light.red.is-on{background:var(--color-red)}.result-head .signal-lights{background:#eef2f6}.result-head .light{width:11px;height:11px}.welcome{display:grid;gap:var(--space-6)}.intro{text-align:center}.eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-size:var(--text-sm);font-weight:800}h2{margin:0;font-size:var(--text-xl);line-height:1.4;letter-spacing:-.04em}.intro>p:last-child{margin:var(--space-4) 0 0;color:var(--color-muted);line-height:1.6}.upload-card,.reading-card,.result-card,.error-card,.preview-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:0 6px 16px #1f3a5f0f}.privacy-note-sub{margin:4px 0 0;color:var(--color-muted);font-size:12px;text-align:center}.notice-card .notice-actions{display:grid;gap:8px;margin-top:var(--space-4)}.preview-card{padding:var(--space-5);text-align:center}.preview-card h2{font-size:20px;margin-bottom:var(--space-4)}.preview-image-wrap{display:flex;justify-content:center;margin-bottom:var(--space-4)}.preview-image{max-width:100%;max-height:60vh;border-radius:10px;object-fit:contain}.preview-hint{margin:0 0 var(--space-4);color:var(--color-muted);font-size:12px}.compare-mask-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;margin-bottom:var(--space-4)}.compare-mask-thumb{display:grid;gap:4px}.compare-mask-thumb img{width:100%;height:120px;border-radius:8px;object-fit:cover;border:1px solid var(--color-line)}.compare-mask-thumb p{margin:0;overflow:hidden;color:var(--color-text);font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.compare-mask-thumb span{color:var(--color-muted);font-size:11px}.upload-card{padding:32px var(--space-5) 28px;text-align:center}.upload-mark{width:52px;height:52px;display:grid;place-items:center;margin:0 auto var(--space-4);color:var(--color-primary);background:#e8f0f8;border-radius:50%}.upload-mark svg{width:25px}svg{display:block;width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}h3{margin:0;font-size:var(--text-lg)}.upload-card>p{margin:var(--space-2) 0 var(--space-5);color:var(--color-muted);font-size:var(--text-sm)}.primary-button{min-height:50px;width:100%;border:0;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;background:var(--color-primary);font-size:var(--text-base);font-weight:800;transition:transform .15s ease,background .15s ease}.primary-button:hover{background:#172f4d;transform:translateY(-1px)}.primary-button svg{width:18px;height:18px}.text-button{display:block;margin:14px auto 0;border:0;background:none;color:var(--color-primary);font-size:var(--text-sm);font-weight:750;text-decoration:underline;text-underline-offset:3px}.file-rule{display:block;margin-top:18px;color:#8290a0;font-size:14px}.form-message{color:var(--color-primary)!important;font-weight:700}.privacy-note{display:flex;align-items:center;justify-content:center;gap:7px;margin:-12px 0 0;color:var(--color-muted);font-size:var(--text-sm)}.privacy-note span{color:var(--color-green);font-weight:900}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reading-card,.error-card{padding:52px var(--space-5);text-align:center}.document-icon{width:52px;height:52px;display:grid;place-items:center;margin:0 auto var(--space-5);border-radius:15px;background:#e8f0f8;color:var(--color-primary);font-size:26px;font-weight:800}.reading-card h2{font-size:22px}.reading-card h2 strong{color:var(--color-primary)}.file-name{overflow:hidden;margin:var(--space-3) 0 var(--space-5);color:var(--color-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.progress-track{height:10px;overflow:hidden;border-radius:999px;background:#e6ecf1}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--color-primary);transition:width .55s ease}.reading-note{margin:var(--space-4) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.result-card{overflow:hidden}.result-head{padding:var(--space-5) var(--space-5) var(--space-3);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.result-head h2{font-size:21px}.result-description{margin:0;padding:0 var(--space-5) var(--space-4);color:var(--color-muted);font-size:var(--text-sm)}.contract-table{border-top:1px solid var(--color-line)}.contract-row{display:grid;grid-template-columns:105px minmax(0,1fr);min-height:56px;border-bottom:1px solid var(--color-line)}.row-label{padding:var(--space-4) var(--space-3) var(--space-4) var(--space-4);display:flex;align-items:flex-start;background:#fafbfc;color:#536171;font-size:var(--text-sm);font-weight:750;line-height:1.45}.row-value{width:100%;padding:12px var(--space-3);display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:#fff;color:var(--color-text);text-align:left;font-size:var(--text-sm);line-height:1.5}.row-value:hover{background:#f7fafd}.row-value span{min-width:0}.row-value.emphasis span{font-weight:850}.row-value.multiline{align-items:flex-start;padding-top:14px}.row-value svg{flex:0 0 auto;width:15px;color:#7b8998}.diagnosis-button{margin:var(--space-5);width:calc(100% - 48px)}.error-icon{width:48px;height:48px;display:grid;place-items:center;margin:0 auto var(--space-4);color:#fff;border-radius:50%;background:var(--color-primary);font-size:25px;font-weight:900}.error-card p{margin:var(--space-2) 0 var(--space-5);color:var(--color-muted)}@media (min-width: 640px){.page{padding-top:58px}.welcome{max-width:500px;margin:0 auto}.contract-row{grid-template-columns:150px minmax(0,1fr)}.row-label,.row-value{font-size:var(--text-base)}.result-head{padding:28px 32px 14px}.result-description{padding:0 32px 18px}.row-label{padding-left:32px}.diagnosis-button{width:calc(100% - 64px);margin:28px 32px}}.diagnosing-card,.signal-summary-card,.finding-card,.timeline-card,.price-card,.total-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:0 6px 16px #1f3a5f0f}.diagnosing-card{padding:54px var(--space-5);text-align:center}.diagnosing-card .signal-lights{margin:0 auto var(--space-5);background:#eef2f6}.diagnosing-card>p:last-child{margin:var(--space-4) 0 0;color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.signal-lights.is-blinking .light{animation:signalBlink 1.5s ease-in-out infinite}.signal-lights.is-blinking .light.yellow{animation-delay:.24s}.signal-lights.is-blinking .light.red{animation-delay:.48s}@keyframes signalBlink{0%,to{opacity:.24;transform:scale(1)}45%{opacity:1;transform:scale(1.18)}}.diagnosis-view{display:grid;gap:var(--space-4)}.signal-summary-card{padding:var(--space-5);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:start}.signal-summary-card h2{font-size:21px}.signal-summary-card .signal-lights{background:#eef2f6}.signal-summary-card .light{width:12px;height:12px}.signal-count{margin:var(--space-3) 0 0;color:var(--color-text);font-size:var(--text-base);font-weight:850}.signal-summary-card small{grid-column:1 / -1;color:var(--color-muted);font-size:var(--text-sm)}.finding-list{display:grid;gap:var(--space-3)}.finding-card{padding:var(--space-4);border-left-width:4px}.finding-card.red{border-left-color:var(--color-red)}.finding-card.yellow{border-left-color:var(--color-yellow)}.finding-card.green{border-left-color:var(--color-green)}.finding-heading{display:flex;align-items:flex-start;gap:9px}.finding-heading h2,.finding-heading h3{font-size:var(--text-base);line-height:1.45;letter-spacing:-.02em}.status-dot{width:10px;height:10px;flex:0 0 auto;margin-top:6px;border-radius:50%}.status-dot.red{background:var(--color-red)}.status-dot.yellow{background:var(--color-yellow)}.status-dot.green{background:var(--color-green)}.finding-card>p{margin:var(--space-2) 0 0 19px;color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.evidence-button{display:inline-flex;align-items:center;gap:3px;margin:var(--space-3) 0 0 19px;padding:0;border:0;background:transparent;color:var(--color-primary);font-size:var(--text-sm);font-weight:800}.evidence-button svg{width:16px;transition:transform .15s ease}.evidence-button[aria-expanded=true] svg{transform:rotate(180deg)}.evidence-detail{margin:var(--space-3) 0 0 19px;padding:var(--space-3);border-radius:8px;background:#f5f7f9;color:var(--color-muted);font-size:var(--text-sm);line-height:1.5}.timeline-card{padding:var(--space-5) var(--space-4);overflow:hidden}.timeline-card h2,.price-card h2{font-size:var(--text-lg)}.timeline-range{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:var(--space-2) 0 var(--space-5);color:var(--color-muted);font-size:11px;line-height:1.45}.timeline-range span{min-width:0}.timeline-range b{display:block;color:var(--color-text);font-size:11px}.timeline-range span:nth-child(2){text-align:center}.timeline-range span:last-child{text-align:right}.timeline-plot{position:relative;min-width:0;padding-top:35px}.timeline-line{position:absolute;z-index:1;top:68px;right:0;left:0;height:2px;background:#cbd5e0}.excess-band{position:absolute;z-index:0;top:35px;right:-16px;bottom:0;left:39%;padding:7px 5px;background:#d645451a;color:var(--color-red);font-size:11px;text-align:center}.excess-band strong{font-weight:850}.timeline-points{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,minmax(48px,1fr));gap:2px}.timeline-item{min-width:0;display:grid;justify-items:center;padding-top:25px;text-align:center}.timeline-dot{position:absolute;top:27px;width:11px;height:11px;border:2px solid #AAB6C4;border-radius:50%;background:var(--color-surface)}.timeline-dot.is-excess{border-color:var(--color-red);background:var(--color-red)}.timeline-date{overflow:hidden;width:100%;margin-top:12px;color:var(--color-muted);font-size:10px;white-space:nowrap}.timeline-amount{margin-top:5px;color:var(--color-muted);font-size:10px;line-height:1.3;white-space:nowrap}.timeline-amount b{display:block;color:var(--color-text);font-size:11px}.timeline-item:nth-child(n+3) .timeline-amount:first-of-type b{color:var(--color-red)}.price-card{padding:var(--space-5)}.price-card>p{margin:var(--space-3) 0 var(--space-4);color:var(--color-muted);font-size:var(--text-sm)}.price-card>p strong{margin-right:4px;color:var(--color-text)}.price-reference{padding-top:var(--space-3);border-top:1px solid var(--color-line);color:var(--color-muted);font-size:var(--text-sm);line-height:1.65}.price-reference b{color:var(--color-text)}.total-card{padding:28px var(--space-5) var(--space-5);text-align:center}.total-card>p{margin:0 0 var(--space-2);color:var(--color-muted);font-size:var(--text-sm)}.total-card h2{margin-bottom:var(--space-5);font-size:21px;line-height:1.35}.total-card h2 span{color:var(--color-primary)}.total-card .text-button{margin-top:var(--space-4)}@media (min-width: 640px){.diagnosis-view{gap:var(--space-5)}.signal-summary-card,.timeline-card,.price-card,.total-card{padding:28px 32px}.finding-card{padding:20px 24px}.timeline-card{padding-bottom:30px}.timeline-amount{font-size:12px}.timeline-amount b{font-size:var(--text-sm)}.timeline-date{font-size:11px}}.questions-view{display:grid;gap:var(--space-4)}.questions-intro{text-align:center;padding:4px 0 var(--space-3)}.questions-intro>p:last-child{margin:var(--space-2) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.question-list{display:grid;gap:var(--space-3)}.question-card,.consult-card,.next-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:0 6px 16px #1f3a5f0f}.question-card{display:grid;grid-template-columns:28px minmax(0,1fr) 36px;align-items:start;gap:8px;padding:var(--space-4)}.question-number{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e8f0f8;color:var(--color-primary);font-size:var(--text-sm);font-weight:850}.question-card p{margin:1px 0 0;color:var(--color-text);font-size:var(--text-sm);line-height:1.55;word-break:keep-all}.copy-button{width:36px;height:36px;display:grid;place-items:center;margin:-5px -5px 0 0;border:0;border-radius:9px;background:#f3f7fb;color:var(--color-primary);transition:background .15s ease,transform .15s ease}.copy-button:hover{background:#e8f0f8;transform:translateY(-1px)}.copy-button svg{width:18px;height:18px}.consult-card{overflow:hidden}.consult-toggle{width:100%;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:var(--space-4);border:0;background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:800;text-align:left}.consult-toggle svg{width:18px;color:var(--color-primary);transition:transform .15s ease}.consult-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.consult-detail{padding:0 var(--space-4) var(--space-4);border-top:1px solid var(--color-line);color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.consult-detail p{margin:var(--space-3) 0 0}.consult-detail small{display:block;margin-top:var(--space-3);color:var(--color-primary);font-weight:850}.next-card{padding:var(--space-5);text-align:center}.next-card p{margin:0 0 var(--space-4);color:var(--color-muted);font-size:var(--text-sm);line-height:1.55}.next-card strong{color:var(--color-text)}.toast{position:fixed;z-index:20;bottom:30px;left:50%;padding:12px 18px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:var(--text-sm);font-weight:800;box-shadow:0 8px 24px #1f3a5f3d;transform:translate(-50%)}.sheet-backdrop{position:fixed;z-index:30;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;background:#1322365c}.bottom-sheet{width:min(100%,780px);margin:0 auto;padding:10px var(--space-5) calc(28px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:var(--color-surface);box-shadow:0 -10px 30px #13223629;animation:slideUp .2s ease-out;text-align:center}.sheet-handle{width:40px;height:4px;margin:0 auto 24px;border-radius:999px;background:#c9d3de}.bottom-sheet h2{font-size:21px}.bottom-sheet p{margin:var(--space-3) 0 var(--space-5);color:var(--color-muted)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (min-width: 640px){.question-card{padding:20px 24px;grid-template-columns:32px minmax(0,1fr) 40px}.question-card p,.consult-toggle,.consult-detail,.next-card p{font-size:var(--text-base)}.consult-toggle{padding:20px 24px}.consult-detail{padding:0 24px 20px}.next-card{padding:28px 32px}}.data-source{margin:0;padding:0 var(--space-2) var(--space-3);color:var(--color-muted);font-size:12px;line-height:1.5;text-align:center}.data-source a{color:var(--color-primary);font-weight:750}.compare-entry{margin-top:10px}.compare-view{display:grid;gap:var(--space-4)}.compare-header-card,.compare-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:0 6px 16px #1f3a5f0f}.compare-header-card{padding:var(--space-5);text-align:center}.compare-header-card h2{font-size:21px}.compare-reasons{margin:var(--space-3) 0 0;padding:0;list-style:none;color:var(--color-muted);font-size:var(--text-sm);line-height:1.6}.compare-failed-note{margin:var(--space-3) 0 0;color:var(--color-muted);font-size:var(--text-sm)}.compare-header-card small{display:block;margin-top:var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.compare-table-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:0 6px 16px #1f3a5f0f;padding:var(--space-4);max-width:100%;overflow:hidden}.compare-table-card h2{font-size:var(--text-lg);margin:0 0 var(--space-3)}.compare-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.compare-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.compare-table th,.compare-table td{padding:9px 10px;border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top;min-width:120px;white-space:normal;word-break:keep-all}.compare-table thead th{color:var(--color-muted);font-weight:800;white-space:nowrap}.compare-table tbody th{position:sticky;left:0;background:var(--color-surface);font-weight:800;color:var(--color-text);min-width:110px;box-shadow:1px 0 0 var(--color-line)}.compare-table thead th:first-child{position:sticky;left:0;background:var(--color-surface);z-index:1;box-shadow:1px 0 0 var(--color-line)}.compare-table th.is-best-col,.compare-table td.is-best-col{background:#f2f7fc}.compare-table tbody th.is-best-col{background:var(--color-surface)}.compare-table td.is-muted{color:var(--color-muted)}.compare-table td.is-bad{color:var(--color-red);font-weight:800}.compare-table td.is-best-cell{color:var(--color-green);font-weight:800}.compare-table .best-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:#2e9e5b1f;color:var(--color-green);font-size:11px;font-weight:800;vertical-align:middle}.compare-list{display:grid;gap:var(--space-3)}.compare-card{padding:var(--space-4);display:grid;grid-template-columns:32px minmax(0,1fr);gap:var(--space-3);align-items:start}.compare-rank{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e8f0f8;color:var(--color-primary);font-size:var(--text-sm);font-weight:850}.compare-name{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--color-text);font-size:var(--text-base);font-weight:850;text-align:left}.compare-name svg{width:14px;color:var(--color-muted)}.compare-signals{margin:var(--space-2) 0 0;display:flex;align-items:center;gap:5px;color:var(--color-muted);font-size:var(--text-sm)}.compare-signals .status-dot{margin-top:0}.compare-meta{margin:var(--space-2) 0 var(--space-3);color:var(--color-muted);font-size:var(--text-sm)}.region-picker{display:flex;align-items:center;gap:8px;margin:var(--space-3) 0 var(--space-4);color:var(--color-muted);font-size:var(--text-sm)}.region-picker select{flex:0 1 auto;padding:7px 10px;border:1px solid var(--color-line);border-radius:10px;background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);font-weight:700}.region-price-list{display:grid;gap:var(--space-3);margin:0 0 var(--space-4);padding:0;list-style:none}.region-price-list li{display:grid;gap:3px;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-line)}.region-price-list li:last-child{padding-bottom:0;border-bottom:0}.region-price-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:var(--text-sm)}.region-price-head b{font-weight:850}.region-price-band{margin-left:auto;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.region-price-band.is-green{background:#2e9e5b1f;color:var(--color-green)}.region-price-band.is-yellow{background:#e0a80024;color:#9a7400}.region-price-band.is-red{background:#d645451f;color:var(--color-red)}.region-price-sub{color:var(--color-muted);font-size:12px;line-height:1.55}.consent-check{display:flex;align-items:flex-start;justify-content:flex-start;gap:8px;margin:0 0 var(--space-4);color:var(--color-text);font-size:14px;text-align:left;line-height:1.5;cursor:pointer}.consent-check input{width:18px;height:18px;flex:0 0 auto;margin:1px 0 0}.consent-check span{min-width:0;overflow-wrap:break-word}.site-footer{max-width:780px;margin:0 auto;padding:24px;border-top:1px solid var(--color-line)}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 16px}.site-footer a{color:var(--color-muted);font-size:14px;text-decoration:none}.site-footer a:hover{text-decoration:underline}
