.intake-summary{display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-bottom:20px}.intake-summary strong{font-size:1.12rem}.intake-actions{display:flex; flex-wrap:wrap; gap:10px; margin:16px 0}.intake-panel{margin:18px 0; padding:0; border:0; border-radius:0; background:transparent}.intake-panel h3{margin-top:0}.intake-code{font-size:2.4rem; letter-spacing:.32em; font-variant-numeric:tabular-nums}.intake-field{display:grid; gap:8px; padding:14px 0; border-bottom:1px solid var(--line)}.intake-field input,.intake-field textarea{width:100%; box-sizing:border-box; padding:11px; border:1px solid var(--input-line); border-radius:var(--radius); font:inherit;font-size:1rem}.intake-field label{display:block}.intake-field .original{color:var(--muted)}.intake-thumb{display:block; width:100%; max-width:440px; max-height:260px; object-fit:contain; border-radius:var(--radius)}.intake-save{min-height:1.5em; color:var(--muted)}.intake-camera{position:fixed; inset:0; z-index:10000; background:var(--ink)}.intake-status{background:var(--paper); border-radius:3px; padding:6px 12px}.intake-hint{color:var(--muted); line-height:1.6}.intake-warning{color:var(--warning)}.intake-panel details{margin:14px 0}.intake-panel dl{display:grid; grid-template-columns:1fr 2fr; gap:8px}.intake-panel dd{margin:0; overflow-wrap:anywhere} [hidden]{display:none!important}
details pre{max-width:100%; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere}.intake-field select{min-height:44px; font:inherit;font-size:1rem}

/* 2026-09-15 已确认手机 DEMO：样式限定在 PDPA 与初审首段页面。 */
.intake-flow{background:var(--paper); color:var(--accent); min-height:100dvh; line-height:1.65}
.intake-flow .page{width:100%; max-width:720px; margin:0 auto; padding:0; min-height:100dvh}
.flow-topbar{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 20px 14px; background:var(--paper); border-bottom:1px solid var(--line)}
.flow-brand{display:flex; align-items:center; gap:9px; font-weight:600; letter-spacing:normal; font-size:16px}.flow-brand span{display:grid; place-items:center; width:28px; height:28px; border-radius:var(--radius); background:var(--wash); color:var(--accent); font-size:17px}
.intake-flow #language-slot{margin:0}.intake-flow .page-language{margin:0; padding:0}.intake-flow .page-language select{font-size:.875rem; min-height:44px; background:var(--paper); border:1px solid var(--input-line); border-radius:var(--radius)}
.flow-steps{display:flex; gap:6px; padding:18px 20px 10px}.flow-step{flex:1; color:var(--muted); font-size:.875rem; line-height:1.5}.flow-step:before{content:''; display:block; height:3px; background:var(--wash); border-radius:var(--radius); margin-bottom:7px}.flow-step.flow-complete:before{background:var(--wash)}.flow-step.flow-active{color:var(--accent); font-weight:600}.flow-step.flow-active:before{background:var(--accent)}
.flow-content{padding:10px 20px 24px}.flow-content h1{font-size:25px; line-height:1.4; margin:0 0 8px; letter-spacing:normal}.flow-intro{font-size:14px; color:var(--accent); margin:0 0 20px}
.flow-summary{display:flex; justify-content:space-between; gap:12px; padding:12px 14px; margin:0 0 20px; border:1px solid var(--line); border-radius:var(--radius); background:var(--paper); font-size:.875rem}.flow-summary span,.flow-summary strong{display:block}.flow-summary span{color:var(--muted)}.flow-summary strong{color:var(--accent); overflow-wrap:anywhere}.flow-expiry{text-align:right; max-width:55%}
.flow-card,.intake-flow .intake-panel{background:transparent; border:0; border-radius:0; padding:0; margin:0 0 16px}.flow-card h2{font-size:20px; line-height:1.45; margin:0 0 9px}.flow-card p{color:var(--muted); margin:0 0 18px; font-size:14px}
.flow-icon{width:52px; height:52px; display:grid; place-items:center; border-radius:var(--radius); margin-bottom:18px; background:var(--paper); color:var(--accent); font-size:25px}.flow-icon.success{background:var(--wash); color:var(--success)}.flow-icon.waiting{background:var(--wash); color:var(--warning)}
.intake-flow .btn{display:block; width:100%; min-height:50px; padding:13px 12px; border-radius:var(--radius); font-size:15px; margin:10px 0 0}.intake-flow .btn-primary{background:var(--accent); color:var(--on-accent); border:1px solid var(--accent)}.intake-flow .btn-ghost{background:var(--paper); color:var(--accent); border:1px solid var(--line)}
.intake-flow button:disabled{opacity:.65; cursor:wait}.intake-flow button:focus-visible,.intake-flow a:focus-visible{outline:3px solid var(--accent); outline-offset:3px}
.flow-help{font-size:.875rem; color:var(--accent); margin:16px 3px}.flow-help summary{cursor:pointer}.flow-help p{font-size:.875rem}.flow-help .btn{font-size:.875rem; min-height:44px}
.flow-feedback{padding:12px 14px; background:var(--paper); color:var(--accent); border-radius:var(--radius); font-size:.875rem; margin-top:15px; white-space:pre-line}.flow-feedback:empty{display:none}.flow-small{font-size:.875rem; color:var(--muted); text-align:center}.flow-code{display:flex; gap:7px; justify-content:center; margin:24px 0 20px}.flow-code span{min-width:0; flex:0 1 41px; padding:10px 0; border:1px solid var(--line); background:var(--paper); border-radius:var(--radius); font-size:27px; font-weight:600; text-align:center; color:var(--accent)}
.flow-bottom{position:sticky; bottom:0; padding:12px 0 max(12px,env(safe-area-inset-bottom)); background:var(--paper); border-top:1px solid var(--line)}.flow-bottom p{margin:5px 0 0}.intake-flow .agreement-wrap{padding:0; overflow:hidden}.intake-flow .agreement-frame{display:block; width:100%; height:450px; border:0; background:var(--paper)}
/* PDPA 正文与四框沿用合同签署页的边界、尺寸和对齐，避开 flow-card 的去边框规则。 */
.pdpa-page .agreement-wrap{margin:16px 0 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);overflow:hidden}
.pdpa-page .agreement-frame{height:min(70dvh,650px);min-height:320px}
.pdpa-page .pdpa-confirmations{display:grid;gap:var(--space-5);list-style:none;padding:0;margin:0 0 8px}
.pdpa-page .pdpa-consent-row{display:flex;gap:var(--space-3);align-items:flex-start;text-align:start;line-height:1.6;min-height:var(--target);font-size:.875rem}
.pdpa-page .pdpa-consent-row input{flex:0 0 22px;width:22px;height:22px;margin:4px 0 0;accent-color:var(--accent)}
.pdpa-consent-text{min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.pdpa-required-mark{color:var(--danger)}
.pdpa-page .pdpa-consent-row:has(input:disabled){cursor:default}
.intake-flow .consent-list{background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); list-style:none; padding:5px 16px; margin:0 0 18px}.intake-flow .consent-item{margin:0; padding:0; border:0; background:none}.intake-flow .consent-row{display:flex; align-items:flex-start; gap:10px; padding:15px 0; border-bottom:1px solid var(--paper); font-size:14px}.intake-flow .consent-item:last-child .consent-row{border:0}.intake-flow .consent-check{width:20px; height:20px; margin:2px 0 0; flex-shrink:0; accent-color:var(--accent)}.intake-flow .consent-text{flex:1}.intake-flow .consent-badge{font-size:.875rem; padding:1px 5px; color:var(--accent); background:var(--paper); border:0; border-radius:var(--radius)}.intake-flow .consent-title{font-size:16px}.intake-flow #save-status:empty,.intake-flow .error:empty{display:none}.intake-flow .intake-panel{margin:16px 0}.intake-flow .intake-field .original{color:var(--accent)}

.intake-flow .language-selector{margin:0; padding:0}.intake-flow .language-selector>span{display:none}.intake-flow .language-selector select{font-size:.875rem; min-height:44px; background:var(--paper); border:1px solid var(--input-line); border-radius:var(--radius)}

.intake-flow .page{display:block; gap:0}.intake-flow #language-slot{flex:0 0 auto; width:auto; max-width:50%}

.intake-flow .btn-primary{box-shadow:none}.intake-flow .consent-list{gap:0}.intake-flow .consent-item{border-radius:0}.intake-flow .consent-row{scroll-margin-block:120px}

/* 已确认集中修复：必填和操作反馈就近展示。 */
.required::after{content:" *"; color:var(--danger)}.intake-panel,.intake-field,#confirm-ocr{scroll-margin-block:100px}.intake-flow .error{color:var(--danger); font-size:14px; line-height:1.6; overflow-wrap:anywhere}.intake-flow [aria-busy=true]{cursor:progress}#load-status,.intake-panel [role=status]{color:var(--accent); font-size:14px}#load-status:empty,.intake-panel [role=status]:empty{display:none}.intake-flow #confirm-ocr{accent-color:var(--accent); width:20px; height:20px; margin-right:8px; vertical-align:middle}

.intake-correction-badge{color:var(--warning); font-size:.875rem; font-weight:600}.intake-correction-summary{line-height:1.8; padding-left:22px}.intake-field[data-readonly-field] span,.intake-field>a{overflow-wrap:anywhere}

.intake-decision-feedback{margin:12px 0 24px; overflow-wrap:anywhere}.intake-decision-feedback:empty{display:none}.intake-decision-feedback button{margin-top:8px}.intake-review-history h4{margin:0 0 8px}.intake-review-history a{display:inline-block; margin-bottom:8px}
.intake-social-comparison{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; overflow-wrap:anywhere}.intake-social-comparison h4{margin:0 0 8px; color:var(--text-secondary,var(--muted))}@media(max-width:600px){.intake-social-comparison{grid-template-columns:1fr}}

.flow-topbar{min-height:82px;padding:16px var(--inset);background:var(--paper)}.flow-content{padding:20px var(--inset) 32px}.flow-steps{padding:20px var(--inset) 10px;gap:12px}.flow-step{font-size:.875rem;line-height:1.7}.flow-card,.intake-flow .intake-panel{margin-block:28px;padding:0}.flow-card+.flow-card,.intake-panel+.intake-panel{border-top:1px solid var(--line);padding-top:28px}.flow-summary{background:var(--wash);font-size:.875rem}.flow-icon{background:var(--wash);color:var(--accent);border-radius:var(--radius)}.flow-card p,.flow-help,.flow-help p{font-size:1rem}.flow-bottom{position:static;padding-block:18px;background:var(--paper)}.intake-flow .consent-list{padding:0;background:transparent;border:0}.intake-flow .consent-badge{font-size:.875rem}.flow-brand{letter-spacing:normal}.flow-feedback{white-space:pre-line}.intake-flow{background:var(--paper)}

/* 好友结果在操作之前，避免沿用通用反馈的顶部留白。 */
.friend-result{margin-top:0;margin-bottom:16px}

.intake-challenge{display:flex;justify-content:center;max-width:100%;margin:16px auto;min-width:0}

/* 本阶段指引与资料区以单线分隔。 */
.flow-materials-guidance{padding-block-end:var(--space-4);border-block-end:1px solid var(--line);margin-block-end:var(--space-4)}
