.hslf-shell{--hsl-navy:#123b73;--hsl-blue:#1f67b1;--hsl-ink:#172033;--hsl-muted:#5e6b7c;--hsl-line:#dfe6ee;--hsl-bg:#f5f8fb;--hsl-green:#16784a;--hsl-red:#b42318;max-width:1180px;margin:0 auto;padding:28px 18px 64px;color:var(--hsl-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.hslf-shell *{box-sizing:border-box}.hslf-hero{position:relative;overflow:hidden;padding:56px;border-radius:28px;background:linear-gradient(135deg,#0b2d5d,#185598);color:#fff;box-shadow:0 24px 70px rgba(18,59,115,.18)}.hslf-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-150px;top:-200px;background:rgba(255,255,255,.08)}.hslf-hero h1{margin:8px 0 14px;font-size:clamp(36px,5vw,64px);line-height:1.02;color:#fff}.hslf-hero p{max-width:760px;font-size:18px;opacity:.94}.hslf-eyebrow,.hslf-section-head>span{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800}.hslf-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hslf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border-radius:12px;font-weight:750;border:1px solid transparent;text-decoration:none!important;cursor:pointer;font:inherit}.hslf-btn-primary{background:#fff;color:var(--hsl-navy);box-shadow:0 8px 22px rgba(0,0,0,.08)}.hslf-form .hslf-btn-primary,.hslf-upload-form .hslf-btn-primary{background:var(--hsl-navy);color:#fff}.hslf-btn-ghost{border-color:rgba(255,255,255,.38);color:#fff;background:rgba(255,255,255,.08)}.hslf-form .hslf-btn-ghost{border-color:var(--hsl-line);color:var(--hsl-ink);background:#fff}.hslf-legal-note{font-size:13px!important;margin-top:24px;opacity:.8!important}.hslf-alert{margin:22px 0;padding:16px 18px;border-radius:14px;background:#eef4fb;border:1px solid #c8d9ec}.hslf-alert-success{background:#ecf8f2;border-color:#b8e3ce;color:#0c623b}.hslf-alert-error{background:#fff1f0;border-color:#f1c3bf;color:#9d241d}.hslf-section{padding:56px 0 0}.hslf-section-head{max-width:780px;margin-bottom:24px}.hslf-section-head>span{color:var(--hsl-blue)}.hslf-section-head h2{margin:6px 0 8px;font-size:clamp(28px,4vw,42px);line-height:1.12;color:var(--hsl-ink)}.hslf-section-head p{color:var(--hsl-muted);font-size:16px}.hslf-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.hslf-flow-card{padding:22px;border:1px solid var(--hsl-line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(22,37,63,.05)}.hslf-flow-card b{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e9f1fb;color:var(--hsl-navy)}.hslf-flow-card h3{margin:14px 0 7px;font-size:18px}.hslf-flow-card p{margin:0;color:var(--hsl-muted);font-size:14px;line-height:1.55}.hslf-form-section{margin-top:56px;padding:34px;border-radius:24px;background:var(--hsl-bg);border:1px solid var(--hsl-line)}.hslf-form{padding:26px;border:1px solid var(--hsl-line);border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(16,37,61,.05)}.hslf-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:28px}.hslf-progress span{padding:9px;border-radius:999px;background:#eef2f6;text-align:center;font-size:12px;font-weight:700;color:#687687}.hslf-progress span.is-active{background:var(--hsl-navy);color:#fff}.hslf-progress span.is-done{background:#dceaf8;color:var(--hsl-navy)}.hslf-step{display:none;border:0;padding:0;margin:0}.hslf-step.is-active{display:block}.hslf-step legend{font-size:22px;font-weight:800;margin-bottom:22px}.hslf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hslf-col-2{grid-column:span 2}.hslf-field{display:flex;flex-direction:column;gap:7px}.hslf-field>span{font-size:13px;font-weight:760}.hslf-field input,.hslf-field select,.hslf-field textarea{width:100%;min-height:46px;padding:11px 12px;border:1px solid #cfd9e4!important;border-radius:10px!important;background:#fff;color:var(--hsl-ink);font:inherit;box-shadow:none!important}.hslf-field textarea{min-height:96px;resize:vertical}.hslf-field input:focus,.hslf-field select:focus,.hslf-field textarea:focus{outline:3px solid rgba(31,103,177,.12);border-color:var(--hsl-blue)!important}.hslf-consents{margin-top:22px;padding:18px;border-radius:14px;background:#f7f9fb}.hslf-consents label{display:block;margin:10px 0;font-size:14px}.hslf-consents p{margin:10px 0 0;color:var(--hsl-muted);font-size:13px}.hslf-form-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.hslf-form-nav [data-next],.hslf-form-nav [data-submit]{margin-left:auto}.hslf-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.hslf-faq details{border:1px solid var(--hsl-line);border-radius:14px;background:#fff;margin:10px 0;padding:0 18px}.hslf-faq summary{cursor:pointer;padding:18px 0;font-weight:800}.hslf-faq details p{padding:0 0 18px;margin:0;color:var(--hsl-muted)}.hslf-hero-compact{padding:34px 42px}.hslf-hero-compact h1{font-size:clamp(30px,4vw,46px)}.hslf-status-pill{display:inline-flex;padding:8px 13px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.1);font-size:13px;font-weight:800}.hslf-doc-list{border:1px solid var(--hsl-line);border-radius:18px;overflow:hidden;background:#fff}.hslf-doc-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border-bottom:1px solid var(--hsl-line)}.hslf-doc-row:last-child{border-bottom:0}.hslf-doc-row small{display:block;color:var(--hsl-muted);margin-top:3px}.hslf-doc-status{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#eff3f7;font-size:12px;font-weight:800}.hslf-doc-approved{background:#e7f7ef;color:#0f6b42}.hslf-doc-rejected{background:#fff0ef;color:#a52a22}.hslf-doc-pending{background:#fff7db;color:#805f00}.hslf-doc-received{background:#eaf2fb;color:#205a93}.hslf-upload-box{margin-top:28px;padding:30px;border-radius:22px;background:var(--hsl-bg)}.hslf-upload-box .hslf-form{padding:0;border:0;box-shadow:none;background:transparent}.hslf-portal-warning{text-align:center;color:var(--hsl-muted);font-size:13px;margin-top:28px}@media(max-width:900px){.hslf-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.hslf-hero{padding:38px 30px}}@media(max-width:640px){.hslf-shell{padding:14px 12px 48px}.hslf-hero{padding:30px 22px;border-radius:20px}.hslf-flow{grid-template-columns:1fr}.hslf-form-section{margin-top:34px;padding:18px}.hslf-form{padding:18px}.hslf-grid{grid-template-columns:1fr}.hslf-col-2{grid-column:auto}.hslf-progress{grid-template-columns:1fr 1fr}.hslf-doc-row{align-items:flex-start;flex-direction:column;gap:8px}.hslf-section{padding-top:38px}}
/* v1.1 - refinamentos visuais e campos dinâmicos */
.hslf-field-help{display:block;margin-top:1px;color:var(--hsl-muted);font-size:11px;line-height:1.45}.hslf-form-section{position:relative;overflow:hidden}.hslf-form-section:before{content:"";position:absolute;right:-110px;top:-130px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(31,103,177,.09),rgba(31,103,177,0) 70%);pointer-events:none}.hslf-form{position:relative}.hslf-progress span{transition:.2s ease}.hslf-step.is-active{animation:hslfStepIn .24s ease both}@keyframes hslfStepIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.hslf-field input:hover,.hslf-field select:hover,.hslf-field textarea:hover{border-color:#aebfd0!important}.hslf-flow-card{transition:.2s ease}.hslf-flow-card:hover{transform:translateY(-2px);box-shadow:0 14px 38px rgba(22,37,63,.08);border-color:#cbd9e6}.hslf-flow-card b{font-variant-numeric:tabular-nums}.hslf-form-nav{position:sticky;bottom:10px;padding:10px;border:1px solid rgba(223,230,238,.9);border-radius:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);z-index:4}.hslf-form-nav .hslf-btn{min-width:130px}.hslf-consents{border:1px solid #e5ebf1}.hslf-consents input{accent-color:var(--hsl-navy)}

/* v1.4 - múltiplas categorias e portal de autoatendimento */
.hslf-category-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hslf-category-checks label{display:flex;align-items:flex-start;gap:8px;padding:11px 12px;border:1px solid var(--hsl-line);border-radius:11px;background:#fbfcfe;font-size:12px;line-height:1.35}.hslf-category-checks input{width:auto!important;min-height:0!important;margin-top:2px;accent-color:var(--hsl-navy)}.hslf-portal-categories{display:grid;gap:18px}.hslf-portal-category-card{padding:22px;border:1px solid var(--hsl-line);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(22,37,63,.04)}.hslf-portal-category-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.hslf-portal-category-head>div>span{display:block;margin-bottom:4px;color:var(--hsl-muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.hslf-portal-category-head h3{margin:0;font-size:21px;color:var(--hsl-ink)}.hslf-category-process-status{background:#eaf2fb;color:#205a93}.hslf-category-progress{display:grid;gap:7px;margin:0 0 15px}.hslf-category-progress>span{color:var(--hsl-muted);font-size:11px;font-weight:700}.hslf-category-progress>div{height:7px;border-radius:999px;background:#edf2f7;overflow:hidden}.hslf-category-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1f67b1,#16784a)}.hslf-portal-upload{margin-top:14px;border-top:1px solid var(--hsl-line);padding-top:12px}.hslf-portal-upload>summary,.hslf-portal-profile summary{cursor:pointer;color:var(--hsl-navy);font-weight:800}.hslf-portal-upload .hslf-form{margin-top:14px;padding:16px;background:#f8fafc;box-shadow:none}.hslf-category-lock{margin:13px 0 0;padding:10px 12px;border-radius:10px;background:#f5f7f9;color:var(--hsl-muted);font-size:12px}.hslf-portal-profile details{padding:20px;border:1px solid var(--hsl-line);border-radius:18px;background:#fff}.hslf-portal-profile details>p{color:var(--hsl-muted)}.hslf-portal-profile .hslf-form{margin-top:16px;box-shadow:none}.hslf-portal-profile .hslf-btn{margin-top:18px}
@media(max-width:640px){.hslf-category-checks{grid-template-columns:1fr}.hslf-portal-category-head{flex-direction:column}.hslf-portal-category-card{padding:16px}}
