:root{--accent:#7750cc;--accent-dark:#5f37b0;--ink:#292438;--muted:#6b6378;--line:#e6e1ed;--page:#f5f3f8;--surface:#fff;--tint:#f0eaf9;--error:#a72837;--success:#21634c;--radius:12px;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:var(--page);font-synthesis:none;line-height:1.6;scrollbar-color:#b5a4ce var(--page)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}a{color:var(--accent-dark);text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button{border:0}input,textarea{caret-color:var(--accent-dark)}::selection{background:#d9c9f4;color:#35205e}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1{font-size:30px;line-height:1.45;font-weight:650;letter-spacing:.01em}h2{font-size:19px;line-height:1.5;font-weight:650}h3{font-size:15px;font-weight:600}p{max-width:72ch}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b295e6;outline-offset:4px}.skip-link{position:absolute;top:-80px;background:#fff;padding:12px;z-index:30}.skip-link:focus{top:8px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-header{background:var(--accent);color:#fff}.header-inner{max-width:1240px;margin:auto;min-height:76px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none;font-size:20px;font-weight:600}.brand svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7}.header-link{display:inline-flex;gap:12px;align-items:center;min-height:44px;padding:8px 12px;color:#fff;background:none;text-decoration:none;font-size:14px}.header-link:hover{background:#ffffff16;border-radius:6px}.header-inner nav{display:flex;gap:12px}.page-shell{max-width:1240px;padding:24px 30px 0;margin:auto}.preview-notice{display:flex;gap:12px;align-items:baseline;padding:10px 15px;background:#eee8f6;color:#59466f;border-radius:6px;font-size:12px}.preview-notice strong{font-size:12px;flex-shrink:0;font-weight:600}.page-heading{padding:30px 0 26px}.page-heading p,.dashboard-heading p{margin-top:8px;color:var(--muted);font-size:15px}.intake-layout{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:24px;align-items:start}.form-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.form-section{padding:30px 32px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:24px}.section-heading>span{font-size:12px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}.field label,.field legend{font-size:14px;font-weight:500}.required{color:var(--accent-dark);margin-left:3px}.optional{font-size:12px;color:var(--muted);font-weight:400;margin-left:5px}input:not([type=checkbox],[type=radio]),select,textarea{width:100%;min-height:46px;border:1px solid #d8d2e2;border-radius:6px;background:#fff;color:var(--ink);padding:10px 12px;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}input::placeholder,textarea::placeholder{color:#6b6378;opacity:1}select{padding-right:28px}input:not([type=checkbox],[type=radio]):focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #7750cc18}input[aria-invalid=true],select[aria-invalid=true]{border-color:var(--error)}select:disabled{background:#f5f3f7;color:#6b6378;cursor:not-allowed}input[type=date]{min-width:0;appearance:none}input[type=date]::-webkit-date-and-time-value{text-align:left}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:17px;height:17px;flex-shrink:0;cursor:pointer}.choice-field{border:0;padding:0;margin:0;min-width:0}.choice-field legend{margin-bottom:8px;padding:0}.choice-row{display:flex;gap:12px}.choice-row label{flex:1;display:flex;align-items:center;gap:10px;min-height:46px;border:1px solid #d8d2e2;border-radius:6px;padding:8px 14px;cursor:pointer}.choice-row label:has(input:checked){background:var(--tint);border-color:var(--accent);color:var(--accent-dark)}.choice-row input{margin:0}.unit-input{position:relative}.unit-input input{padding-right:55px}.unit-input>span{position:absolute;right:13px;top:12px;color:var(--muted);font-size:14px}.region-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.custom-region{margin-top:4px}.field-hint{font-size:12px;color:var(--muted);line-height:1.5}.field-error{font-size:12px;color:var(--error);line-height:1.5}.field-error:empty{display:none}.phone-input{display:grid;grid-template-columns:106px minmax(0,1fr);gap:8px}.phone-input select{font-size:12px;padding-left:9px;padding-right:18px}.range-input{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px;align-items:center;gap:8px}.range-input input{padding-left:9px;padding-right:9px}.range-input>span{font-size:13px;color:var(--muted)}textarea{resize:vertical;min-height:104px}.character-count{font-size:12px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;margin-top:-4px}.submission-area{padding:25px 32px 30px}.consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;cursor:pointer}.consent input{margin:3px 0 0}.privacy-details{margin:12px 0 0 27px;font-size:12px;color:var(--muted)}.privacy-details summary{cursor:pointer;min-height:30px;color:var(--accent-dark);display:list-item}.privacy-details p{line-height:1.85;background:var(--page);padding:14px;border-radius:6px}.submit-row{display:flex;gap:18px;align-items:center;margin-top:25px}.submit-row>span{font-size:12px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:46px;padding:11px 22px;border-radius:6px;font-size:14px;font-weight:500;text-decoration:none;border:1px solid transparent;white-space:nowrap}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-dark)}.button.secondary{border-color:#d6cbe7;background:#fff;color:var(--accent-dark)}.button.secondary:hover{background:var(--tint)}.error-summary{margin:24px 32px 0;padding:12px 16px;background:#fff1f3;border:1px solid #ebbac2;border-radius:6px;color:var(--error);font-size:13px}.intake-aside{position:sticky;top:22px;border-radius:var(--radius);background:#eee7f7;overflow:hidden}.aside-inner{padding:30px 26px;color:#45305e}.intake-aside h2{font-size:22px}.aside-intro{font-size:13px;color:#6a557d;margin-top:9px}.process-list{padding:0;margin:32px 0;list-style:none;display:flex;flex-direction:column;gap:0}.process-list li{display:flex;gap:14px;position:relative;padding-bottom:28px}.process-list li:last-child{padding-bottom:0}.process-list li:not(:last-child):before{content:"";position:absolute;left:14px;top:31px;height:calc(100% - 28px);width:1px;background:#c4b1de}.step-marker{width:29px;height:29px;border:1px solid #bba3d9;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:12px;color:var(--accent-dark);background:#eee7f7}.process-list h3{padding-top:2px}.process-list p{margin-top:6px;font-size:12px;color:#6a557d;line-height:1.8}.aside-note{display:flex;gap:12px;border-top:1px solid #d8cae9;padding-top:24px}.aside-note svg{width:22px;height:22px;flex-shrink:0;fill:none;stroke:#735496;stroke-width:1.5}.aside-note h3{font-size:13px}.aside-note p{font-size:12px;line-height:1.85;color:#6a557d;margin-top:7px}.page-footer{text-align:center;color:var(--muted);font-size:12px;padding:28px 10px}.success-panel{padding:80px 40px;text-align:center}.success-icon{width:58px;height:58px;stroke:var(--accent);stroke-width:2;fill:var(--tint);margin-bottom:24px}.success-icon path{fill:none}.success-panel h2{font-size:27px}.success-panel>p{color:var(--muted);margin:14px auto;font-size:14px}.success-panel dl{display:flex;justify-content:center;gap:15px;padding:20px 0;font-size:13px}.success-panel dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.success-actions{display:flex;gap:12px;justify-content:center;margin-top:28px}
.login-panel{max-width:440px;margin:60px auto 80px;padding:38px;background:white;border:1px solid var(--line);border-radius:var(--radius)}.login-illustration svg{width:48px;height:48px;stroke:var(--accent);stroke-width:2;fill:var(--tint);margin-bottom:22px}.login-panel h1{font-size:25px}.login-panel>p{color:var(--muted);font-size:13px;margin-top:8px}.login-panel form{margin-top:26px}.login-panel label{display:block;font-size:14px;margin-bottom:8px}.login-panel .button{width:100%;margin-top:18px}.login-panel .field-error{margin-top:10px}.login-panel .login-footnote{font-size:12px;text-align:center;margin-top:22px}.dashboard-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 0 24px}.summary-line{display:flex;align-items:center;gap:32px;border-top:1px solid var(--line);padding:18px 0 24px;font-size:13px;color:var(--muted)}.summary-line strong{font-size:22px;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600;margin-left:10px}.summary-line button{background:none;color:#8b561a;padding:0;min-height:44px;font-size:13px}.summary-line button strong{color:#8b561a}.management-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.filters{display:grid;grid-template-columns:1.65fr 1fr 1fr 1fr;gap:16px;padding:24px 24px 12px}.filters label{font-size:12px}.filter-meta{display:flex;gap:18px;align-items:center;padding:0 24px 16px;font-size:12px}.inline-check{display:flex;align-items:center;gap:7px;min-height:36px}.text-button{color:var(--accent-dark);background:none;padding:6px 0;min-height:36px;font-size:13px}.filter-meta>span{margin-left:auto;color:var(--muted)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;white-space:nowrap}th{font-size:12px;color:var(--muted);background:#f6f4fa;font-weight:500;padding:13px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:17px 18px;border-bottom:1px solid #eeeaf3;vertical-align:middle}th:first-child,td:first-child{padding-left:24px}tbody tr:hover{background:#fbf9fe}.person-name{font-weight:600;font-size:14px}.person-meta{display:block;font-size:11px;color:var(--muted);margin-top:3px}.phone-cell{font-variant-numeric:tabular-nums}.record-status{min-width:108px;min-height:38px;font-size:12px;padding:6px 24px 6px 10px}.status-pending{color:#805518;background:#fff8e9}.duplicate-badge{display:inline-flex;background:#fff3df;color:#8c5516;border-radius:4px;padding:4px 8px;font-size:11px}.normal-badge{color:var(--muted);font-size:12px}.details-link{font-size:12px;color:var(--accent-dark);background:none;min-height:38px;padding:4px 0}.table-footer{font-size:12px;color:var(--muted);padding:16px 24px;max-width:none;background:#fcfbfd}.empty-state{text-align:center;padding:44px 24px}.empty-state h2{font-size:18px}.empty-state p{color:var(--muted);font-size:13px;margin:8px auto 22px}.table-message{padding:12px 24px;background:var(--tint);color:var(--accent-dark);font-size:13px;max-width:none}.table-message.error{background:#fff1f3;color:var(--error)}dialog{border:0;border-radius:var(--radius);padding:28px;width:min(640px,calc(100vw - 32px));max-height:85vh;color:var(--ink);box-shadow:0 18px 64px #281a4330}dialog::backdrop{background:#271c405c}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.icon-button{width:40px;height:40px;display:grid;place-items:center;background:#f4f0f9;border-radius:6px}.icon-button svg{width:20px;height:20px;fill:none;stroke:var(--accent-dark);stroke-width:1.6}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}.detail-grid div{min-width:0}.detail-grid dt{font-size:12px;color:var(--muted);margin-bottom:5px}.detail-grid dd{margin:0;font-size:14px;overflow-wrap:anywhere;white-space:pre-wrap}.detail-grid .full{grid-column:1/-1}.detail-notice{font-size:12px;color:#8c5516;background:#fff3df;padding:12px 14px;margin-bottom:20px;border-radius:6px}.muted{color:var(--muted)}
@media(max-width:1020px){.intake-layout{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.form-section{padding:26px 24px}.form-grid{gap:20px 18px}.aside-inner{padding:26px 20px}.intake-aside h2{font-size:20px}.phone-input{grid-template-columns:95px minmax(0,1fr)}.section-heading>span{font-size:11px}.submission-area{padding:24px}.submit-row{align-items:flex-start;flex-direction:column;gap:10px}.error-summary{margin:20px 24px 0}}
@media(max-width:800px){.header-inner{padding:0 20px;min-height:66px}.brand{font-size:18px;gap:9px}.brand svg{width:30px;height:30px}.page-shell{padding:18px 20px 0}.page-heading{padding:25px 0 22px}h1{font-size:25px}.intake-layout{grid-template-columns:1fr}.intake-aside{position:static}.aside-inner{padding:24px}.process-list{flex-direction:row;gap:22px;margin:24px 0}.process-list li{flex:1;flex-direction:column;padding:0;gap:10px}.process-list li:not(:last-child):before{display:none}.aside-note p{max-width:none}.filters{grid-template-columns:1fr 1fr}.summary-line{gap:22px}.summary-line strong{font-size:20px;margin-left:6px}.dashboard-heading h1{font-size:26px}}
@media(max-width:520px){.header-inner{padding:0 16px;min-height:62px;gap:8px}.brand{font-size:16px;gap:8px}.brand svg{width:27px;height:27px}.header-link{font-size:12px;padding:7px 4px;gap:5px}.header-inner nav{gap:10px}.page-shell{padding:14px 14px 0}.preview-notice{align-items:flex-start;gap:6px;flex-direction:column;padding:10px 12px;font-size:11px;line-height:1.65}.preview-notice strong{font-size:11px}.page-heading{padding:23px 2px 22px}.page-heading h1{font-size:23px;letter-spacing:0;line-height:1.55}.page-heading p{font-size:13px;margin-top:8px}.form-section{padding:24px 20px}.section-heading{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:20px}.section-heading h2{font-size:18px}.section-heading>span{font-size:12px}.form-grid{grid-template-columns:1fr;gap:20px}.field label,.field legend{font-size:14px}.region-row{grid-template-columns:1fr;gap:10px}.phone-input{grid-template-columns:110px minmax(0,1fr)}input:not([type=checkbox],[type=radio]),select,textarea{font-size:16px;min-height:48px}.field-hint{font-size:12px}.phone-input select{font-size:13px}.submission-area{padding:22px 20px 26px}.consent{font-size:12px;line-height:1.8}.submit-row{align-items:stretch;text-align:center;margin-top:22px}.submit-row .button{width:100%;min-height:48px}.privacy-details{margin-left:0}.process-list{flex-direction:column;gap:0}.process-list li{flex-direction:row;gap:14px;padding-bottom:24px}.process-list li:not(:last-child):before{display:block}.process-list li:last-child{padding:0}.intake-aside h2{font-size:20px}.page-footer{font-size:11px;padding:24px 6px}.error-summary{margin:20px 20px 0}.success-panel{padding:50px 22px}.success-panel h2{font-size:24px}.success-actions{flex-direction:column}.login-panel{margin:28px auto 45px;padding:28px 24px}.login-panel h1{font-size:24px}.dashboard-heading{align-items:flex-start;padding:25px 0 18px}.dashboard-heading h1{font-size:25px}.dashboard-heading p{font-size:12px;max-width:22ch}.dashboard-heading .button{font-size:12px;padding:8px 12px;min-height:40px}.summary-line{gap:14px;justify-content:space-between;padding:12px 0 16px;font-size:11px}.summary-line strong{font-size:18px;margin-left:4px}.summary-line button{font-size:11px}.filters{padding:18px 16px 10px;gap:14px 12px}.filters .search-field{grid-column:1/-1}.filters .field:last-child{grid-column:1/-1}.filters select,.filters input{font-size:14px;min-height:44px}.filter-meta{flex-wrap:wrap;padding:0 16px 14px;gap:4px 16px}.filter-meta>span{width:100%;margin:0}.table-footer{padding:14px 16px;line-height:1.8}th:first-child,td:first-child{padding-left:16px}.record-status{font-size:12px;min-height:40px}.detail-grid{gap:18px 14px}dialog{padding:22px}.table-scroll{scrollbar-width:thin}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:520px){
  .table-scroll{overflow:visible}table,tbody{display:block;white-space:normal}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;padding:20px 16px;border-top:1px solid var(--line)}
  tbody td{display:block;padding:0!important;border:0;min-width:0;overflow-wrap:anywhere;font-size:14px}
  tbody td:first-child{grid-column:1/-1}.person-name{font-size:16px}.person-meta{font-size:12px}
  tbody td:before{display:block;color:var(--muted);font-size:12px;margin-bottom:3px}
  tbody td:nth-child(2):before{content:"年龄"}tbody td:nth-child(3):before{content:"现居地区"}
  tbody td:nth-child(4){grid-column:1/-1}tbody td:nth-child(4):before{content:"手机号"}
  tbody td:nth-child(5):before{content:"跟进状态"}tbody td:nth-child(6):before{content:"登记检查"}
  tbody td:last-child{grid-column:1/-1}.record-status{width:100%;min-height:44px;font-size:14px}.details-link{min-height:44px;font-size:14px}
  .duplicate-badge,.normal-badge{font-size:12px}.duplicate-badge{margin-top:5px}.normal-badge{display:block;padding-top:8px}
}

.record-actions{display:flex;align-items:center;gap:18px}.delete-link{background:none;color:var(--error);font-size:13px;min-height:44px;padding:4px 0}.delete-link:hover{text-decoration:underline;text-underline-offset:3px}.delete-dialog{width:min(480px,calc(100vw - 32px))}.delete-dialog h2{font-size:22px;line-height:1.5}.delete-step{font-size:14px;color:var(--muted);margin:0 0 10px}.delete-identity{font-size:16px;font-weight:600;overflow-wrap:anywhere;margin:20px 0 12px;font-variant-numeric:tabular-nums}#delete-description{font-size:14px;line-height:1.8;color:var(--muted)}#delete-error{font-size:14px;margin-top:16px}.delete-actions{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-top:28px}.delete-actions .button{min-height:46px}.button.primary.danger{background:var(--error)}.button.primary.danger:hover{background:#85202c}@media(max-width:520px){.delete-link{font-size:14px}.delete-dialog h2{font-size:20px}.delete-actions .button{flex:1;min-width:110px}}

.login-panel .field+.field{margin-top:18px}.login-panel .field{gap:6px}.login-panel .field label{margin-bottom:0}

.dashboard-actions,.invite-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.invite-result{padding:20px 24px;background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;margin:0 0 20px}.invite-result h2{font-size:19px}.invite-result p{font-size:13px;color:var(--muted);margin-top:8px}.invite-controls{margin-top:12px}.invite-controls input{flex:1;min-width:160px;font-size:14px}.invite-controls a{display:inline-flex;align-items:center;min-height:44px}.dashboard-actions .button{white-space:nowrap}#invite-error:empty{display:none}@media(max-width:520px){.dashboard-actions{width:100%}.dashboard-actions .button{flex:1}.invite-result{padding:18px}.invite-controls input{flex-basis:100%}.dashboard-heading{flex-wrap:wrap}}
