#membership-entry{flex:0 0 auto;align-self:center;height:34px;border:1px solid #94b4cb;border-radius:7px;padding:8px 13px;color:#edf5fc;background:transparent;font-family:inherit;font-size:12px;font-weight:600;line-height:1.2;cursor:pointer;white-space:nowrap;margin-left:10px}
#membership-entry:hover{background:#123d5e}
.membership-dialog{box-sizing:border-box;width:min(480px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;border:1px solid #cbd9e5;border-radius:22px;padding:34px;background:#f3f7fb;color:#152c43;box-shadow:0 24px 80px #001e3866;font-family:Arial,sans-serif;overscroll-behavior:contain}
.membership-dialog::backdrop{background:#061d2a88;backdrop-filter:blur(5px)}
.membership-dialog button,.membership-dialog input,.membership-dialog textarea{font-family:inherit;box-sizing:border-box}
.membership-dialog button{cursor:pointer}
.membership-dialog button:focus-visible,.membership-dialog input:focus-visible,.membership-dialog textarea:focus-visible,.membership-dialog label.membership-file:focus-within{outline:3px solid #067397;outline-offset:2px}
.membership-dialog .membership-close{position:absolute;inset-inline-end:16px;top:13px;border:0;background:transparent;color:#566d82;font-size:27px;padding:0 7px}
.membership-wordmark{font-size:9px;letter-spacing:2px;margin:6px 0 29px;font-weight:700;color:#566d82}
.membership-kicker{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#067397;margin:0 0 12px}
.membership-dialog h1{font-size:29px;line-height:1.12;letter-spacing:-.8px;font-weight:600;margin:0 0 14px}
.membership-intro{font-size:14px;line-height:1.6;color:#566d82;margin:0 0 24px}
.membership-form{display:grid;gap:17px}.membership-form label,.membership-panel label{font-size:12px;font-weight:600;display:grid;gap:8px}
.membership-form input,.membership-panel input,.membership-panel textarea{width:100%;min-height:46px;border:1px solid #cbd9e5;border-radius:8px;padding:0 12px;color:#152c43;background:white;font-size:16px}
.membership-panel textarea{min-height:110px;padding:12px;line-height:1.5;resize:vertical}
.membership-primary{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;border:0;border-radius:9px;background:#0a2540;color:white;font-size:13px;font-weight:600;min-height:46px;padding:12px 16px;margin:0}
.membership-primary:disabled{opacity:.52;cursor:default}
.membership-filter-lock{border:1px solid #94b4cb;border-radius:7px;padding:11px;color:inherit;background:transparent;font:inherit;font-size:12px;cursor:pointer}
.membership-privacy{font-size:11px;line-height:1.6;color:#566d82;margin:0}.membership-privacy a{color:#067397;text-decoration:underline;text-underline-offset:3px}
#site-credit{display:flex;align-items:center;gap:12px;bottom:max(4px,env(safe-area-inset-bottom));pointer-events:none}
#site-credit a{color:#edf5fc;background:#0a2540e6;border:1px solid #91b9d480;border-radius:4px;padding:5px 7px;font-size:10px;line-height:1.3;letter-spacing:0;text-decoration:none;pointer-events:auto}
#site-credit a:focus-visible{outline:2px solid #fff;outline-offset:3px}#site-credit a:hover{background:#123d5e}
#site-credit span{font-size:8px;line-height:1.2}
body.ui-hidden #site-credit{visibility:hidden;pointer-events:none}body.ui-hidden #site-credit a{pointer-events:none}
#viewnav{bottom:calc(28px + env(safe-area-inset-bottom))}
@media(max-width:640px),(pointer:coarse) and (max-height:480px){
  #leftpanels,.atlas-overview #mobile-areas:not([hidden]){bottom:calc(36px + env(safe-area-inset-bottom))}
  #rail:has(.ramhan-detail){bottom:calc(36px + env(safe-area-inset-bottom))}
  #zoomrail{bottom:calc(106px + env(safe-area-inset-bottom))}
}
.membership-benefits{list-style:none;padding:0;margin:0 0 20px;font-size:13px;line-height:1.5}
.membership-benefits li{padding:13px 0;border-bottom:1px solid #cbd9e5}.membership-benefits li:before{content:'✓';color:#067397;margin-inline-end:10px}
.membership-benefits li:last-child{border-bottom:0}
.membership-devices{list-style:none;padding:0;margin:0 0 4px;font-size:13px;line-height:1.5}
.membership-devices li{padding:13px 0;border-bottom:1px solid #cbd9e5}.membership-devices li:last-child{border-bottom:0}
.membership-device{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center}
.membership-device small{display:block;margin-top:3px;font-size:12px;line-height:1.5;color:#566d82}
.membership-device .membership-secondary{min-height:38px;padding:8px 14px;font-size:12px}
.membership-devices+.membership-actions{margin-top:14px}
.membership-status{font-size:12px;line-height:1.5;color:#566d82;margin:14px 0;overflow-wrap:anywhere;min-height:1.5em}
.membership-links{display:flex;justify-content:space-between;gap:10px}.membership-links button,.membership-signout,.membership-explore{border:0;background:transparent;font-size:12px;color:#566d82;padding:7px 0}
.membership-explore{display:block;margin:20px auto 0;color:#566d82}.membership-signout{display:block;margin:12px auto}.membership-active{color:#246958;font-size:13px;font-weight:600;margin:0 0 12px}
.membership-form .membership-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.7;cursor:pointer;padding:8px 0}
.membership-form .membership-consent input{appearance:auto;flex:0 0 20px;width:20px;height:20px;min-height:20px;margin:3px 0 0;padding:0;accent-color:#155763}
.membership-consent span{min-width:0}.membership-consent a,.membership-enterprise a{color:#155763;text-decoration:underline;text-underline-offset:3px}
/* Vertical rhythm: every block owns its top margin, and a caption after a button clears the
   focus ring (3px ring + 2px offset) with room to spare. */
.membership-section{margin-top:30px;padding-top:24px;border-top:1px solid #dbe5ee}
.membership-section>.membership-kicker{margin-bottom:14px}
.membership-section>.membership-privacy{margin-top:10px}
.membership-primary+.membership-privacy,.membership-secondary+.membership-privacy,.membership-actions+.membership-privacy{margin-top:12px}
.membership-privacy+.membership-primary,.membership-status+.membership-primary,.membership-benefits+.membership-primary{margin-top:16px}
.membership-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.membership-actions:first-child{margin-top:0}
.membership-secondary{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:42px;padding:9px 16px;border:1px solid #cbd9e5;border-radius:9px;background:#fff;color:#152c43;font-size:13px;font-weight:600;line-height:1.3;margin:0}
.membership-secondary:hover:not(:disabled){border-color:#067397;color:#067397}
.membership-secondary:disabled{opacity:.52;cursor:default}
.membership-secondary[hidden],.membership-actions button[hidden]{display:none}
.membership-section-first{margin-top:6px;padding-top:0;border-top:0}
.membership-subsection{margin-top:26px}
.membership-subsection>.membership-kicker{margin-bottom:10px}
.membership-profile+.membership-actions{margin-top:16px}
.membership-secondary.membership-danger:hover:not(:disabled){border-color:#b3413f;color:#b3413f}
.membership-file{position:relative}
.membership-file input{position:absolute;inset:0;opacity:0;width:100%;height:100%;min-height:0;cursor:pointer;padding:0;border:0}
.membership-profile{display:grid;grid-template-columns:84px minmax(0,1fr);gap:18px;align-items:center;padding:20px;border:1px solid #cbd9e5;border-radius:16px;background:#fff}
.membership-avatar-column{display:grid;gap:6px;justify-items:center}
.membership-avatar-action{display:block;width:84px;border:0;border-radius:6px;background:transparent;color:#067397;font-size:11px;font-weight:600;line-height:1.3;padding:3px 2px;text-align:center;cursor:pointer}
.membership-avatar-action:hover{background:#e8f1f5}
.membership-avatar-action.membership-danger{color:#8a3a38}.membership-avatar-action.membership-danger:hover{background:#f6e9e8}
.membership-avatar-action[hidden]{display:none}
.membership-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.membership-actions-grid .membership-secondary{width:100%}
.membership-status-top{margin:0 0 20px;min-height:0}.membership-status-top:empty{display:none}
.membership-panel .membership-actions{flex-wrap:nowrap}
.membership-panel .membership-actions .membership-primary{flex:1 1 auto;width:auto}
.membership-panel .membership-actions .membership-secondary{flex:0 0 auto}
.membership-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;background:linear-gradient(135deg,#0a2540,#067397);color:#fff;display:grid;place-items:center;font-size:24px;font-weight:600;letter-spacing:1px;overflow:hidden;flex:none}
.membership-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.membership-identity{display:grid;gap:5px;min-width:0}
.membership-identity strong{font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.membership-identity span{font-size:13px;line-height:1.5;color:#566d82;overflow-wrap:anywhere}
.membership-identity .membership-role{display:inline-block;width:max-content;max-width:100%;margin-top:4px;padding:3px 9px;border-radius:999px;background:#e8f1f5;color:#0a4b5f;font-size:11px;font-weight:600;letter-spacing:.3px}
.membership-panel{display:grid;gap:14px;margin-top:16px;padding:18px;border:1px solid #dbe5ee;border-radius:14px;background:#fff}
.membership-panel[hidden]{display:none}
.membership-panel .membership-actions{margin-top:2px}
.membership-panel p{margin:0;font-size:13px;line-height:1.6;color:#566d82}
.membership-plan{padding:20px;border:1px solid #cbd9e5;border-radius:16px;background:#fff;margin-top:14px}
.membership-plan:first-of-type{margin-top:0}
.membership-plan-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.membership-plan-head strong{font-size:17px}
.membership-plan-tag{font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:#067397}
.membership-plan-summary{margin:8px 0 0;font-size:13px;line-height:1.6;color:#566d82}
.membership-plan-facts{margin:12px 0 0;padding:0;list-style:none;font-size:12px;line-height:1.6;color:#566d82;display:grid;gap:4px}
.membership-plan-facts li:before{content:'✓';color:#067397;margin-inline-end:8px}
.membership-prices{display:grid;gap:10px;margin-top:16px}
.membership-price{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;align-items:center;padding:12px 14px;border:1px solid #e3ebf1;border-radius:12px;background:#f7fafc}
.membership-price-label{font-size:12px;font-weight:600;color:#566d82}
.membership-price-amount{font-size:15px;font-weight:600;grid-row:2;white-space:nowrap}
.membership-price .membership-secondary,.membership-price .membership-primary{grid-column:2;grid-row:1/3;min-height:40px;padding:8px 14px;font-size:12px;width:auto}
.membership-enterprise{padding:22px;border:1px solid #c7d9d6;border-radius:16px;background:linear-gradient(120deg,#edf4f1,#f8f4ea);margin-top:14px}
.membership-enterprise p{font-size:13px;line-height:1.6;margin:8px 0 0;color:#2f4a50}
.membership-enterprise .membership-actions{margin-top:16px}
.membership-enterprise .membership-privacy{margin-top:12px}
.membership-enterprise .membership-panel{background:#ffffffcc}
.membership-plans-note{margin-top:18px}
@media(max-width:640px){#membership-entry{margin-left:3px;padding:8px 9px;font-size:11px}.membership-dialog{padding:29px 24px}.membership-dialog h1{font-size:27px}.membership-profile{grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px}.membership-avatar{width:64px;height:64px;font-size:21px}.membership-avatar-action{width:76px}.membership-price{grid-template-columns:1fr}.membership-price .membership-secondary,.membership-price .membership-primary{grid-column:1;grid-row:auto;width:100%;margin-top:4px}.membership-price-amount{grid-row:auto}}
