/* 2.10.15: lease analysis, lease compare, reminders, rent ledger, role guidance, units dashboard. Logical properties for RTL. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}
.rg-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:10px 0;border:1px solid #dfe7f2;border-radius:14px;background:#fff}
.rg-la-table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.45}
.rg-la-table th,.rg-la-table td{padding:9px 11px;border-bottom:1px solid #edf1f7;text-align:start;vertical-align:top}
.rg-la-table thead th{background:#f4f8fd;color:#0f2147;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.rg-la-table tbody tr:last-child th,.rg-la-table tbody tr:last-child td{border-bottom:0}
.rg-la-table tbody th{font-weight:850;color:#16202e;min-width:150px}
.rg-la-table q{color:#4b5563;font-style:italic}
.rg-la-row-missing{background:#fff7f7}.rg-la-row-partial{background:#fffbeb}
.rg-la-status{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:900;white-space:nowrap}
.rg-la-status.rg-la-found{background:#d1fae5;color:#065f46}.rg-la-status.rg-la-partial{background:#fef3c7;color:#92400e}.rg-la-status.rg-la-missing{background:#fee2e2;color:#991b1b}
.rg-la-summary{border-radius:16px;padding:14px 16px;margin:10px 0 14px;border:1.5px solid #cfdbea;background:#f6f9fd}
.rg-la-summary p{margin:4px 0}
.rg-la-summary.rg-la-danger{border-color:#fca5a5;background:#fef2f2;color:#7f1d1d}
.rg-la-summary.rg-la-warning{border-color:#fcd34d;background:#fffbeb;color:#78350f}
.rg-la-summary.rg-la-success{border-color:#6ee7b7;background:#ecfdf5;color:#064e3b}
.rg-la-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;margin:10px 0}
.rg-la-fact{border:1px solid #dfe7f2;border-radius:14px;padding:10px 12px;background:#fbfdff;display:grid;gap:3px;min-width:0}
.rg-la-fact span{font-size:12px;font-weight:800;color:#61718a}
.rg-la-fact strong{font-size:15px;color:#0f2147;overflow-wrap:anywhere}
.rg-la-fact.is-alert{border-color:#fca5a5;background:#fef2f2}.rg-la-fact.is-alert strong{color:#991b1b}
.rg-la-flag{border:1px solid #dfe7f2;border-inline-start:5px solid #94a3b8;border-radius:14px;padding:10px 14px;margin:10px 0;background:#fff}
.rg-la-flag h5{margin:0 0 6px;font-size:15px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.rg-la-flag p{margin:6px 0}
.rg-la-flag blockquote{margin:6px 0;padding:6px 10px;border-inline-start:3px solid #cbd5e1;background:#f8fafc;color:#374151;font-style:italic;overflow-wrap:anywhere}
.rg-la-sev-danger{border-inline-start-color:#dc2626}.rg-la-sev-warning{border-inline-start-color:#d97706}.rg-la-sev-info{border-inline-start-color:#2563eb}
.badge.info{background:#dbeafe;color:#1e40af}
.rg-lease-analysis h4,.rg-lease-compare h4,.rg-ledger h4,.rg-role-guidance h4,#rgUnitsMount h4{margin:18px 0 6px;color:#0f2147}
.rg-la-details{margin-top:14px;border:1px solid #dfe7f2;border-radius:14px;padding:10px 14px;background:#fbfdff}
.rg-la-details>summary{font-size:15px}
.rg-lc-table td{min-width:140px}
.rg-lc-table tr.rg-diff{background:#fffbeb}
.rg-lc-table tr.rg-diff td{font-weight:800}
.toolkit-event-list li.rg-ev-past{color:#6b7280;text-decoration:line-through;text-decoration-thickness:1px}
.toolkit-event-list li.rg-ev-next{font-weight:850}
.rg-ev-in{background:#dbeafe;color:#1e40af;font-size:12px}
.rg-deadline-forms{margin-top:8px}
.rg-ledger-actions{white-space:nowrap}
.rg-ledger-actions button{min-height:36px;padding:7px 12px;margin:2px;font-size:13px}
button.danger{border:1px solid #fca5a5;background:#fff;color:#991b1b;border-radius:999px;font-weight:850;cursor:pointer}
button.danger:hover{background:#fef2f2}
.rg-ledger-status{display:inline-flex;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:900;white-space:nowrap}
.rg-ls-paid{background:#d1fae5;color:#065f46}.rg-ls-paidLate{background:#fef3c7;color:#92400e}.rg-ls-partial{background:#ffedd5;color:#9a3412}.rg-ls-late{background:#fee2e2;color:#991b1b}.rg-ls-upcoming{background:#e5e7eb;color:#374151}
.rg-ledger-totals{margin-top:10px}
.rg-ledger-shortcut{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0}
.rg-role-guidance{margin-top:18px;border:1.5px solid #bfd6f8;border-radius:18px;padding:16px 18px;background:linear-gradient(135deg,#f8fbff,#eef6ff)}
.rg-role-guidance.rg-role-landlord{border-color:#c7d2fe;background:linear-gradient(135deg,#fafaff,#eef2ff)}
.rg-role-guidance>h3{margin:0 0 8px;font-size:18px}
.rg-role-step{border-top:1px solid #dbe6f5;padding-top:10px;margin-top:12px}
.rg-role-table{width:100%;border-collapse:collapse;font-size:14px}
.rg-role-table td,.rg-role-table th{padding:6px 4px;border-bottom:1px solid #e5edf7;text-align:start}
.rg-role-table td:last-child{text-align:end;font-weight:850;white-space:nowrap}
.rg-role-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:8px 0}
.rg-role-options>*{border:1px solid #dbe6f5;border-radius:14px;padding:10px 12px;background:#fff}
.rg-role-guidance form{margin-top:8px}
.rg-units-form{margin-bottom:6px}
.rg-units-more{grid-column:1/-1;border:1px dashed #cfdbea;border-radius:14px;padding:8px 12px}
.rg-units-more>summary{font-size:15px}
.rg-units-table td{white-space:nowrap}
.rg-units-table td:first-child{white-space:normal;min-width:140px}
@media(max-width:560px){.rg-la-facts{grid-template-columns:1fr 1fr}.rg-la-table{font-size:13px}.rg-la-table th,.rg-la-table td{padding:7px 8px}.rg-ledger-actions button{width:auto}.rg-role-guidance{padding:14px 12px}}
.toolkit-doc-preview h1{font-size:22px;line-height:1.25;letter-spacing:0;margin:8px 0 12px;color:#0f2147}
.toolkit-doc-preview h2{font-size:18px;line-height:1.3;letter-spacing:0;margin:14px 0 8px}
.toolkit-doc-preview{border:1px solid #dfe7f2;border-radius:14px;padding:14px 16px;background:#fff;margin:10px 0}

/* 2.10.16: printable worksheet + "Report a calculation error" under calculation results */
.rg-v216-actions{margin-top:16px;padding-top:14px;border-top:1px solid var(--ux-line,#d9e1ea);display:grid;gap:10px}
.rg-worksheet{display:grid;gap:6px;justify-items:start}
.rg-worksheet .small-note{margin:0;max-width:62ch}
.rg-calc-report{margin-top:10px;font-size:.92rem}
.rg-v216-actions .rg-calc-report{margin-top:0}
details.rg-calc-report>summary{cursor:pointer;display:inline-block;color:var(--ux-muted,#5b6b7b);text-decoration:underline;text-underline-offset:2px;list-style:none;padding:4px 0;margin:0;font-size:.9rem;font-weight:500;line-height:1.4;background:none;border:0}
details.rg-calc-report label>span{font-size:.9rem;font-weight:500;line-height:1.45}
.rg-calc-report>summary::-webkit-details-marker{display:none}
.rg-calc-report>summary:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:3px}
.rg-calc-report[open]{display:grid;gap:8px;padding:10px 12px;border:1px solid var(--ux-line,#d9e1ea);border-radius:10px;background:var(--ux-surface-soft,#f8fbff)}
.rg-calc-report label{display:grid;gap:4px}
.rg-calc-report textarea{width:100%;box-sizing:border-box;min-height:72px}
.rg-calc-report .rg-calc-report-send{justify-self:start}
@media (max-width:640px){.rg-worksheet .rg-worksheet-btn,.rg-calc-report .rg-calc-report-send{width:100%;justify-self:stretch}}
/* 2.10.16: footer social icons */
.footer .rg-social{display:inline-flex;gap:6px;align-items:center;margin-inline-start:8px;vertical-align:middle}
.footer .rg-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:inherit;opacity:.8;text-decoration:none}
.footer .rg-social a:hover,.footer .rg-social a:focus-visible{opacity:1;background:rgba(127,127,127,.14)}
.footer .rg-social a:focus-visible{outline:2px solid currentColor;outline-offset:2px}

/* ===== 2.10.17: header Sign in / My account + sign-in dialog ===== */
.nav{gap:12px}
.nav .nav-actions{margin-inline-start:auto}
.rg-acct{position:relative;display:flex;align-items:center;flex:0 0 auto}
.rg-acct:empty{display:none}
.rg-acct-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;border:1.5px solid #0758d1;background:#0758d1;color:#fff;font:inherit;font-size:15px;font-weight:750;line-height:1;white-space:nowrap;cursor:pointer;box-shadow:0 2px 8px rgba(7,88,209,.22);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}
.rg-acct-btn:hover{background:#0647aa;border-color:#0647aa}
.rg-acct-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 5px #0b6ef3}
.rg-acct-btn.rg-acct-in{background:#fff;color:#0758d1;box-shadow:none}
.rg-acct-btn.rg-acct-in:hover{background:#eef5ff}
.rg-acct-btn.rg-acct-in[aria-expanded="true"]{background:#eef5ff}
.rg-acct-caret{transition:transform .15s ease}
.rg-acct-btn[aria-expanded="true"] .rg-acct-caret{transform:rotate(180deg)}
.rg-acct-menu{position:absolute;top:calc(100% + 8px);inset-inline-end:0;z-index:1004;min-width:230px;max-width:min(320px,calc(100vw - 24px));padding:6px;background:#fff;border:1px solid #d5e2f2;border-radius:14px;box-shadow:0 14px 34px rgba(15,33,71,.18)}
.rg-acct-menu[hidden]{display:none}
.rg-acct-who{margin:0;padding:8px 12px 10px;border-bottom:1px solid #e6edf6;color:#5b6b82;font-size:13px;overflow-wrap:anywhere}
.rg-acct-menu [role=menuitem]{display:flex;align-items:center;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:10px;background:none;color:#14213d;font:inherit;font-size:15px;font-weight:650;text-align:start;text-decoration:none;cursor:pointer}
.rg-acct-menu [role=menuitem]:hover,.rg-acct-menu [role=menuitem]:focus-visible{background:#eef5ff;color:#0647aa;outline:none}
@media (max-width:760px){
  .nav .brand{order:0}
  .nav .rg-acct{order:1;margin-inline-start:auto}
  .nav .nav-menu-toggle{order:2}
  .rg-acct-btn{min-height:44px;padding:0 12px;font-size:14px;gap:6px}
}
@media (max-width:380px){
  .rg-acct-btn{padding:0 11px}
  .rg-acct-btn .rg-acct-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
  .rg-acct-btn .rg-acct-caret{display:none}
}
html.rg-dialog-open{overflow:hidden}
.rg-signin{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:0;border:0;border-radius:20px;background:#fff;color:#14213d;box-shadow:0 30px 80px rgba(10,20,40,.35);overflow:auto}
.rg-signin::backdrop{background:rgba(10,20,40,.55)}
.rg-signin-card{padding:24px 28px 26px}
.rg-signin-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.rg-signin-head h2{margin:0;font-size:26px;font-weight:800;letter-spacing:-.01em;color:#0f1f3d}
.rg-signin-head h2:focus{outline:none}
.rg-signin-close{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:10px;background:#f1f5fa;color:#334155;font-size:24px;line-height:1;cursor:pointer}
.rg-signin-close:hover{background:#e2e9f3}
.rg-signin :is(button,a,input):focus-visible{outline:3px solid #0b6ef3;outline-offset:2px}
.rg-sso-list{display:grid;gap:10px}
.rg-sso{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 16px;border:1px solid #cfdbea;border-radius:12px;background:#fff;color:#1f2937;font-weight:650;font-size:15px;text-decoration:none}
.rg-sso:hover{background:#f5f8fc;border-color:#b9c9de}
.rg-signin-note{margin:10px 0 0;color:#5b6b82;font-size:13px;line-height:1.45}
.rg-or{display:flex;align-items:center;gap:12px;margin:16px 0;color:#64748b;font-size:13px;font-weight:750;letter-spacing:.06em}
.rg-or::before,.rg-or::after{content:"";flex:1;height:1px;background:#dfe7f1}
.rg-signin .rg-field{display:grid;gap:6px;margin:0 0 14px}
.rg-signin .rg-field>span,.rg-signin .rg-field>label{color:#334155;font-size:14px;font-weight:720}
.rg-signin input{width:100%;box-sizing:border-box;min-height:48px;font-size:16px}
.rg-signin input[aria-invalid="true"]{border-color:#d92d20}
.rg-pw{position:relative}
.rg-pw input{padding-inline-end:96px}
.rg-pw-toggle{position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);min-height:36px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#0758d1;font:inherit;font-size:14px;font-weight:750;cursor:pointer}
.rg-pw-toggle:hover{background:#eef5ff}
.rg-hint{color:#5b6b82;font-size:13px}
.rg-forgot{margin:-6px 0 12px;text-align:end}
.rg-link{min-height:32px;padding:0;border:0;background:none;color:#0758d1;font:inherit;font-size:14px;font-weight:650;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(7,88,209,.35)}
.rg-link:hover{text-decoration-color:currentColor}
.rg-strong{font-weight:800}
.rg-primary,.rg-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;border-radius:12px;font:inherit;font-size:16px;font-weight:780;cursor:pointer}
.rg-primary{border:0;background:#0758d1;color:#fff}
.rg-primary:hover{background:#0647aa}
.rg-primary[disabled],.rg-secondary[disabled]{opacity:.65;cursor:progress}
.rg-secondary{margin-top:12px;border:1.5px solid #c6d6ec;background:#fff;color:#0f2a55}
.rg-secondary:hover{background:#f5f8fc;border-color:#0758d1}
.rg-signin-intro{margin:0 0 14px;color:#475569;line-height:1.5;overflow-wrap:anywhere}
.rg-signin-err{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#fef3f2;color:#b42318;font-size:14px;font-weight:600}
.rg-signin-err[hidden]{display:none}
.rg-signin-ok{margin:0 0 8px;padding:12px 14px;border-radius:12px;background:#ecfdf3;color:#05603a;line-height:1.5;overflow-wrap:anywhere}
.rg-signin-alt{margin:16px 0 0;text-align:center;color:#475569;font-size:14px}
@media (max-width:480px){.rg-signin-card{padding:20px 18px 22px}.rg-signin-head h2{font-size:23px}}
.rg-signin .rg-field label,.rg-signin .rg-field>span{margin:0;display:block}
/* 2.10.18: landlord contact, repair send, change plan, account SSO, student planner */
.rg-landlord-contact,.rg-repair-send{margin-block:12px;padding:14px 16px}
.rg-landlord-contact h4,.rg-repair-send h4{margin-block:0 6px}
.rg-lc-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 16px;margin:8px 0}
.rg-lc-summary dt{font-size:12px;color:#5b6b80;font-weight:600}
.rg-lc-summary dd{margin:0;overflow-wrap:anywhere}
.rg-plan-change h4{margin-block:14px 6px}
.rg-plan-change-pricing{margin-block-start:18px;padding:16px}
.r3-sso-list{margin-block:10px}
.rg-student-planner-refs{margin-block-start:16px}
.rg-student-planner-refs ul{padding-inline-start:20px}
.rg-student-planner-refs li{margin-block:4px}
/* 2.10.19: save gate (plan / sign-in) and webmail buttons */
.rg-save-gate{border:1px solid #f0b429;background:#fffbea;border-radius:12px;padding:14px 16px;margin:0 0 14px;display:grid;gap:8px}
.rg-save-gate strong{font-size:1.02rem}
.rg-save-gate p{margin:0}
.rg-save-gate .primary{justify-self:start}
#rgRepairSend .reference-actions{flex-wrap:wrap;gap:8px}
.rg-rs-trunc{color:#8a5a00}
