/* Account management starts with organizations; operational panels retain their scope. */
.organization-account-shell .membership-command-center,
.organization-account-shell .installation-field,
.organization-account-shell [data-app-panel="account"] .account-active-device,
.organization-account-shell [data-app-panel="account"] .account-connection-title .status-badge,
.organization-account-shell [data-app-panel="account"] #roleBadge,
.organization-account-shell [data-app-panel="account"] #accountDashboard { display: none !important; }
.organization-context { display:flex; align-items:center; gap:16px; padding:16px 24px; flex-wrap:wrap; color:#123b5c; border-bottom:1px solid #d4e0eb; background:#f6f9fc; }
.organization-selector { display:flex; gap:8px; flex-wrap:wrap; min-width:0; }
.organization-selector button { min-height:44px; padding:10px 16px; border:1px solid #b9ccdd; border-radius:8px; background:white; color:#174c72; font:inherit; font-weight:600; cursor:pointer; overflow-wrap:anywhere; max-width:100%; }
.organization-selector button[aria-pressed="true"] { border-color:#174c72; background:#174c72; color:white; }
.organization-selector button:disabled { cursor:default; opacity:.65; }
.organization-selector button:focus-visible { outline:3px solid #87b8de; outline-offset:2px; }
.organization-selector small { display:block; font-weight:400; }
.organization-attention-mark,.organization-context .organization-attention-mark { display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; margin-left:8px; border-radius:50%; background:#ffdeb3; color:#8b3f00; border:1px solid #e39a40; font-weight:800; font-size:15px; }
.registration-progress { padding:18px 24px; margin-bottom:20px; border:1px solid #c6d9e9; border-radius:12px; background:#f6f9fc; color:#123b5c; }
.registration-progress ol { display:flex; flex-wrap:wrap; gap:12px 28px; padding-left:20px; margin:12px 0; }
.registration-progress li { padding-left:2px; color:#526982; }
.registration-progress li[aria-current="step"] { color:#123b5c; font-weight:800; }
.registration-progress li.is-complete { color:#18734b; }
.registration-progress p { margin:0; }
.registration-step-label { font-size:13px; font-weight:700; color:#174c72; margin:0 0 12px; }
.account-owner-row { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 24px; background:white; }
.account-owner-row strong { display:block; color:#123b5c; font-size:18px; }
.account-owner-row span { display:block; color:#526982; font-size:14px; overflow-wrap:anywhere; }
.organization-context span { color:#47617b; }
.organization-management { max-width:100%; margin-top:0; padding-top:0; border-top:0; }
.organization-management h3 { font-size:28px; margin:0 0 8px; }
#organizationList { margin-top:20px; }
.organization-card { border:0; border-top:1px solid #d4e0eb; border-radius:0; padding:18px 0; margin:0; background:transparent; }
.organization-card h4 { font-size:23px; margin:0 0 5px; color:#0f3458; }
.organization-card .account-muted { margin:4px 0 12px; }
.organization-computer { font-size:14px; color:#526982; margin:10px 0; }
.organization-membership { font-size:18px; font-weight:700; color:#123b5c; margin:10px 0; }
.organization-open { min-height:44px; margin:0 14px 6px 0; }
.organization-manage { margin-top:0; }
.organization-manage summary,.organization-other-products > summary { cursor:pointer; color:#234f73; padding:10px 0; font-weight:600; }
.organization-manage > button { margin:10px 10px 10px 0; }
.organization-actions { gap:10px; margin:10px 0; }
.organization-other-products { border-top:1px solid #d4e0eb; margin-top:18px; }
.organization-other-products .organization-card h4 { font-size:19px; }
.organization-action-dialog { max-width:560px; }
.organization-action-dialog { width:calc(100vw - 32px); max-height:calc(100dvh - 40px); overflow:auto; padding:24px; border:1px solid #c8d7e4; border-radius:18px; color:#143b5c; }
.organization-action-dialog::backdrop { background:rgba(9,30,47,.5); }
.organization-action-dialog h2 { margin:0 0 12px; font-size:24px; line-height:1.3; }
.organization-action-dialog p { line-height:1.55; }
.organization-action-dialog .field { display:grid; gap:8px; margin:18px 0; }
.organization-action-dialog input:not([type=checkbox]),.organization-action-dialog select { min-width:0; width:100%; min-height:44px; padding:10px; border:1px solid #bacddb; border-radius:8px; font:inherit; }
.organization-action-dialog button { min-height:44px; font:inherit; margin:4px 8px 4px 0; white-space:normal; }
.organization-action-dialog button:disabled { opacity:.5; cursor:default; }
.organization-action-dialog .download-button { background:#174f79; border:1px solid #174f79; color:white; }
.organization-action-dialog .secondary-button { background:white; border:1px solid #b9ccdd; color:#174f79; }
.organization-action-dialog .organization-keep-access { display:flex; align-items:flex-start; gap:10px; line-height:1.5; }
.organization-action-dialog input[type=checkbox] { flex-shrink:0; width:20px; height:20px; margin-top:3px; }
.ownership-billing-step { border-top:1px solid #d4e0eb; margin-top:20px; padding-top:16px; }
.ownership-billing-step h3 { font-size:18px; margin:0; }
.ownership-billing-step a { display:inline-block; padding:10px 0; }
.status-badge[data-status="free"] { color:#174c72; background:#edf5ff; border-color:#bfd6ee; }
.status-badge[data-status="attention"] { color:#9a4e00; background:#fff2df; border-color:#ffd49d; }
#basicAccountLinkForm { display:none; }
.basic-connect-shine { display:block; }
.basic-bible-summary { display:none; }
@media(max-width:600px) { .organization-management h3 {font-size:24px;} .organization-card h4 {font-size:21px;} .organization-context {gap:10px;} }
.membership-cancel-dialog { width: min(540px, calc(100vw - 32px)); }
.cancellation-choice { padding: 18px 0; border-bottom: 1px solid #dbe4eb; }
.cancellation-choice h3 { margin: 0 0 8px; font-size: 1.12rem; }
.cancellation-choice p { color: #53677a; line-height: 1.55; margin: 0 0 14px; }
.cancellation-choice button, .cancellation-confirm { min-height: 46px; width: 100%; padding: 10px 16px; border-radius: 12px; font: inherit; font-weight: 800; cursor: pointer; }
#chooseCancelRenewal { background: #174f79; color: white; border: 1px solid #174f79; }
#chooseCancelRefund { background: white; color: #a52727; border: 1px solid #a52727; }
.membership-cancel-dialog .cancellation-confirm { background: #b02b2b; color: white; border: 1px solid #b02b2b; }
.membership-cancel-dialog button:disabled { opacity: .55; cursor: wait; }
#cancelRefundHelp { color: #174f79; }
.membership-support { margin-top: 20px; padding-top: 16px; border-top: 1px solid #dbe4eb; }
.membership-support p { margin: 0 0 8px; color: #53677a; font-size: .92rem; line-height: 1.55; }
.membership-support-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 16px; border: 1px solid #b6cbdc; border-radius: 10px; background: #fff; color: #174f79; font: inherit; font-weight: 700; text-decoration: none; text-align: center; }
.membership-support-link:hover { background: #f0f6fa; }
.membership-support-link:focus-visible { outline: 3px solid #174f79; outline-offset: 3px; }
.membership-cancel-dialog .retention-offer-actions:not(:has(button:not([hidden]))),
.membership-cancel-dialog .auth-message:empty { display: none; }
