:root{font-family:Inter,Pretendard,Noto Sans KR,system-ui,sans-serif;color:#0f172a;background:#f1f5f9;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.shell{max-width:760px;margin:0 auto;padding:20px}.narrow{max-width:460px;padding-top:70px}.topbar{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:18px}h1{margin:0;font-size:28px}h2{margin-top:0}.tagline{font-size:18px;color:#475569}.card{background:#fff;border-radius:18px;padding:20px;margin-bottom:16px;box-shadow:0 6px 24px #0f172a14}.stack{display:grid;gap:12px}input,textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:13px;background:#fff}.primary,.secondary,.siteButton,.camera{border:0;border-radius:12px;padding:14px 16px;font-weight:700}.primary{background:#0f172a;color:#fff;width:100%}.primary:disabled{opacity:.6}.secondary{background:#e2e8f0;color:#0f172a}.siteButton{background:#f8fafc;text-align:left;border:1px solid #e2e8f0;display:grid}.siteButton span{font-size:13px;color:#64748b;margin-top:3px}.camera{display:block;text-align:center;background:#dbeafe;color:#1e3a8a}.camera input{display:none}.preview{width:100%;max-height:420px;object-fit:contain;border-radius:14px;background:#0f172a}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:#e0f2fe;color:#075985;margin-bottom:10px}.linkButton{border:0;background:transparent;text-align:left;padding:4px 0;color:#334155}.classification{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.classification div{border:1px solid #e2e8f0;border-radius:12px;padding:12px;display:grid}.classification small{color:#64748b}.classification span{font-size:12px;color:#2563eb}.warning{background:#fff7ed;border:1px solid #fed7aa;padding:12px;border-radius:12px;color:#9a3412}.muted{color:#64748b;font-size:14px}hr{border:0;border-top:1px solid #e2e8f0;margin:18px 0}@media(max-width:520px){.shell{padding:14px}.topbar{align-items:flex-start}.classification{grid-template-columns:1fr}}select{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:13px;background:#fff;font:inherit}label{font-weight:700;font-size:14px;margin-top:4px}.confidenceGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:8px}.confidenceGrid span{padding:8px 10px;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-size:12px}.successBox{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;padding:12px;border-radius:12px;font-weight:700}.buttonRow{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wide{width:100%}.reportPreviewWrap{overflow-x:auto;padding:8px 0 28px}.reportPage{width:794px;min-height:1123px;margin:0 auto;background:#fff;padding:38px 42px;color:#111827;font-family:Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,sans-serif}.reportTitle{text-align:center;font-size:30px;font-weight:800;letter-spacing:-.5px;padding-bottom:16px;border-bottom:3px solid #111827;margin-bottom:18px}.reportTable{width:100%;border-collapse:collapse;font-size:14px;margin-bottom:18px}.reportTable th,.reportTable td{border:1px solid #cbd5e1;padding:9px 10px;vertical-align:middle}.reportTable th{width:16%;background:#f1f5f9;text-align:left}.reportSection{margin-top:14px}.reportSection h3{font-size:17px;margin:0 0 7px;padding-bottom:5px;border-bottom:1px solid #cbd5e1}.reportSection p{margin:4px 0;font-size:14px}.reportLead{font-weight:800}.reportPhotos{display:grid;grid-template-columns:1fr 1fr;gap:14px}.reportPhotos img{width:100%;height:260px;object-fit:cover;border:1px solid #cbd5e1}.photoLabel{text-align:center;font-weight:800;background:#f1f5f9;padding:7px;border:1px solid #cbd5e1;border-bottom:0}.reportFooter{margin-top:24px;padding-top:12px;border-top:1px solid #cbd5e1;display:flex;justify-content:space-between;font-size:13px;color:#475569}@media(max-width:520px){.confidenceGrid,.buttonRow{grid-template-columns:1fr}.reportPreviewWrap{transform-origin:top left}}.appNav{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:#f1f5f9f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:8px 0 12px;margin-bottom:12px}.appNav button{border:0;border-radius:12px;padding:11px 8px;background:#e2e8f0;color:#334155;font-size:13px;font-weight:800}.appNav button.active{background:#0f172a;color:#fff}.metricGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metricGrid>div{border:1px solid #e2e8f0;border-radius:14px;padding:14px;display:grid;background:#f8fafc}.metricGrid small{color:#64748b}.metricGrid strong{font-size:30px;line-height:1.15}.metricGrid span{color:#64748b;font-size:12px}.dashboardGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rankCard{background:#fff;border-radius:18px;padding:18px;box-shadow:0 6px 24px #0f172a14}.rankCard h3{margin-top:0}.rankRow{display:flex;gap:9px;align-items:center;margin:11px 0}.rankNo{width:24px;height:24px;border-radius:999px;background:#e2e8f0;display:grid;place-items:center;font-size:12px;font-weight:800}.rankBody{flex:1;min-width:0}.rankLabel{display:flex;justify-content:space-between;gap:8px;font-size:13px}.rankLabel span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.miniBar{height:6px;background:#e2e8f0;border-radius:999px;margin-top:5px;overflow:hidden}.miniBar div{height:100%;background:#334155;border-radius:inherit}.filterGrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}.historyCard{background:#fff;border-radius:18px;padding:18px;margin-bottom:12px;box-shadow:0 6px 24px #0f172a14}.historyTop{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.historyTop h3{margin:3px 0 8px}.historyTop small{color:#64748b}.status{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap;background:#e2e8f0}.status-COMPLETED,.status-REPORT_CREATED{background:#dcfce7;color:#166534}.status-CONFIRMED{background:#dbeafe;color:#1d4ed8}.status-AI_ANALYZED{background:#fef3c7;color:#92400e}.chipRow{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}.chipRow span{background:#f1f5f9;border-radius:999px;padding:5px 8px;font-size:11px;color:#475569}.planHero{display:flex;justify-content:space-between;gap:20px;align-items:center}.planHero>div:first-child{display:grid}.planHero small{color:#64748b}.planHero strong{font-size:28px}.planHero span{color:#2563eb;font-weight:800}.planNumber{font-size:34px;font-weight:900;text-align:right}.planNumber small{display:block;font-size:11px;font-weight:600}.usageBar{height:12px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:18px}.usageBar div{height:100%;background:#0f172a}.planGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.planCard{border:1px solid #e2e8f0;border-radius:14px;padding:14px;display:grid;gap:4px}.planCard strong{font-size:18px}.planCard span{color:#64748b;font-size:13px}.planCard.recommended{border:2px solid #0f172a}.appFooter{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:22px 4px 36px;color:#64748b;font-size:11px}.appFooter button{border:0;background:transparent;color:#64748b;text-decoration:underline}@media(max-width:620px){.metricGrid{grid-template-columns:repeat(2,1fr)}.dashboardGrid,.filterGrid,.planGrid{grid-template-columns:1fr}.appNav button{font-size:11px;padding:10px 4px}}.consentRow{display:flex;align-items:flex-start;gap:9px;font-size:13px;font-weight:500;padding:10px 2px}.consentRow input{width:auto;margin-top:3px}.consentRow a,.legalLinks a{color:#1d4ed8}.legalLinks{display:flex;flex-wrap:wrap;gap:10px;margin-top:5px}.appFooter>div{max-width:78%}
