[hidden] { display: none !important; }
.section-heading { margin-top: 34px; }
.account-tabs { display: flex; gap: 8px; margin: 34px 0 24px; border-bottom: 1px solid var(--line); }
.account-tabs button { padding: 14px 18px; border: 0; border-bottom: 3px solid transparent; background: none; color: var(--muted); font: 700 .84rem Inter, sans-serif; cursor: pointer; }
.account-tabs button[aria-selected="true"] { border-color: var(--gold); color: var(--ink); }
.account-tabs span { display: inline-grid; min-width: 21px; height: 21px; margin-left: 5px; place-items: center; border-radius: 50%; background: #e3ded5; font-size: .65rem; }
.policy-heading { display: flex; justify-content: space-between; gap: 20px; align-items: end; margin-bottom: 18px; }
.policy-heading h2 { margin: 0; font-size: 2rem; }
.policy-heading p { margin: 6px 0 0; color: var(--muted); font-size: .82rem; }
.renegotiation-card { display: grid; grid-template-columns: 1fr .85fr; gap: 50px; padding: 40px; border-radius: 20px; background: var(--night); color: #fff; }
.renegotiation-card h2 { margin: 0 0 9px; color: #fff; font-size: 2.4rem; }
.renegotiation-card p { color: #d1cbd5; line-height: 1.6; }
.renegotiation-form { align-self: center; display: grid; gap: 15px; padding: 20px; border: 1px solid rgba(255,255,255,.12); border-radius: 13px; background: rgba(255,255,255,.06); }
.renegotiation-form label { display: grid; gap: 7px; font-size: .78rem; font-weight: 700; }
.renegotiation-form select { width: 100%; padding: 12px; border: 0; border-radius: 8px; background: #fff; font: inherit; }
@media (max-width: 750px) { .renegotiation-card { grid-template-columns: 1fr; padding: 27px 20px; } .policy-heading { align-items: flex-start; flex-direction: column; } }

.admin-private-section { margin-top: 48px; padding-top: 34px; border-top: 1px solid var(--line); }
.admin-private-section .section-heading { margin: 0 0 20px; }
.admin-private-section .section-heading h2 { margin: 0; font-size: 2rem; }
.admin-private-section .section-heading p { max-width: 760px; }
.form-card h3 { margin: 0 0 18px; font: 700 1.35rem Fraunces, serif; }
.internal-note-list { display: grid; align-content: start; gap: 12px; }
.internal-note { padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.internal-note p { margin: 0; line-height: 1.55; }
.internal-note footer { display: flex; justify-content: space-between; gap: 15px; align-items: center; margin-top: 15px; padding-top: 12px; border-top: 1px solid #eee9e2; color: var(--muted); }
.internal-note footer form, .document-row form { margin: 0; }
.external-insurance-row p { margin: 10px 0 0; color: var(--muted); font-size: .8rem; line-height: 1.45; }
.reminder-chip { display: inline-flex; margin-top: 10px; padding: 5px 8px; border-radius: 99px; background: #fff0d8; color: #7a4d20; font-size: .68rem; font-weight: 750; }
.document-list { align-self: start; }
.document-row { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; padding: 16px 18px; border-bottom: 1px solid #ece7df; }
.document-row:last-child { border-bottom: 0; }
.document-row strong { display: block; margin: 4px 0; overflow-wrap: anywhere; }
.document-row small { color: var(--muted); }
.document-row .actions { display: flex; gap: 8px; align-items: center; }
.contact-request-list { max-width: 1050px; }
.contact-request-row { align-items: start; }
.contact-request-row > div:first-child { min-width: 0; }
.contact-request-row strong,
.contact-request-row p { overflow-wrap: anywhere; }
.contact-request-row p { margin: 12px 0 0; color: var(--muted); font-size: .84rem; line-height: 1.55; }
.contact-request-row .actions { flex-wrap: wrap; justify-content: flex-end; }
.badge.new { background: #f6ead7; color: #7d542e; }
.badge.read { background: #e3f1e7; color: #356044; }
.stat-card a { display: inline-block; margin-top: 8px; color: #704725; font-size: .75rem; font-weight: 750; }
@media (max-width: 850px) { .admin-private-section { margin-top: 34px; padding-top: 25px; } .document-row { grid-template-columns: 1fr; } .document-row .actions { flex-wrap: wrap; } }
@media (max-width: 650px) { .contact-request-row { grid-template-columns: 1fr; } .contact-request-row .actions { justify-content: flex-start; } }
