
:root{
  --bg:#f7f8fb;--card:#fff;--text:#111827;--muted:#667085;--line:#e5e7eb;
  --accent:#2563eb;--accent2:#eff6ff;--danger:#dc2626;--warn:#d97706;--good:#039855;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,"Noto Sans KR",sans-serif;color:var(--text);background:#fff}
a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}
.container{width:min(1120px,calc(100% - 40px));margin:0 auto}.narrow{width:min(840px,calc(100% - 40px))}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{font-weight:900;font-size:22px;letter-spacing:-1px}nav{display:flex;gap:24px;font-size:14px;color:#475467}
.connection-badge{font-size:11px;font-weight:800;padding:7px 10px;border-radius:999px;background:#f2f4f7;color:#475467;white-space:nowrap}
.connection-badge.ok{background:#ecfdf3;color:#027a48}.connection-badge.off{background:#fff7ed;color:#b54708}
.hero{padding:84px 0 64px;background:linear-gradient(180deg,#f8fbff,#fff)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.badge,.eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--accent)}.eyebrow.light{color:#93c5fd}
.badge{background:var(--accent2);padding:8px 12px;border-radius:999px}
h1{font-size:54px;line-height:1.12;letter-spacing:-2.5px;margin:22px 0}h1 strong{color:var(--accent)}
.lead{font-size:18px;line-height:1.75;color:var(--muted);max-width:650px}.hero-actions{display:flex;gap:12px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:14px 20px;font-weight:800;border:1px solid transparent;cursor:pointer;font-size:15px}
.btn.primary{background:var(--accent);color:#fff}.btn.primary:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{border-color:var(--line);background:#fff}.btn.wide{width:100%;margin-top:18px}
.micro{font-size:12px;color:#98a2b3;margin-top:16px}
.preview-card,.upload-card,.risk-card,.detail-card,.download-card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:0 18px 50px rgba(16,24,40,.07)}
.preview-card{padding:24px}.preview-top,.risk-title,.result-head,.premium-head,.detail-top{display:flex;justify-content:space-between;align-items:center}
.preview-top{font-size:13px;color:var(--muted)}.status{background:#ecfdf3;color:#027a48;padding:6px 9px;border-radius:999px;font-weight:700}
.flow-mini{display:flex;align-items:center;justify-content:space-between;margin:26px 0;padding:18px;background:#f8fafc;border-radius:16px}
.flow-mini div:not(.arrow){display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.flow-mini b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eaf1ff;color:var(--accent)}.flow-mini span{font-size:11px;color:#475467}.arrow{color:#98a2b3}
.fake-risk{padding:15px 16px;border-radius:14px;margin-top:10px;font-weight:700;display:flex;justify-content:space-between}.fake-risk.high{background:#fff5f5}.fake-risk.medium{background:#fffbeb}.fake-risk span{font-size:12px}
.section{padding:84px 0}.soft{background:var(--bg)}.section-head{margin-bottom:34px}.section-head.center{text-align:center}.section-head h2{font-size:36px;letter-spacing:-1.5px;margin:8px 0 0}.section-head p{color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.steps article{padding:28px;border:1px solid var(--line);border-radius:18px}.num{font-size:12px;font-weight:900;color:var(--accent)}.steps h3{font-size:20px;margin:20px 0 8px}.steps p{color:var(--muted);line-height:1.65}
.upload-card{padding:26px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}label{font-size:13px;font-weight:800;color:#344054}
select,input[type="number"],input[type="date"],input[type="text"],textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff;color:var(--text)}
textarea{resize:vertical;min-height:100px}.money-wrap{position:relative}.money-wrap span{position:absolute;right:12px;top:20px;color:var(--muted);font-size:12px}.money-wrap input{padding-right:42px}
.dropzone{margin-top:18px;border:1.5px dashed #b9c3d4;border-radius:18px;padding:38px;text-align:center;display:flex;flex-direction:column;gap:7px;cursor:pointer;background:#fbfcfe;transition:.2s}
.dropzone.drag{border-color:var(--accent);background:#eff6ff}.dropzone input{display:none}.dropzone span{font-size:12px;color:var(--muted)}.drop-icon{font-size:25px;color:var(--accent)}
.filename{font-size:13px;color:var(--muted);margin-top:12px}.hidden{display:none!important}
.progress-panel{margin-top:20px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}.progress-head{display:flex;align-items:center;justify-content:space-between}.progress-head h3{margin:6px 0}.progress-head>span{font-size:20px;font-weight:900;color:var(--accent)}
.progress-track{height:9px;background:#eef2f6;border-radius:999px;overflow:hidden;margin:14px 0}.progress-track div{height:100%;width:0;background:var(--accent);transition:width .3s}.progress-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;font-size:12px;color:#667085}.progress-steps .done{color:var(--good);font-weight:800}.progress-steps .active{color:var(--accent);font-weight:800}
.result{margin-top:28px}.result-head{background:#101828;color:#fff;border-radius:20px;padding:26px}.result-head h2{margin:6px 0}.result-score{font-size:42px;font-weight:900}.result-score small{font-size:15px;color:#98a2b3}
.analysis-meta,.stats-grid,.premium-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0}.analysis-meta div,.stats-grid div,.premium-summary div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px}.analysis-meta span,.stats-grid span,.premium-summary span{font-size:12px;color:var(--muted)}.analysis-meta strong,.stats-grid strong,.premium-summary strong{font-size:17px}
.notice{margin:16px 0;padding:14px 16px;background:#fffaeb;border:1px solid #fedf89;border-radius:12px;color:#93370d;font-size:13px;line-height:1.6}.notice.ok{background:#ecfdf3;border-color:#abefc6;color:#067647}.notice.error{background:#fef3f2;border-color:#fecdca;color:#b42318}
.risk-list{display:flex;flex-direction:column;gap:12px}.risk-card{padding:20px;box-shadow:none}.risk-title{gap:14px}.risk-title>div:nth-child(2){flex:1}.risk-title h3{margin:0 0 5px;font-size:17px}.risk-title p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.dot.high{background:var(--danger)}.dot.medium{background:var(--warn)}.dot.low{background:#98a2b3}
.pill{font-size:11px;font-weight:800;border-radius:999px;padding:7px 10px;white-space:nowrap}.pill.high{background:#fef3f2;color:#b42318}.pill.medium{background:#fffaeb;color:#b54708}.pill.low,.pill.neutral{background:#f2f4f7;color:#344054}
.text-preview{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.text-preview summary{cursor:pointer;font-weight:800;font-size:13px}.text-preview pre{white-space:pre-wrap;max-height:320px;overflow:auto;background:#f8fafc;padding:14px;border-radius:10px;font-size:12px;line-height:1.6}
.paywall{margin-top:18px;padding:34px;text-align:center;background:linear-gradient(180deg,#fff,#f7f9ff);border:1px solid #dbe5ff;border-radius:22px}.paywall-icon{font-size:30px}.paywall h2{margin:10px 0}.paywall p{color:var(--muted)}.price{margin:18px 0}.price strong{font-size:30px}.price span{color:var(--muted)}
.premium-result{margin-top:32px}.premium-head{margin-bottom:16px}.premium-head h2{margin:7px 0}.paid-chip{background:#ecfdf3;color:#027a48;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}
.detail-card{padding:22px;margin-top:14px;box-shadow:none}.detail-top{gap:12px}.detail-top>div{display:flex;align-items:center;gap:10px}.detail-top h3{margin:0}.rule-id{font-size:12px;color:#98a2b3}.detail-block{margin-top:18px}.detail-block h4{font-size:13px;margin:0 0 8px}.detail-block p{font-size:14px;line-height:1.7;color:#475467}.quote{background:#f9fafb;border-left:3px solid #98a2b3;padding:13px;border-radius:8px;white-space:pre-wrap}
.source-note{font-size:12px;color:#667085;background:#f8fafc;padding:10px 12px;border-radius:9px;margin-top:10px}
.choice-grid{display:grid;gap:10px;margin-top:16px}.choice{display:flex;gap:10px;padding:14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:#fff}.choice:has(input:checked){border-color:#93b4ff;background:#f7f9ff}.choice input{margin-top:3px}.choice span{display:flex;flex-direction:column;gap:4px;font-weight:400;line-height:1.5}.choice b{font-size:13px;color:#344054}
.check-row{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid #f1f3f5;line-height:1.5}.check-row:last-child{border-bottom:0}.check-row input{width:auto;margin:3px 0 0}
.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.download-card{padding:22px;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:16px}.download-card h3{margin:8px 0}.download-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.legal-warning{margin-top:14px;background:#fff7ed;border:1px solid #fed7aa;border-radius:14px;padding:16px;color:#9a3412}.legal-warning p{margin:6px 0 0;font-size:13px;line-height:1.6}
.security{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.security h2{font-size:36px;letter-spacing:-1px}.security-grid{display:grid;gap:14px}.security-grid div{padding:20px;border:1px solid var(--line);border-radius:15px;display:flex;flex-direction:column;gap:6px}.security-grid span{color:var(--muted);font-size:13px;line-height:1.6}
.modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(16,24,40,.55);backdrop-filter:blur(4px)}.modal-card{position:relative;width:min(440px,100%);background:#fff;border-radius:22px;padding:28px;box-shadow:0 25px 80px rgba(16,24,40,.28)}.modal-card h2{margin:8px 0}.modal-card p{color:var(--muted);font-size:14px;line-height:1.6}.modal-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:28px;color:#98a2b3;cursor:pointer}.dev-hint{margin-top:14px;border-radius:12px;background:#f8fafc;border:1px dashed #cbd5e1;padding:12px;font-size:12px;color:#64748b;line-height:1.6}.dev-hint code{font-weight:900;color:#1e40af}.code-message{font-size:12px;min-height:18px;margin-top:8px}.code-message.error{color:#b42318}.code-message.ok{color:#027a48}
footer{border-top:1px solid var(--line);padding:32px 0}.footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:13px}.footer strong{color:var(--text)}
@media(max-width:900px){nav{display:none}.connection-badge{font-size:10px}.hero{padding-top:54px}.hero-grid,.security{grid-template-columns:1fr;gap:34px}h1{font-size:39px}.steps{grid-template-columns:1fr}.field-row,.analysis-meta,.stats-grid,.premium-summary,.download-grid{grid-template-columns:1fr}.progress-steps{grid-template-columns:1fr 1fr}.section{padding:62px 0}.section-head h2,.security h2{font-size:30px}.footer{flex-direction:column}.premium-head{align-items:flex-start;gap:12px;flex-direction:column}}


/* ===== V0.4 안정화 + 모바일 보강 ===== */
html,body{max-width:100%;overflow-x:hidden}
body{-webkit-text-size-adjust:100%;padding-bottom:0}
button,a,label,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn,select,input,textarea{min-height:44px}
img,canvas{max-width:100%}
pre,.quote,.detail-block p,.choice span,.check-row span{overflow-wrap:anywhere;word-break:break-word}

.mobile-status-bar,.mobile-action-bar{display:none}

@supports(padding:max(0px)){
  .header{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}
  .mobile-action-bar{padding-bottom:max(10px,env(safe-area-inset-bottom))}
}

@media(max-width:900px){
  .container,.narrow{width:min(100% - 28px,840px)}
  .header{position:sticky;top:0}
  .nav{min-height:60px}
  .brand{font-size:20px}
  .connection-badge{max-width:44vw;overflow:hidden;text-overflow:ellipsis}
  .mobile-status-bar{
    display:flex;position:sticky;top:60px;z-index:19;align-items:center;justify-content:space-between;
    gap:12px;padding:9px 14px;background:#101828;color:#fff;font-size:12px;
    border-bottom:1px solid rgba(255,255,255,.08)
  }
  .mobile-status-bar a{font-weight:800;color:#93c5fd}
  .hero{padding:46px 0 44px}
  .hero-grid{gap:26px}
  h1{font-size:clamp(34px,10vw,43px);line-height:1.12;letter-spacing:-1.8px}
  .lead{font-size:16px;line-height:1.65}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-actions .btn{width:100%}
  .preview-card{padding:18px;border-radius:18px}
  .flow-mini{gap:8px;padding:14px 10px;overflow-x:auto}
  .flow-mini div:not(.arrow){min-width:76px}
  .fake-risk{font-size:13px;padding:13px}
  .section{padding:54px 0}
  .section-head{margin-bottom:24px}
  .section-head h2,.security h2{font-size:28px;line-height:1.2}
  .steps article{padding:22px}
  .upload-card{padding:18px;border-radius:18px}
  .field-row{gap:10px;margin-bottom:10px}
  .dropzone{padding:28px 16px}
  .progress-panel{padding:18px}
  .progress-head{align-items:flex-start;gap:16px}
  .progress-head h3{font-size:16px}
  .progress-steps{grid-template-columns:1fr;gap:6px}
  .result-head{padding:20px;align-items:flex-start;gap:16px}
  .result-head h2{font-size:22px}
  .result-score{font-size:34px}
  .analysis-meta,.stats-grid,.premium-summary{grid-template-columns:1fr 1fr}
  .analysis-meta div,.stats-grid div,.premium-summary div{padding:13px}
  .risk-card,.detail-card{padding:17px;border-radius:16px}
  .risk-title{align-items:flex-start;gap:10px}
  .risk-title .pill{margin-left:auto}
  .risk-title h3{font-size:16px}
  .risk-title p{font-size:12.5px}
  .text-preview pre{max-height:240px;font-size:11.5px}
  .paywall{padding:26px 18px}
  .paywall h2{font-size:24px}
  .price strong{font-size:28px}
  .premium-summary{grid-template-columns:1fr 1fr}
  .premium-summary div:last-child{grid-column:1/-1}
  .detail-top{align-items:flex-start}
  .detail-top>div{align-items:flex-start;flex-wrap:wrap}
  .detail-top h3{font-size:17px}
  .choice{padding:13px}
  .choice input{transform:scale(1.15);transform-origin:top left}
  .check-row{padding:14px 0}
  .check-row input{transform:scale(1.2);transform-origin:top left}
  .download-grid{grid-template-columns:1fr}
  .download-card{padding:18px}
  .download-card .btn{width:100%}
  .legal-warning{font-size:12.5px}
  .security{gap:24px}
  .security-grid div{padding:18px}
  .modal{align-items:flex-end;padding:0}
  .modal-card{
    width:100%;max-width:none;border-radius:20px 20px 0 0;padding:24px 18px 22px;
    max-height:88vh;overflow-y:auto;
    padding-bottom:max(22px,env(safe-area-inset-bottom))
  }
  .modal-close{right:14px;top:10px}
  .footer{padding-bottom:96px}

  .mobile-action-bar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;
    padding:10px 14px;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
    border-top:1px solid var(--line);box-shadow:0 -8px 30px rgba(16,24,40,.08)
  }
  .mobile-primary-action{
    width:100%;min-height:50px;border:0;border-radius:12px;background:var(--accent);color:#fff;
    font-weight:900;font-size:15px;cursor:pointer
  }
  .mobile-primary-action.secondary{background:#101828}
  .mobile-primary-action.done{background:#039855}
}

@media(max-width:520px){
  .container,.narrow{width:min(100% - 20px,840px)}
  .badge{font-size:11px}
  .analysis-meta,.stats-grid,.premium-summary{grid-template-columns:1fr}
  .premium-summary div:last-child{grid-column:auto}
  .preview-top{gap:10px;align-items:flex-start}
  .status{font-size:10px}
  .risk-title{display:grid;grid-template-columns:auto 1fr}
  .risk-title .pill{grid-column:2;justify-self:start;margin-left:0}
  .detail-top{display:grid;grid-template-columns:1fr auto}
  .rule-id{font-size:10px}
  .mobile-status-bar{top:60px}
}

/* ===== V0.5 품질 표시 ===== */
.finding-meta{display:block;margin-top:5px;color:#98a2b3;font-size:11px;line-height:1.45}
.result-head h2{max-width:620px}
@media(max-width:520px){
  .result-head h2{max-width:235px;font-size:19px;line-height:1.35}
  .finding-meta{font-size:10.5px}
}

/* ===== 계약봄 V0.6 ===== */
.announcement{background:#eff6ff;border-bottom:1px solid #dbeafe;color:#1e3a8a;font-size:13px}
.announcement .container{display:flex;gap:12px;align-items:center;padding:10px 0}.announcement strong{white-space:nowrap}.announcement span{color:#475569}
.score-explain{margin:8px 0 0;color:#cbd5e1;font-size:12px;line-height:1.5}.score-explain b{color:#fff}
.selection-notice{display:flex;flex-direction:column;gap:5px;padding:16px 18px;margin-bottom:14px;border:1px solid #bfdbfe;background:#eff6ff;border-radius:14px;color:#1e3a8a}
.selection-notice span{font-size:13px;line-height:1.55;color:#475569}.inline-note{margin:10px 0}
.target-clause{background:#f8fafc;border:1px solid #e2e8f0;padding:13px;border-radius:9px;white-space:pre-wrap}
.preservation-note{display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:11px 12px;border-radius:9px;background:#f0fdf4;color:#166534;font-size:12px;line-height:1.55}
.custom-edit{display:none;margin-top:0}.choice-grid:has(input[value="CUSTOM"]:checked) .custom-edit{display:block}
.compare-card{overflow:hidden}.comparison-preview{display:grid;gap:12px;margin-top:16px}.compare-row{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.compare-row>div:first-child{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;background:#f8fafc;border-bottom:1px solid var(--line)}
.compare-row>div:first-child span{font-size:11px;color:#64748b}.compare-before,.compare-after{padding:12px 14px}.compare-before{background:#fff7ed}.compare-after{background:#f0fdf4;border-top:1px solid #dcfce7}
.compare-before small,.compare-after small{display:block;font-weight:900;margin-bottom:5px;color:#64748b}.compare-before p,.compare-after p{margin:0;white-space:pre-wrap;color:#334155;line-height:1.6;font-size:13px}
.validation-card>p{font-size:13px;color:#64748b;line-height:1.6}.validation-status{margin-top:14px;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:800}
.validation-status.neutral{background:#f8fafc;color:#475569}.validation-status.good{background:#ecfdf3;color:#067647}.validation-status.warn{background:#fffaeb;color:#b54708}.validation-status.bad{background:#fef3f2;color:#b42318}
.validation-issues{display:grid;gap:8px;margin-top:10px}.validation-issue{display:flex;flex-direction:column;gap:4px;padding:11px 12px;border-radius:10px;font-size:12px;line-height:1.55}.validation-issue.high{background:#fef3f2;color:#b42318}.validation-issue.medium{background:#fffaeb;color:#b54708}.validation-ai-note{font-size:12px;color:#475569;background:#f8fafc;padding:10px 12px;border-radius:9px}
.final-confirm{display:flex;gap:12px;margin-top:14px;padding:16px;border:1px solid #dbeafe;background:#f8fbff;border-radius:14px;align-items:flex-start;cursor:pointer}.final-confirm input{width:auto;margin:3px 0 0;transform:scale(1.15)}.final-confirm span{display:flex;flex-direction:column;gap:5px;font-weight:400;line-height:1.6;color:#475569}.final-confirm b{color:#1e3a8a}
.checklist-section,.history-section{margin-top:54px}.checklist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.checklist-grid article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px}.checklist-grid article>b{font-size:17px}.checklist-grid label{display:flex;align-items:flex-start;gap:9px;font-weight:500;line-height:1.45}.checklist-grid input{width:auto;margin:2px 0 0}
.history-list{display:grid;gap:10px;margin-top:14px}.history-item{display:grid;grid-template-columns:1fr auto;gap:4px 14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff}.history-item>div{display:flex;flex-direction:column;gap:3px}.history-item span,.history-item small{font-size:11px;color:#64748b}.history-item strong{font-size:20px}.history-item small{grid-column:1/-1}
@media(max-width:900px){.announcement .container{align-items:flex-start;flex-direction:column;gap:3px}.checklist-grid{grid-template-columns:1fr}.score-explain{font-size:11px}.selection-notice{padding:14px}.compare-row>div:first-child{flex-direction:column}.final-confirm{padding:14px}}
.linked-edit-note{display:flex;flex-direction:column;gap:5px;margin-top:16px;padding:13px 14px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.linked-edit-note b{font-size:13px;color:#334155}.linked-edit-note span{font-size:12px;line-height:1.55}

.text-action{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--primary,#2563eb);font-weight:800;text-decoration:underline;text-underline-offset:3px;margin:6px auto 0;cursor:pointer}.text-action.hidden{display:none!important}

/* V0.6.2 checkout / discount */
.price-stack{display:flex;align-items:baseline;justify-content:center;gap:8px;flex-wrap:wrap}.regular-price{font-size:15px;color:#98a2b3;text-decoration:line-through;font-weight:800}.discount-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eff4ff;color:#2448b8;font-size:11px;font-weight:900;padding:5px 9px}.checkout-card{width:min(500px,100%)}.checkout-benefits{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0;padding:14px;background:#f8fafc;border:1px solid #eef2f6;border-radius:14px}.checkout-benefits span{font-size:13px;font-weight:800;color:#344054}.checkout-price{display:flex;align-items:baseline;justify-content:center;gap:8px;flex-wrap:wrap;margin:20px 0}.checkout-price strong{font-size:32px}.checkout-price small{color:var(--muted)}.center-text{text-align:center}.promo-details{margin-top:16px;border-top:1px solid #eef2f6;padding-top:14px}.promo-details summary{cursor:pointer;color:#667085;font-size:13px;font-weight:800;text-align:center;list-style:none}.promo-details summary::-webkit-details-marker{display:none}.promo-details summary::after{content:"  ▾"}.promo-details[open] summary::after{content:"  ▴"}.promo-inline{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px}.promo-inline input{min-width:0;border:1px solid #d0d5dd;border-radius:10px;padding:11px 12px;font:inherit}.promo-inline .btn{margin:0;white-space:nowrap}.checkout-card .code-message{text-align:center}
@media(max-width:560px){.checkout-benefits{grid-template-columns:1fr}.checkout-price strong{font-size:29px}.promo-inline{grid-template-columns:1fr auto}}
.processing-consent{display:flex;align-items:flex-start;gap:10px;margin:14px 0;font-size:12px;line-height:1.55;color:#667085}.processing-consent input{width:18px;height:18px;margin-top:1px;flex:0 0 auto}.processing-consent a{color:var(--primary);font-weight:800}

/* v0.7 perspective + expert review */
.nav-badges{display:flex;align-items:center;gap:7px}.connection-badge.expert{background:#eef8f1;color:#146c43;border-color:#cbe8d5}.field-hint{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45}.analysis-meta{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.nav-badges{gap:4px}.connection-badge.expert{max-width:135px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analysis-meta{grid-template-columns:repeat(2,1fr)}}

/* v0.8 structured Rule Engine */
.detail-audit-summary{margin:18px 0 20px;padding:18px;border:1px solid #dbe4ee;border-radius:16px;background:#fbfdff}
.detail-audit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.detail-audit-head h3{margin:4px 0 5px;font-size:20px}.detail-audit-head p{margin:0;color:#667085;font-size:12px;line-height:1.55}.detail-audit-head>strong{font-size:24px;color:#183b66;white-space:nowrap}
.detail-audit-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.detail-audit-counts>div{padding:12px;border:1px solid #e4e7ec;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:4px}.detail-audit-counts span{font-size:11px;color:#667085}.detail-audit-counts strong{font-size:18px}
.detail-group-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:12px 0}.detail-group-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e4e7ec;border-radius:12px;background:#fff}.detail-group-card>div:first-child{display:flex;flex-direction:column;gap:2px}.detail-group-card b{font-size:12px}.detail-group-card small{font-size:10px;color:#98a2b3}.detail-mini-counts{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.detail-mini-counts span{font-size:10px;font-weight:900;padding:4px 6px;border-radius:999px}.detail-mini-counts .check{background:#fff6ed;color:#b54708}.detail-mini-counts .pass{background:#ecfdf3;color:#067647}.detail-mini-counts .na{background:#f2f4f7;color:#667085}
.detailed-check-card{margin-top:16px}.detail-filter{display:flex;align-items:center;gap:8px;color:#667085;font-size:12px;font-weight:800}.detail-filter select{width:auto;min-width:120px;padding:8px 28px 8px 10px;border:1px solid #d0d5dd;border-radius:9px;background:#fff}.detail-check-scroll{max-height:620px;overflow:auto;margin-top:14px;border:1px solid #e4e7ec;border-radius:12px}.detail-check-table{width:100%;border-collapse:collapse;min-width:760px}.detail-check-table th{position:sticky;top:0;z-index:1;background:#f8fafc;color:#475467;font-size:11px;text-align:left;padding:10px;border-bottom:1px solid #e4e7ec}.detail-check-table td{vertical-align:top;padding:11px 10px;border-bottom:1px solid #eef2f6;font-size:12px;line-height:1.5}.detail-check-table td:first-child{width:86px}.detail-check-table td:nth-child(2){width:180px}.detail-check-table td:nth-child(3){width:100px}.detail-check-table td>b{display:block}.detail-check-table td>small{display:block;color:#98a2b3;font-size:10px;margin-top:2px}.detail-check-table td p{margin:5px 0;color:#475467}.detail-check-table details{margin-top:5px}.detail-check-table summary{cursor:pointer;color:#475467;font-weight:800;font-size:11px}.detail-check-table blockquote{margin:6px 0 0;padding:8px 10px;border-left:3px solid #d0d5dd;background:#f8fafc;border-radius:0 8px 8px 0;color:#475467;white-space:pre-wrap}.detail-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.detail-status.pass{background:#ecfdf3;color:#067647}.detail-status.check{background:#fff6ed;color:#b54708}.detail-status.na{background:#f2f4f7;color:#667085}.detail-location{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eef4ff;color:#3448a4;font-size:10px;font-weight:900}.empty-detail{text-align:center;color:#98a2b3;padding:26px!important}
@media(max-width:760px){.detail-audit-head{flex-direction:column;gap:8px}.detail-audit-counts{grid-template-columns:1fr}.detail-group-summary{grid-template-columns:1fr}.detail-group-card{align-items:flex-start}.detail-top:has(.detail-filter){display:flex;flex-direction:column}.detail-filter{width:100%;justify-content:space-between}.detail-filter select{flex:1}.detail-check-scroll{max-height:520px}}
.finding-location{display:inline-flex;margin:0 0 7px;padding:4px 7px;border-radius:999px;background:#eef4ff;color:#3448a4;font-size:10px;font-weight:900}
