/* RC104.1 — self-service claim uses active theme header/footer */
.lp-public-claim{background:#f6f8fc;color:#243044;min-height:55vh;padding:56px 18px 84px;font-family:inherit}
.lp-public-claim *{box-sizing:border-box}
.lp-public-claim-inner{max-width:820px;margin:0 auto}
.lp-claim-eyebrow{font-size:11px;letter-spacing:.14em;color:var(--lp-claim-accent,#b72e44);font-weight:600}
.lp-public-claim h1{font-weight:600;font-size:clamp(27px,4vw,38px);line-height:1.16;margin:10px 0 14px}
.lp-claim-intro{font-size:15px;color:#647085;max-width:680px;line-height:1.65;margin-bottom:28px}
.lp-claim-panel{background:#fff;border:1px solid #e2e7ee;border-radius:18px;box-shadow:0 9px 32px #18243d0c;padding:30px}
.lp-claim-back{font-size:13px;color:#69798c;text-decoration:none;display:inline-block;margin-bottom:22px}
.lp-claim-back:hover{color:var(--lp-claim-accent,#b72e44)}
.lp-claim-est{border-radius:12px;padding:17px 20px;background:#f6f8fb;display:flex;flex-direction:column;gap:6px;margin-bottom:24px}
.lp-claim-est span{font-size:12px;color:#66778e}
.lp-claim-est strong{font-size:19px;font-weight:600;color:#263348}
.lp-claim-form{display:grid;gap:21px}
.lp-claim-form label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:600;color:#324154}
.lp-claim-form label small{font-weight:400;font-size:12px;color:#768397}
.lp-claim-form input{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid #cfd8e5;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-size:14px;color:#293449}
.lp-claim-form input:focus{border-color:var(--lp-claim-accent,#b72e44);outline:3px solid #f8e7eb}
/* Same accessible select-file treatment as the professional dashboards. */
.lp-claim-document-field{min-width:0;display:grid;gap:9px}
.lp-claim-document-title{font-size:14px;font-weight:600;color:#324154}
.lp-claim-document-field>small{font-size:12px;font-weight:400;color:#768397}
.lp-claim-file-control{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap;padding:12px 13px;border:1px solid #e1e6ee;border-radius:12px;background:#f8fafc}
.lp-claim-form input.lp-claim-native-file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;min-height:0!important;opacity:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.lp-claim-file-button{display:inline-flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:9px!important;padding:11px 16px;min-height:44px;border:1px solid #cfd8e5;border-radius:10px;background:#fff;color:#324154;cursor:pointer;font-size:13px!important;font-weight:600!important;line-height:1.3;box-shadow:0 1px 2px #16243a0a;transition:border-color .16s,background .16s;white-space:nowrap}
.lp-claim-file-button:hover{background:#f2f5f9;border-color:#aebed0}
.lp-claim-native-file:focus-visible+.lp-claim-file-button{outline:3px solid var(--lp-claim-accent,#b72e44);outline-offset:3px}
.lp-claim-file-name{font-size:13px;color:#68788e;flex:1;min-width:0;overflow-wrap:anywhere}
.lp-claim-file-control.is-selected{border-color:#c3dccc;background:#f7fcf9}
.lp-claim-file-control.is-selected .lp-claim-file-name{color:#236346;font-weight:500}
.lp-claim-primary{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:12px 24px;background:var(--lp-claim-accent,#be3047);color:#fff!important;border:0;border-radius:10px;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;width:fit-content}
.lp-claim-primary:hover{background:var(--lp-claim-accent,#96253a);color:#fff}
.lp-claim-help,.lp-claim-bottom{font-size:13px;color:#718094;line-height:1.6}
.lp-claim-bottom{padding:20px 8px}
.lp-claim-notice{border-radius:10px;margin:0 0 18px;padding:16px 18px;font-size:14px;line-height:1.6}
.lp-claim-notice p{margin:8px 0 0}
.lp-claim-notice.is-success{background:#edf9f3;color:#1c6644;border:1px solid #bae5cf}
.lp-claim-notice.is-pending{background:#fff7e8;color:#81591c;border:1px solid #f5deb5}
.lp-claim-notice.is-error{background:#fef0f0;color:#922f37;border:1px solid #f5c6ca}
@media(max-width:650px){.lp-public-claim{padding:28px 12px 48px}.lp-claim-panel{padding:20px 16px}.lp-claim-primary{width:100%}.lp-claim-file-control{align-items:stretch;flex-direction:column}.lp-claim-file-button{width:100%}.lp-claim-file-name{text-align:center}}
