/* source-style-62 */
/* Live RTC only: size the actual video element to the camera's real aspect
   ratio so the uploaded backing image remains visible in unused player space. */
#rtcStreamApp #rtcVideoFrame.has-stream-video-backing:not(.recording-playback){
    background-color:transparent!important;
    background-image:var(--stream-video-backing-image)!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
}

#rtcStreamApp #rtcVideoFrame.has-stream-video-backing:not(.recording-playback) video#rtcVideo{
    width:var(--rtc-live-video-width,100%)!important;
    height:var(--rtc-live-video-height,100%)!important;
    min-width:0!important;
    min-height:0!important;
    max-width:100%!important;
    max-height:100%!important;
    aspect-ratio:auto!important;
    object-fit:fill!important;
    justify-self:center!important;
    align-self:center!important;
    background:transparent!important;
    background-color:transparent!important;
    box-shadow:none!important;
}
/* Saved recordings keep the normal full player behaviour. */
#rtcStreamApp #rtcVideoFrame.recording-playback video#rtcVideo{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
}

/* source-style-63 */
/* Library view CSS uses explicit display values, so hidden search results must win. */
#bookGrid > .book-card[hidden]{
    display:none!important;
}
.library-search-empty{
    margin-top:14px;
    padding:22px 18px;
    border:1px dashed var(--line);
    border-radius:14px;
    background:color-mix(in srgb, var(--website-theme-color, #d86d83) 5%, #fff 95%);
    color:var(--muted);
    text-align:center;
    font-size:13px;
    font-weight:800;
}
.library-search-empty[hidden]{display:none!important;}

/* source-style-64 */
/* OFFLINE PLAYER RULE:
   The Admin-uploaded "Stream player background image" owns the entire player
   whenever no live RTC video is being displayed. The separate live-video
   backing image is only for unused space around an active live video. */
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback){
    background-color:transparent!important;
    background-image:var(--stream-background-image)!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    filter:none!important;
    -webkit-filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback)::before,
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback)::after{
    content:none!important;
    display:none!important;
}
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback) > .video-placeholder{
    display:grid!important;
    position:absolute!important;
    inset:0!important;
    z-index:6!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    background-color:transparent!important;
    background-image:var(--stream-background-image)!important;
    background-size:cover!important;
    background-position:center center!important;
    background-repeat:no-repeat!important;
    opacity:1!important;
    filter:none!important;
    -webkit-filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:none!important;
}
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback) > .video-placeholder::before,
#rtcStreamApp #rtcVideoFrame.has-stream-background:not(.has-video):not(.recording-playback) > .video-placeholder::after{
    content:none!important;
    display:none!important;
}
/* If both background settings are configured, the offline image above must
   beat the live-video backing image until actual RTC media becomes visible. */
#rtcStreamApp #rtcVideoFrame.has-stream-background.has-stream-video-backing:not(.has-video):not(.recording-playback){
    background-image:var(--stream-background-image)!important;
}
/* Once live RTC media is present, uncover the video and let the dedicated
   live-video backing image show only around its unused sides. */
#rtcStreamApp #rtcVideoFrame.has-video > .video-placeholder{
    display:none!important;
}

/* source-style-65 */
.rtc-guest-dialog{border:0;padding:0;background:transparent;max-width:min(680px,calc(100vw - 30px));width:100%}.rtc-guest-dialog::backdrop{background:rgba(20,12,17,.48)}.rtc-guest-dialog-card{background:#fff;border:1px solid rgba(90,55,70,.16);border-radius:18px;padding:16px;box-shadow:0 24px 70px rgba(30,15,25,.24)}.rtc-guest-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.rtc-guest-dialog-head>div{display:grid;gap:3px}.rtc-guest-dialog-head small{color:#76636d}.rtc-guest-account-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:9px;margin-top:14px;max-height:55vh;overflow:auto}.rtc-guest-account{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid rgba(90,55,70,.14);background:#fff;border-radius:13px;padding:10px 11px;min-height:62px;cursor:pointer}.rtc-guest-account:hover{border-color:var(--theme);background:rgba(255,247,250,.94)}
.rtc-guest-account.rtc-guest-account-author{
    border:2px solid #e11d48!important;
    box-shadow:
        0 0 0 2px rgba(37,99,235,.9),
        0 0 12px rgba(225,29,72,.34),
        0 0 18px rgba(37,99,235,.28)!important;
    background:linear-gradient(135deg,rgba(255,245,247,.98),rgba(242,247,255,.98))!important;
}
.rtc-guest-account.rtc-guest-account-author:hover,
.rtc-guest-account.rtc-guest-account-author:focus-visible{
    border-color:#dc143c!important;
    box-shadow:
        0 0 0 3px rgba(37,99,235,.95),
        0 0 16px rgba(220,20,60,.46),
        0 0 24px rgba(37,99,235,.38)!important;
}
.rtc-guest-account.rtc-guest-account-author .rtc-guest-account-avatar{
    border:2px solid #2563eb;
    box-shadow:0 0 0 2px rgba(225,29,72,.28);
}.rtc-guest-account-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--theme-soft,#f9dce4);font-weight:900;flex:0 0 auto}.rtc-guest-account>span:last-child{display:grid;min-width:0}.rtc-guest-account strong,.rtc-guest-account small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rtc-guest-account small{color:#796671;font-size:11px}.rtc-guest-dialog-actions{display:flex;justify-content:flex-end;margin-top:12px}.stream-split-guest-status{margin:8px 0 0;padding:8px 11px;border:1px solid rgba(76,173,100,.28);border-radius:11px;background:rgba(236,255,241,.88);font-weight:800;font-size:12px}.rtc-split-invite{position:fixed;z-index:10050;top:18px;left:50%;transform:translateX(-50%);width:min(620px,calc(100vw - 28px));display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(216,109,131,.38);border-radius:16px;background:#fff;box-shadow:0 20px 60px rgba(40,20,30,.24)}.rtc-split-invite[hidden]{display:none!important}.rtc-split-invite-copy{display:grid;gap:3px}.rtc-split-invite-copy span{font-size:12px;color:#6f5963}.rtc-split-invite-actions{display:flex;gap:8px;flex:0 0 auto}@media(max-width:620px){.rtc-split-invite{align-items:stretch;flex-direction:column;top:10px}.rtc-split-invite-actions>*{flex:1}.rtc-guest-account-list{grid-template-columns:1fr}}

/* source-style-66 */
/* Skip painting off-screen repeated content until it approaches the viewport. */
.book-card,.stream-recording-card,.member-row,.activity-item,.book-talk-message,.book-talk-member-row{
    content-visibility:auto;
    contain-intrinsic-size:auto 120px;
}

/* source-style-67 */
/* Final Admin + Member control safety.
   Keep click states geometry-neutral and make text-bearing controls wrap inside
   their own boxes instead of pushing over neighbouring labels/content. */
html{
    scrollbar-gutter:stable!important;
}

/* Never move, scale or compress a real control when it is hovered, focused or pressed. */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
[role="button"]{
    box-sizing:border-box!important;
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
    max-width:100%;
    vertical-align:middle!important;
    touch-action:manipulation;
}
button:hover,
button:focus,
button:focus-visible,
button:active,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="button"]:active,
input[type="submit"]:hover,
input[type="submit"]:focus,
input[type="submit"]:active,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="reset"]:active,
[role="button"]:hover,
[role="button"]:focus,
[role="button"]:active{
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
}

/* Text action buttons are allowed to grow vertically when a label needs two lines.
   Their width/padding/border do not change between normal and click states. */
.primary,
.secondary,
.danger-button,
.ghost-button,
.publish-button,
.unpublish-button,
.install-app-button,
.auth-tab,
.library-view-button,
.member-watch-button,
.book-talk-video-button,
.book-talk-video-end,
.book-talk-video-retry,
.book-talk-public-return,
.announcement-book-link{
    box-sizing:border-box!important;
    height:auto!important;
    min-height:44px!important;
    max-height:none!important;
    max-width:100%!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    text-overflow:clip!important;
    text-align:center!important;
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
}
.primary:hover,.primary:focus,.primary:active,
.secondary:hover,.secondary:focus,.secondary:active,
.danger-button:hover,.danger-button:focus,.danger-button:active,
.ghost-button:hover,.ghost-button:focus,.ghost-button:active,
.publish-button:hover,.publish-button:focus,.publish-button:active,
.unpublish-button:hover,.unpublish-button:focus,.unpublish-button:active,
.install-app-button:hover,.install-app-button:focus,.install-app-button:active,
.auth-tab:hover,.auth-tab:focus,.auth-tab:active,
.library-view-button:hover,.library-view-button:focus,.library-view-button:active,
.member-watch-button:hover,.member-watch-button:focus,.member-watch-button:active,
.book-talk-video-button:hover,.book-talk-video-button:focus,.book-talk-video-button:active,
.book-talk-video-end:hover,.book-talk-video-end:focus,.book-talk-video-end:active,
.book-talk-video-retry:hover,.book-talk-video-retry:focus,.book-talk-video-retry:active,
.book-talk-public-return:hover,.book-talk-public-return:focus,.book-talk-public-return:active,
.announcement-book-link:hover,.announcement-book-link:focus,.announcement-book-link:active{
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
}

/* Reserve space correctly inside common action/header rows so controls cannot sit
   on top of headings, helper text or neighbouring controls. */
.topbar,
.top-actions,
.panel-head,
.library-tools,
.admin-book-actions,
.member-actions,
.stream-controls,
.stream-recording-actions,
.subscription-actions,
.editor-toolbar,
.book-talk-head,
.book-talk-head-actions,
.book-talk-video-top,
.book-talk-video-top-actions,
.book-talk-call-invite,
.book-talk-call-invite-actions,
.announcement-composer-actions{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
.panel-head,
.library-tools,
.admin-book-actions,
.member-actions,
.stream-controls,
.stream-recording-actions,
.subscription-actions,
.editor-toolbar,
.book-talk-head,
.book-talk-head-actions,
.book-talk-video-top,
.book-talk-video-top-actions,
.book-talk-call-invite-actions,
.announcement-composer-actions{
    flex-wrap:wrap!important;
}
.topbar > *,
.panel-head > *,
.library-tools > *,
.admin-book-actions > *,
.member-actions > *,
.stream-controls > *,
.stream-recording-actions > *,
.subscription-actions > *,
.editor-toolbar > *,
.book-talk-head > *,
.book-talk-head-actions > *,
.book-talk-video-top > *,
.book-talk-video-top-actions > *,
.book-talk-call-invite > *,
.book-talk-call-invite-actions > *,
.announcement-composer-actions > *{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}

/* Text next to buttons owns its own wrapping space instead of being covered. */
.panel-head h1,.panel-head h2,.panel-head h3,.panel-head p,
.topbar h1,.topbar h2,.topbar p,
.book-talk-head h1,.book-talk-head h2,.book-talk-head h3,.book-talk-head p,
.book-talk-video-top h1,.book-talk-video-top h2,.book-talk-video-top h3,.book-talk-video-top p,
.announcement-composer-actions span{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
}

/* Keep compact icon-only controls compact. They still get the no-transform rule above. */
.close-button,
.remove-page,
.stream-chat-delete,
.book-talk-delete,
.announcement-remove,
.stream-recording-remove{
    flex-shrink:0!important;
    transform:none!important;
    -webkit-transform:none!important;
    translate:none!important;
    scale:none!important;
}

/* The Book Club Feed composer must always reserve a real column for Send. */
.book-talk-form{
    grid-template-columns:minmax(0,1fr) minmax(88px,max-content)!important;
    min-width:0!important;
    max-width:100%!important;
}
.book-talk-form textarea{
    min-width:0!important;
    max-width:100%!important;
}
.book-talk-form button{
    min-width:88px!important;
    max-width:100%!important;
    height:auto!important;
    min-height:44px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}

/* Keep the Stream Chat input and Send button in their own grid cells. */
.stream-chat-form,
.member-viewer-panel .stream-chat-form,
.admin-viewer-panel .stream-chat-form{
    min-width:0!important;
    max-width:100%!important;
}
.stream-chat-form input,
.member-viewer-panel .stream-chat-form input,
.admin-viewer-panel .stream-chat-form input{
    min-width:0!important;
    max-width:100%!important;
}

@media(max-width:620px){
    .book-talk-form{
        grid-template-columns:minmax(0,1fr)!important;
    }
    .book-talk-form button{
        width:100%!important;
        min-width:0!important;
    }
    .book-talk-video-top-actions,
    .book-talk-head-actions,
    .book-talk-call-invite-actions,
    .announcement-composer-actions{
        width:100%!important;
    }
    .book-talk-video-top-actions > button,
    .book-talk-head-actions > button,
    .book-talk-call-invite-actions > button,
    .announcement-composer-actions > button{
        flex:1 1 140px!important;
        min-width:0!important;
    }
}

@media(prefers-reduced-motion:reduce){
    button,
    input[type="button"],
    input[type="submit"],
    input[type="reset"],
    [role="button"],
    .primary,.secondary,.danger-button,.ghost-button{
        transition:none!important;
        animation:none!important;
    }
}

/* source-style-68 */
/* Global overlay safety audit.
   Remove obsolete decorative films that previously sat above page/stream imagery.
   Real interactive overlays (dialogs, reader UI, countdowns and call invites) are preserved. */

/* Old login artwork grid film: keep the background itself clean and unobstructed. */
html body .login-art::after{
    content:none!important;
    display:none!important;
    background:none!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Old Member Stream workspace film is unnecessary; the workspace background remains. */
html body .member-stream-workspace::before{
    content:none!important;
    display:none!important;
    background:none!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Hard-stop every obsolete Member Stream pseudo overlay from older visual treatments. */
html body #rtcStreamApp .member-viewer-panel::before,
html body #rtcStreamApp .member-viewer-panel::after,
html body #rtcStreamApp .member-viewer-panel .stream-heading::before,
html body #rtcStreamApp .member-viewer-panel .stream-heading::after,
html body #rtcStreamApp .member-viewer-panel .video-frame::before,
html body #rtcStreamApp .member-viewer-panel .video-frame::after,
html body #rtcStreamApp .member-viewer-panel .stream-chat-head::before,
html body #rtcStreamApp .member-viewer-panel .stream-chat-head::after,
html body #rtcStreamApp .member-viewer-panel .stream-chat-form::before,
html body #rtcStreamApp .member-viewer-panel .stream-chat-form::after,
html body #rtcStreamApp .member-viewer-panel .stream-book-vote::before,
html body #rtcStreamApp .member-viewer-panel .stream-book-vote::after,
html body #rtcStreamApp .member-viewer-panel .stream-chat-message::before,
html body #rtcStreamApp .member-viewer-panel .stream-chat-message::after,
html body #rtcStreamApp .admin-viewer-panel .video-frame::before,
html body #rtcStreamApp .admin-viewer-panel .video-frame::after,
html body #rtcStreamApp #rtcVideoFrame::before,
html body #rtcStreamApp #rtcVideoFrame::after{
    content:none!important;
    display:none!important;
    background:none!important;
    background-image:none!important;
    opacity:0!important;
    filter:none!important;
    -webkit-filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    box-shadow:none!important;
    pointer-events:none!important;
}

/* Stream/chat surfaces must never inherit an old blur/filter film. */
html body #rtcStreamApp .video-frame,
html body #rtcStreamApp .video-frame > video,
html body #rtcStreamApp .stream-chat-panel,
html body #rtcStreamApp .stream-chat-head,
html body #rtcStreamApp .stream-chat-messages,
html body #rtcStreamApp .stream-chat-form{
    filter:none!important;
    -webkit-filter:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}

/* Non-interactive full-size placeholders may be visible, but must never block clicks. */
html body #rtcStreamApp .video-placeholder,
html body .stream-recording-thumb-placeholder,
html body .recording-thumbnail-preview-placeholder,
html body .book-talk-video-wait{
    pointer-events:none!important;
}

/* Sidebar has no decorative full-panel overlay layer. */
html body .app-shell > aside.sidebar::before,
html body .app-shell > aside.sidebar::after{
    content:none!important;
    display:none!important;
    background:none!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Hidden incoming-call UI can never remain as an invisible click blocker. */
html body .book-talk-call-invite[hidden]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Preserve the intentional interactive overlays explicitly. */
html body dialog[open],
html body .book-talk-call-invite:not([hidden]){
    pointer-events:auto;
}

/* source-style-69 */
html.login-document .auth-pane[hidden],
html body.login-body .auth-pane[hidden]{
    display:none!important;
}
html.login-document .auth-pane,
html body.login-body .auth-pane{
    width:100%;
}

/* source-style-70 */
/* Final Settings density pass: compact, aligned and predictable without changing functionality. */
body .admin-settings-workspace{
    --settings-gap:7px!important;
}
body .admin-settings-workspace .content{
    padding-top:7px!important;
    padding-bottom:14px!important;
}
body .admin-settings-workspace .settings-grid{
    gap:7px!important;
}
body .admin-settings-workspace .settings-grid>article.panel{
    padding:10px!important;
    border-radius:13px!important;
}
body .admin-settings-workspace .settings-grid>article.panel>.panel-head{
    margin:0 0 7px!important;
    padding:0 0 7px!important;
}
body .admin-settings-workspace .settings-grid>article.panel>.panel-head h2{
    font-size:17px!important;
    line-height:1.1!important;
}
body .admin-settings-workspace .settings-grid>article.panel>.panel-head p{
    margin:2px 0 0!important;
    font-size:9.5px!important;
    line-height:1.25!important;
}
body .admin-settings-workspace .settings-grid form{
    gap:7px!important;
}

/* Slim section dividers rather than large cards. */
body .admin-settings-workspace .settings-section-heading{
    min-height:34px!important;
    margin:1px 0!important;
    padding:5px 7px!important;
    gap:7px!important;
    border-radius:8px!important;
    box-shadow:none!important;
}
body .admin-settings-workspace .settings-section-heading>span{
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
    border-radius:7px!important;
    font-size:8px!important;
    box-shadow:none!important;
}
body .admin-settings-workspace .settings-section-heading strong{
    font-size:10.5px!important;
    line-height:1.1!important;
}
body .admin-settings-workspace .settings-section-heading small{
    font-size:8.5px!important;
    line-height:1.15!important;
}

/* Basic fields: four across on large screens, with compact form controls. */
body .admin-settings-workspace .settings-core-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
}
body .admin-settings-workspace .settings-core-grid>.field{
    padding:7px!important;
    border-radius:9px!important;
}
body .admin-settings-workspace .field{
    gap:3px!important;
}
body .admin-settings-workspace .field>label,
body .admin-settings-workspace .settings-media-card>label{
    font-size:9.5px!important;
    line-height:1.15!important;
    letter-spacing:.025em!important;
}
body .admin-settings-workspace .field input:not([type="checkbox"]):not([type="range"]):not([type="color"]),
body .admin-settings-workspace .field select,
body .admin-settings-workspace .field textarea{
    min-height:32px!important;
    height:auto!important;
    padding:6px 8px!important;
    border-radius:7px!important;
    font-size:11px!important;
}
body .admin-settings-workspace .field textarea{
    min-height:44px!important;
    height:44px!important;
    resize:vertical!important;
}
body .admin-settings-workspace .field>p,
body .admin-settings-workspace .field>small,
body .admin-settings-workspace .settings-media-card p{
    margin:3px 0 0!important;
    font-size:8.8px!important;
    line-height:1.25!important;
}

/* Colour settings are short, consistent rows. */
body .admin-settings-workspace .website-theme-colour-setting,
body .admin-settings-workspace .stream-heading-colour-setting,
body .admin-settings-workspace .stream-chatbox-colour-setting{
    padding:7px!important;
}
body .admin-settings-workspace .website-theme-colour-row,
body .admin-settings-workspace .stream-heading-colour-row,
body .admin-settings-workspace .stream-chatbox-colour-row{
    gap:6px!important;
}
body .admin-settings-workspace .website-theme-colour-row input[type="color"],
body .admin-settings-workspace .stream-heading-colour-row input[type="color"],
body .admin-settings-workspace .stream-chatbox-colour-row input[type="color"]{
    width:38px!important;
    min-width:38px!important;
    height:30px!important;
    min-height:30px!important;
    padding:2px!important;
    border-radius:7px!important;
}
body .admin-settings-workspace .website-theme-colour-row output,
body .admin-settings-workspace .stream-heading-colour-row output,
body .admin-settings-workspace .stream-chatbox-colour-row output{
    min-height:30px!important;
    padding:5px 7px!important;
    font-size:9.5px!important;
    border-radius:7px!important;
}

/* Branding cards: title upload and size share one compact row; image cards align below. */
body .admin-settings-workspace .settings-media-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
}
body .admin-settings-workspace .settings-media-card{
    padding:8px!important;
    border-radius:9px!important;
    box-shadow:none!important;
}
body .admin-settings-workspace .link-banner-setting-card{
    grid-column:span 1!important;
    justify-self:start!important;
    width:100%!important;
    max-width:440px!important;
    box-sizing:border-box!important;
}
body .admin-settings-workspace .link-banner-upload{
    padding:6px!important;
    border:1px solid rgba(197,133,150,.16)!important;
    border-radius:8px!important;
    background:#fff!important;
}
body .admin-settings-workspace .link-banner-upload input[type="file"]{
    min-height:31px!important;
    padding:5px 6px!important;
    border-radius:6px!important;
    font-size:9px!important;
}
body .admin-settings-workspace .link-banner-preview{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    max-width:420px!important;
    aspect-ratio:auto!important;
    height:auto!important;
    max-height:none!important;
    margin:6px auto 0!important;
    overflow:visible!important;
    border:1px solid rgba(197,133,150,.2)!important;
    border-radius:8px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}
body .admin-settings-workspace .link-banner-preview img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    max-height:none!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#fff!important;
}
body .admin-settings-workspace .login-title-image-setting-card{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:1.3fr minmax(0,1fr)!important;
    gap:7px 8px!important;
    align-items:start!important;
}
body .admin-settings-workspace .login-title-image-setting-card>label{
    grid-column:1/-1!important;
}
body .admin-settings-workspace .login-title-image-upload,
body .admin-settings-workspace .login-title-size-control{
    margin:0!important;
    min-width:0!important;
    padding:6px!important;
    border:1px solid rgba(197,133,150,.16)!important;
    border-radius:8px!important;
    background:#fff!important;
}
body .admin-settings-workspace .login-title-image-upload input[type="file"]{
    min-height:31px!important;
    padding:5px 6px!important;
    border-radius:6px!important;
    font-size:9px!important;
}
body .admin-settings-workspace .login-title-size-control>label{
    font-size:9px!important;
    line-height:1.15!important;
}
body .admin-settings-workspace .login-title-size-row{
    gap:6px!important;
    min-height:26px!important;
}
body .admin-settings-workspace .login-title-size-row output{
    flex:0 0 48px!important;
    font-size:9px!important;
}
body .admin-settings-workspace .login-title-settings-preview,
body .admin-settings-workspace .login-title-settings-empty{
    grid-column:1/-1!important;
    min-height:62px!important;
    max-height:82px!important;
    margin:0!important;
    padding:6px!important;
    border-radius:8px!important;
}
body .admin-settings-workspace .login-title-settings-preview img{
    max-height:68px!important;
}
body .admin-settings-workspace .login-title-image-remove{
    grid-column:1/-1!important;
}

body .admin-settings-workspace .club-logo-upload,
body .admin-settings-workspace .login-background-upload,
body .admin-settings-workspace .stream-background-upload,
body .admin-settings-workspace .stream-video-backing-upload{
    padding:5px!important;
    border-radius:7px!important;
}
body .admin-settings-workspace .club-logo-upload input[type="file"],
body .admin-settings-workspace .login-background-upload input[type="file"],
body .admin-settings-workspace .stream-background-upload input[type="file"],
body .admin-settings-workspace .stream-video-backing-upload input[type="file"]{
    min-height:31px!important;
    padding:5px 6px!important;
    border-radius:6px!important;
    font-size:9px!important;
}
body .admin-settings-workspace .club-logo-preview{
    width:58px!important;
    height:58px!important;
    margin-top:5px!important;
    border-radius:10px!important;
    font-size:28px!important;
    box-shadow:none!important;
}
body .admin-settings-workspace .login-background-preview,
body .admin-settings-workspace .stream-background-preview,
body .admin-settings-workspace .stream-video-backing-preview{
    height:68px!important;
    margin-top:5px!important;
    border-radius:7px!important;
}

/* Every Settings checkbox stays uniformly small. */
body .admin-settings-workspace input[type="checkbox"]{
    width:15px!important;
    height:15px!important;
    min-width:15px!important;
    min-height:15px!important;
    max-width:15px!important;
    max-height:15px!important;
    flex:0 0 15px!important;
}
body .admin-settings-workspace .login-title-image-remove,
body .admin-settings-workspace .club-logo-remove,
body .admin-settings-workspace .login-background-remove,
body .admin-settings-workspace .stream-background-remove,
body .admin-settings-workspace .stream-video-backing-remove,
body .admin-settings-workspace .stripe-remove-key,
body .admin-settings-workspace .subscription-enable{
    min-height:28px!important;
    margin-top:5px!important;
    padding:5px 6px!important;
    gap:6px!important;
    border-radius:7px!important;
    font-size:9px!important;
    line-height:1.2!important;
}

/* Subscription / Stripe is dense but still readable. */
body .admin-settings-workspace .settings-subscription-box{
    padding:8px!important;
    border-radius:9px!important;
}
body .admin-settings-workspace .settings-subscription-box .settings-section-heading{
    margin:0 0 5px!important;
}
body .admin-settings-workspace .subscription-enable{
    width:auto!important;
    max-width:100%!important;
    margin:0 0 6px!important;
}
body .admin-settings-workspace .subscription-settings-row{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    max-width:none!important;
}
body .admin-settings-workspace .stripe-admin-credentials{
    margin-top:7px!important;
    padding:7px!important;
    gap:6px!important;
    border-radius:8px!important;
}
body .admin-settings-workspace .stripe-credential-head{
    gap:6px!important;
}
body .admin-settings-workspace .stripe-credential-head strong{
    font-size:10px!important;
}
body .admin-settings-workspace .stripe-credential-head small,
body .admin-settings-workspace .stripe-secret-field p,
body .admin-settings-workspace .stripe-setup-note,
body .admin-settings-workspace .settings-subscription-box>p{
    font-size:8.7px!important;
    line-height:1.25!important;
}
body .admin-settings-workspace .stripe-setup-note{
    padding:5px 6px!important;
    border-radius:6px!important;
}
body .admin-settings-workspace .stripe-test-button{
    min-height:30px!important;
    padding:6px 8px!important;
    font-size:9.5px!important;
}

body .admin-settings-workspace .settings-save-bar{
    padding:6px 0 0!important;
}
body .admin-settings-workspace .settings-save-bar .primary{
    min-height:34px!important;
    padding:7px 11px!important;
    border-radius:8px!important;
    font-size:10.5px!important;
    box-shadow:0 4px 10px rgba(177,73,98,.12)!important;
}

@media(max-width:1380px) and (min-width:981px){
    body .admin-settings-workspace .settings-core-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body .admin-settings-workspace .settings-media-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body .admin-settings-workspace .login-title-image-setting-card{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body .admin-settings-workspace .link-banner-setting-card{grid-column:span 1!important;}
}
@media(max-width:980px){
    body .admin-settings-workspace .settings-core-grid,
    body .admin-settings-workspace .settings-media-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body .admin-settings-workspace .login-title-image-setting-card{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    body .admin-settings-workspace .link-banner-setting-card{grid-column:span 1!important;}
}
@media(max-width:760px){
    body .admin-settings-workspace .content{padding-top:5px!important;padding-bottom:10px!important;}
    body .admin-settings-workspace .settings-grid>article.panel{padding:8px!important;}
    body .admin-settings-workspace .settings-core-grid,
    body .admin-settings-workspace .settings-media-grid,
    body .admin-settings-workspace .login-title-image-setting-card,
    body .admin-settings-workspace .subscription-settings-row{
        grid-template-columns:minmax(0,1fr)!important;
    }
    body .admin-settings-workspace .settings-section-heading small{display:none!important;}
    body .admin-settings-workspace .settings-media-card{padding:7px!important;}
    body .admin-settings-workspace .link-banner-setting-card{grid-column:auto!important;}
    body .admin-settings-workspace .login-background-preview,
    body .admin-settings-workspace .stream-background-preview,
    body .admin-settings-workspace .stream-video-backing-preview{height:78px!important;}
    body .admin-settings-workspace .settings-save-bar{position:static!important;}
}

/* COURTREADZ 8.3.193 — compact, stable Private Chat messenger ------------ */
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation{
    display:flex!important;
    flex-direction:column!important;
    gap:1px!important;
    padding:8px 8px 9px!important;
    scroll-behavior:auto!important;
    overflow-anchor:none!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--theme-pale,#fff7f9) 42%,#fff 58%),#fff)!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-day{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    margin:7px 0 5px;
    color:var(--muted,#7e6b74);
    font-size:10px;
    font-weight:850;
    line-height:1;
    text-align:center;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-day::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:50%;
    height:1px;
    background:var(--line,#eadde1);
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-day>span{
    position:relative;
    z-index:1;
    padding:3px 7px;
    border:1px solid var(--line,#eadde1);
    border-radius:999px;
    background:#fff;
    box-shadow:0 2px 7px rgba(54,31,41,.05);
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row{
    display:flex;
    align-items:flex-end;
    justify-content:flex-start;
    width:100%;
    min-width:0;
    gap:5px;
    margin:0;
    min-height:0;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row.group-start{
    margin-top:4px;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-day+.book-talk-message-row.group-start{
    margin-top:0;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row.mine{
    justify-content:flex-end;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-avatar{
    display:grid;
    place-items:center;
    flex:0 0 24px;
    width:24px;
    height:24px;
    border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 32%,#fff 68%);
    border-radius:50%;
    overflow:hidden;
    background:var(--theme-soft,#f7e8ec);
    color:var(--theme-deep,#733a49);
    font-size:9px;
    font-weight:950;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-avatar.is-hidden{
    visibility:hidden;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-avatar img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message{
    position:relative;
    align-self:auto!important;
    width:auto!important;
    min-width:50px;
    max-width:min(78%,680px)!important;
    margin:0!important;
    padding:5px 9px 4px!important;
    border:1px solid var(--line,#eadde1)!important;
    border-radius:14px 14px 14px 5px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(42,24,32,.06)!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row:not(.group-start) .book-talk-message{
    border-top-left-radius:8px!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row:not(.group-end) .book-talk-message{
    border-bottom-left-radius:8px!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message.mine{
    color:#fff!important;
    border-color:var(--theme-base,#d86d83)!important;
    border-radius:14px 14px 5px 14px!important;
    background:linear-gradient(145deg,color-mix(in srgb,var(--theme-base,#d86d83) 88%,#f04f89 12%),var(--theme-deep,#9e3f5d))!important;
    box-shadow:0 3px 9px rgba(var(--theme-rgb,216,109,131),.18)!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row.mine:not(.group-start) .book-talk-message{
    border-top-right-radius:8px!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row.mine:not(.group-end) .book-talk-message{
    border-bottom-right-radius:8px!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-name{
    display:flex;
    align-items:center;
    min-width:0;
    gap:4px;
    margin:0 20px 1px 0;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-name strong{
    min-width:0;
    overflow:hidden;
    color:var(--theme-deep,#733a49);
    font-size:9px;
    font-weight:900;
    line-height:1.05;
    text-overflow:ellipsis;
    white-space:nowrap;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message p{
    margin:0!important;
    min-height:0!important;
    padding:0!important;
    color:var(--ink,#271e22)!important;
    font-size:14px!important;
    line-height:1.22!important;
    white-space:pre-wrap!important;
    overflow-wrap:anywhere!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message.mine p{
    color:#fff!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-foot{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    min-height:9px;
    gap:4px;
    margin-top:1px;
    color:var(--muted,#7e6b74);
    font-size:7.5px;
    font-weight:750;
    line-height:1;
    white-space:nowrap;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message.mine .book-talk-message-foot{
    color:rgba(255,255,255,.82);
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-status.is-read{
    color:inherit;
    font-weight:900;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message-row.is-sending{
    opacity:.72;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-delete{
    top:3px!important;
    right:3px!important;
    width:20px!important;
    height:20px!important;
    color:var(--muted,#7e6b74)!important;
    opacity:.56;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message.mine .book-talk-delete{
    color:#fff!important;
}
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message:hover .book-talk-delete,
body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-delete:focus-visible{
    opacity:1;
}
body[data-current-view="book_talk"] .book-talk-private-presence{
    display:inline-flex;
    align-items:center;
    gap:5px;
    color:var(--muted,#7e6b74);
    font-weight:850;
}
body[data-current-view="book_talk"] .book-talk-private-presence+span::before{
    content:"·";
    margin:0 6px;
}
body[data-current-view="book_talk"] .book-talk-private-presence i{
    display:block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#aaa2a6;
}
body[data-current-view="book_talk"] .book-talk-private-presence.is-online i{
    background:#21a667;
    box-shadow:0 0 0 3px rgba(33,166,103,.12);
}
body[data-current-view="book_talk"] #bookTalkForm.is-private{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"message post"!important;
    align-items:end!important;
    gap:7px!important;
    padding:8px 0 0!important;
}
body[data-current-view="book_talk"] #bookTalkForm.is-private #bookTalkInput{
    grid-area:message!important;
    min-height:42px!important;
    max-height:96px!important;
    padding:10px 14px!important;
    border-radius:21px!important;
    background:#fff!important;
}
body[data-current-view="book_talk"] #bookTalkForm.is-private #bookTalkSend{
    grid-area:post!important;
    min-width:74px!important;
    width:auto!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:8px 13px!important;
    border-radius:21px!important;
    white-space:nowrap!important;
}
body[data-current-view="book_talk"] #bookTalkFeedback:empty{
    display:none!important;
}
@media(max-width:760px){
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill #bookTalkMessages.is-private-conversation{
        padding:5px 4px 6px!important;
        gap:1px!important;
        -webkit-overflow-scrolling:touch!important;
        touch-action:pan-y!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message{
        max-width:86%!important;
        padding:5px 8px 4px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-message p{
        font-size:14px!important;
        line-height:1.2!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.is-private-conversation .book-talk-private-avatar{
        flex-basis:23px;
        width:23px;
        height:23px;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp .book-talk-head p{
        display:flex!important;
        align-items:center!important;
        min-height:14px!important;
        margin-top:2px!important;
        font-size:9px!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp #bookTalkForm.is-private{
        grid-template-columns:minmax(0,1fr) 68px!important;
        gap:6px!important;
        padding:6px 0 max(2px,env(safe-area-inset-bottom,0px))!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp #bookTalkForm.is-private #bookTalkInput{
        width:100%!important;
        min-width:0!important;
        height:42px!important;
        min-height:42px!important;
        max-height:84px!important;
        font-size:16px!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp #bookTalkForm.is-private #bookTalkSend{
        width:68px!important;
        min-width:68px!important;
        max-width:68px!important;
        height:42px!important;
        min-height:42px!important;
        padding:6px 8px!important;
    }
}

/* COURTREADZ 8.1.327 — editable reading profiles and reference-style private Account view. */
.reading-profile-form{
    display:grid;
    gap:22px;
    margin:0 0 16px;
    padding:20px;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 30%,#fff);
    border-radius:18px;
    background:linear-gradient(145deg,color-mix(in srgb,var(--theme-pale,#fff7f9) 88%,#fff),#fff);
}
.reading-profile-intro{display:grid;gap:7px}.reading-profile-intro>div{display:grid;gap:3px}.reading-profile-intro span{color:var(--theme-deep,#733a49);font-size:10px;font-weight:950;letter-spacing:.16em;text-transform:uppercase}.reading-profile-intro strong{font-size:21px}.reading-profile-intro p{max-width:700px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.reading-choice-section{display:grid;gap:14px;min-width:0}.reading-choice-heading{display:grid;grid-template-columns:minmax(24px,1fr) auto minmax(24px,1fr);align-items:center;gap:13px}.reading-choice-heading span{height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--theme-base,#d86d83))}.reading-choice-heading span:last-child{background:linear-gradient(90deg,var(--theme-base,#d86d83),transparent)}.reading-choice-heading h3{margin:0;color:var(--theme-base,#d86d83);font-family:"Brush Script MT","Segoe Script",cursive;font-size:clamp(25px,4vw,34px);font-weight:700;line-height:1.1;text-align:center}
.reading-author-editor-grid,.reading-book-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;min-width:0}.reading-choice-editor{display:grid;align-content:start;gap:7px;min-width:0;padding:12px;border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 22%,var(--line));border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(73,31,48,.05)}.reading-choice-editor>label:not(.reading-remove-choice){color:var(--ink);font-size:11px;font-weight:900}.reading-choice-editor input[type=text],.reading-choice-editor input[type=file]{width:100%;min-width:0;box-sizing:border-box}.reading-choice-editor input[type=file]{padding:7px;background:var(--theme-pale,#fff7f9);font-size:10px}.reading-file-label{margin-top:2px}.reading-remove-choice{display:flex;align-items:center;gap:6px;color:#a32642;font-size:10px;font-weight:800}.reading-remove-choice input{margin:0}.reading-choice-preview{position:relative;display:grid;place-items:center;overflow:hidden;margin:0 auto 3px;border:2px solid color-mix(in srgb,var(--theme-base,#d86d83) 45%,#fff);background:linear-gradient(145deg,var(--theme-soft,#f7e8ec),#fff);color:var(--theme-deep,#733a49);font-weight:950}.reading-choice-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.author-preview{width:92px;aspect-ratio:4/5;border-radius:13px}.book-preview{width:96px;aspect-ratio:2/3;border-radius:10px}.reading-book-rank{position:absolute;z-index:2;top:5px;left:5px;display:grid;place-items:center;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:var(--theme-base,#d86d83);color:#fff;font-size:10px;box-shadow:0 3px 8px rgba(61,20,39,.2)}.reading-book-placeholder{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.reading-profile-save{justify-self:end}

html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head{align-items:flex-start!important;gap:10px!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions{display:flex!important;flex:1 1 auto!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;width:auto!important;max-width:none!important;margin-left:auto!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-nav{position:static!important;inset:auto!important;display:flex!important;flex:0 0 auto!important;flex-direction:row!important;gap:7px!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-nav[hidden]{display:none!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-button{justify-content:center!important;min-width:0!important;min-height:36px!important;height:36px!important;padding:4px 8px!important;border-radius:10px!important;font-size:10px!important;white-space:nowrap!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-button>span:first-child{flex-basis:24px!important;width:24px!important;height:24px!important;border-radius:7px!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle.book-talk-members-button{position:relative!important;z-index:9701!important;display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:5px!important;width:auto!important;min-width:0!important;max-width:none!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;padding:5px 8px!important;overflow:visible!important;border:1px solid var(--theme-border,#dcbec7)!important;border-radius:10px!important;background:#fff!important;color:var(--theme-deep,#733a49)!important;box-shadow:none!important;font-size:10px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;transform:none!important;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle.book-talk-members-button:hover,html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle.book-talk-members-button:focus-visible{border-color:var(--theme-base,#d86d83)!important;background:var(--theme-pale,#fff7f9)!important;color:var(--theme-deep,#733a49)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-base,#d86d83) 15%,transparent)!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle.book-talk-members-button[aria-expanded="true"]{visibility:visible!important;opacity:1!important;pointer-events:auto!important;border-color:var(--theme-base,#d86d83)!important;background:var(--theme-base,#d86d83)!important;color:#fff!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle .book-talk-members-button-icon,html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle .book-talk-members-button-label,html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle .book-talk-members-button-chevron{display:inline-block!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle .book-talk-members-button-count{display:grid!important;place-items:center!important;min-width:20px!important;height:20px!important;padding:0 5px!important;border-radius:99px!important;background:var(--theme-soft,#f7e8ec)!important;color:var(--theme-deep,#733a49)!important;font-size:9px!important}
html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkVideoPanel,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkMessages,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkForm,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkFeedback,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkPrivateProfilePanel,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkFeedControls,html body[data-current-view="book_talk"] #bookClubTalkApp.has-private-chat #bookTalkCategoryForm{width:100%!important;max-width:100%!important;margin-left:0!important;box-sizing:border-box!important}

html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-panel{padding:clamp(16px,3vw,30px)!important;border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 34%,#fff)!important;border-radius:22px!important;background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.96) 0 2px,transparent 3px),radial-gradient(circle at 90% 16%,rgba(255,255,255,.9) 0 1px,transparent 2px),linear-gradient(145deg,#fff8fb 0%,#fff 48%,#fff3f8 100%)!important;background-size:88px 88px,112px 112px,auto!important;box-shadow:inset 0 0 0 6px rgba(255,255,255,.55),0 16px 40px rgba(76,27,48,.09)!important;scrollbar-color:color-mix(in srgb,var(--theme-base,#d86d83) 55%,#fff) transparent}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-hero{gap:clamp(16px,3vw,27px)!important;padding:2px 5px 22px!important;border-bottom:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 26%,#fff)!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-avatar{flex-basis:clamp(104px,17vw,154px)!important;width:clamp(104px,17vw,154px)!important;height:clamp(104px,17vw,154px)!important;border:5px solid color-mix(in srgb,var(--theme-base,#d86d83) 66%,#fff)!important;box-shadow:0 12px 30px rgba(94,37,62,.17)!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-kicker{font-size:clamp(10px,1.5vw,13px)!important;letter-spacing:.22em!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-heading h3{font-size:clamp(28px,5vw,45px)!important;color:#291723!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-role{padding:7px 14px!important;background:#fdeaf2!important;color:#9d2f5d!important;font-size:12px!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-meta{margin:17px 7px 0!important;color:#46333d!important;font-size:clamp(12px,2vw,16px)!important;font-weight:850!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-about{margin-top:20px!important;padding:clamp(17px,3vw,25px)!important;border-color:color-mix(in srgb,var(--theme-base,#d86d83) 25%,#fff)!important;border-radius:20px!important;background:rgba(255,255,255,.88)!important;box-shadow:0 8px 22px rgba(83,34,55,.04)!important}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-about h4{font-size:16px!important}.book-talk-private-reading-section{display:grid;gap:13px;margin-top:22px}.book-talk-private-reading-title{display:grid;grid-template-columns:minmax(18px,1fr) auto minmax(18px,1fr);align-items:center;gap:clamp(8px,2vw,19px)}.book-talk-private-reading-title>span{height:2px;border-radius:99px;background:linear-gradient(90deg,transparent,var(--theme-base,#d86d83))}.book-talk-private-reading-title>span:last-child{background:linear-gradient(90deg,var(--theme-base,#d86d83),transparent)}.book-talk-private-reading-title h4{margin:0;color:var(--theme-base,#d86d83);font-family:"Brush Script MT","Segoe Script",cursive;font-size:clamp(25px,4.5vw,39px);font-weight:700;line-height:1;text-align:center}.book-talk-private-author-grid,.book-talk-private-book-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(5px,1.2vw,13px);min-width:0}.book-talk-private-author-card,.book-talk-private-book-card{display:grid;align-content:start;gap:6px;min-width:0;text-align:center}.book-talk-private-choice-media{position:relative;display:grid;place-items:center;width:100%;overflow:hidden;border:2px solid color-mix(in srgb,var(--theme-base,#d86d83) 40%,#fff);background:linear-gradient(145deg,#fff,#fcecf3);color:var(--theme-deep,#733a49);box-shadow:0 5px 15px rgba(83,28,52,.08)}.book-talk-private-choice-media img{position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.book-talk-private-choice-media.author-media{aspect-ratio:4/5;border-radius:12px;font-size:clamp(18px,4vw,32px);font-weight:950}.book-talk-private-choice-media.book-media{aspect-ratio:2/3;border-radius:10px}.book-talk-private-author-card strong,.book-talk-private-book-card strong{min-width:0;color:#2c1d25;font-size:clamp(8px,1.5vw,12px);line-height:1.25;overflow-wrap:anywhere}.book-talk-private-book-card small{color:var(--muted);font-size:clamp(7px,1.2vw,10px);line-height:1.2;overflow-wrap:anywhere}.book-talk-private-book-rank{position:absolute;z-index:3;top:4px;left:4px;display:grid;place-items:center;width:clamp(17px,3vw,24px);height:clamp(17px,3vw,24px);border:2px solid #fff;border-radius:50%;background:var(--theme-base,#d86d83);color:#fff;font-size:9px;font-weight:950;box-shadow:0 3px 8px rgba(61,20,39,.2)}.book-talk-private-book-placeholder{font-size:clamp(16px,4vw,29px)}.book-talk-private-author-card.is-empty,.book-talk-private-book-card.is-empty{opacity:.54}.book-talk-private-author-grid.is-loading .book-talk-private-choice-media,.book-talk-private-book-grid.is-loading .book-talk-private-choice-media{animation:readingProfilePulse 1.2s ease-in-out infinite alternate}@keyframes readingProfilePulse{from{opacity:.46}to{opacity:.9}}

/* COURTREADZ 8.1.350 — isolate Private Profile gallery painting while scrolling. */
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-author-card,
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-book-card{contain:layout paint style;content-visibility:auto;contain-intrinsic-size:auto 210px}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-choice-media{contain:layout paint;isolation:isolate}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-choice-media img{backface-visibility:hidden;will-change:auto}

/* COURTREADZ 8.1.358 — centred confirmation for destructive × controls. */
.courthreadz-remove-confirm[hidden]{display:none!important}
.courthreadz-remove-confirm{position:fixed!important;inset:0!important;z-index:2147483646!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;width:100vw!important;height:100vh!important;height:100dvh!important;padding:16px!important;background:rgba(27,16,22,.58)!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important}
.courthreadz-remove-confirm-card{display:grid!important;justify-items:center!important;box-sizing:border-box!important;width:min(390px,calc(100vw - 32px))!important;max-width:100%!important;margin:0!important;padding:22px!important;gap:9px!important;border:1px solid rgba(var(--theme-rgb,216,109,131),.35)!important;border-radius:18px!important;background:linear-gradient(180deg,#fff 0,#fff8fa 100%)!important;color:var(--ink,#35262d)!important;text-align:center!important;box-shadow:0 24px 70px rgba(31,17,24,.34)!important}
.courthreadz-remove-confirm-icon{display:grid!important;place-items:center!important;width:46px!important;height:46px!important;border-radius:14px!important;background:#fff0f3!important;color:#b52d47!important;font:900 28px/1 Arial,sans-serif!important}
.courthreadz-remove-confirm-card h2{margin:2px 0 0!important;font-size:20px!important;line-height:1.2!important;text-align:center!important}
.courthreadz-remove-confirm-card p{max-width:100%!important;margin:0!important;color:var(--muted,#78646d)!important;font-size:12px!important;line-height:1.45!important;text-align:center!important;white-space:normal!important;overflow-wrap:anywhere!important}
.courthreadz-remove-confirm-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important;margin-top:7px!important}
.courthreadz-remove-confirm-actions button{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:42px!important;margin:0!important;padding:9px 12px!important;border-radius:11px!important;text-align:center!important;transform:none!important}
body.courthreadz-remove-confirm-open{overflow:hidden!important}
@media(max-width:480px){.courthreadz-remove-confirm{padding:12px!important}.courthreadz-remove-confirm-card{width:calc(100vw - 24px)!important;padding:18px 14px!important;border-radius:16px!important}}

/* COURTREADZ 8.1.359 — polished removal confirmation design. */
.courthreadz-remove-confirm{background:radial-gradient(circle at 50% 38%,rgba(var(--theme-rgb,216,109,131),.26),transparent 38%),rgba(28,15,22,.64)!important}
.courthreadz-remove-confirm-card{display:block!important;width:min(410px,calc(100vw - 32px))!important;padding:0!important;gap:0!important;border:1px solid rgba(255,255,255,.72)!important;border-radius:22px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 28px 90px rgba(24,10,17,.42),0 0 0 1px rgba(var(--theme-rgb,216,109,131),.16)!important;animation:courthreadzRemoveConfirmIn .18s ease-out both!important}
.courthreadz-remove-confirm-hero{position:relative!important;display:grid!important;justify-items:center!important;box-sizing:border-box!important;width:100%!important;padding:22px 20px 18px!important;overflow:hidden!important;background:linear-gradient(145deg,var(--theme-pale,#fff0f3) 0,#ffe2e9 54%,#fff7fa 100%)!important;border-bottom:1px solid rgba(var(--theme-rgb,216,109,131),.2)!important;text-align:center!important}
.courthreadz-remove-confirm-shine{position:absolute!important;inset:-45px -25px auto auto!important;width:150px!important;height:150px!important;border-radius:50%!important;background:radial-gradient(circle,rgba(255,255,255,.85),rgba(255,255,255,0) 68%)!important;pointer-events:none!important}
.courthreadz-remove-confirm-icon{position:relative!important;z-index:1!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;width:56px!important;height:56px!important;margin:0 0 9px!important;border:1px solid rgba(179,45,71,.18)!important;border-radius:18px!important;background:linear-gradient(180deg,#fff,#fff6f8)!important;color:#b52d47!important;box-shadow:0 10px 24px rgba(152,43,67,.14)!important;font:inherit!important}
.courthreadz-remove-confirm-icon svg{display:block!important;width:27px!important;height:27px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.courthreadz-remove-confirm-eyebrow{position:relative!important;z-index:1!important;display:block!important;margin:0 0 4px!important;color:var(--theme-dark,#b84f68)!important;font-size:9px!important;font-weight:950!important;letter-spacing:.18em!important;line-height:1!important;text-transform:uppercase!important}
.courthreadz-remove-confirm-card .courthreadz-remove-confirm-hero h2{position:relative!important;z-index:1!important;margin:0!important;color:#482d38!important;font-size:22px!important;font-weight:950!important;letter-spacing:-.02em!important;line-height:1.15!important}
.courthreadz-remove-confirm-content{display:grid!important;justify-items:center!important;box-sizing:border-box!important;width:100%!important;padding:18px 20px 20px!important;gap:12px!important;background:linear-gradient(180deg,#fff,#fffafb)!important;text-align:center!important}
.courthreadz-remove-confirm-card .courthreadz-remove-confirm-content>p#courthreadzRemoveConfirmMessage{width:100%!important;max-width:330px!important;margin:0!important;color:#4d3942!important;font-size:13px!important;font-weight:750!important;line-height:1.5!important;text-align:center!important}
.courthreadz-remove-confirm-warning{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:auto!important;max-width:100%!important;margin:0!important;padding:7px 10px!important;border:1px solid #f0d7dd!important;border-radius:999px!important;background:#fff7f9!important;color:#8d5260!important;font-size:10px!important;font-weight:850!important;line-height:1.2!important;text-align:center!important}
.courthreadz-remove-confirm-warning>span{display:grid!important;place-items:center!important;flex:0 0 17px!important;width:17px!important;height:17px!important;border-radius:50%!important;background:#b52d47!important;color:#fff!important;font-size:11px!important;font-weight:950!important;line-height:1!important}
.courthreadz-remove-confirm-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;width:100%!important;gap:9px!important;margin:2px 0 0!important}
.courthreadz-remove-confirm-actions button{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;max-height:44px!important;margin:0!important;padding:8px 12px!important;border-radius:12px!important;font-family:inherit!important;font-size:11px!important;font-weight:950!important;line-height:1!important;white-space:nowrap!important;box-shadow:none!important;transform:none!important}
.courthreadz-remove-confirm-actions [data-remove-confirm-cancel]{border:1px solid #dfd2d7!important;background:#fff!important;color:#69535d!important}
.courthreadz-remove-confirm-actions [data-remove-confirm-cancel]:hover,.courthreadz-remove-confirm-actions [data-remove-confirm-cancel]:focus-visible{border-color:var(--theme-border,#ddbfc7)!important;background:#fff7f9!important;color:#4c343e!important;outline:none!important;box-shadow:0 0 0 3px rgba(var(--theme-rgb,216,109,131),.1)!important}
.courthreadz-remove-confirm-actions [data-remove-confirm-submit]{border:1px solid #a82a43!important;background:linear-gradient(180deg,#c63d59,#ac2843)!important;color:#fff!important;box-shadow:0 7px 16px rgba(155,37,63,.2)!important}
.courthreadz-remove-confirm-actions [data-remove-confirm-submit]:hover,.courthreadz-remove-confirm-actions [data-remove-confirm-submit]:focus-visible{border-color:#922039!important;background:linear-gradient(180deg,#b8324d,#982139)!important;color:#fff!important;outline:none!important;box-shadow:0 7px 18px rgba(135,29,52,.25),0 0 0 3px rgba(181,45,71,.13)!important}
@keyframes courthreadzRemoveConfirmIn{from{opacity:0;transform:translateY(8px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:480px){.courthreadz-remove-confirm-card{width:calc(100vw - 24px)!important;border-radius:19px!important}.courthreadz-remove-confirm-hero{padding:18px 14px 15px!important}.courthreadz-remove-confirm-content{padding:15px 14px 16px!important}.courthreadz-remove-confirm-icon{width:52px!important;height:52px!important;border-radius:16px!important}.courthreadz-remove-confirm-actions{grid-template-columns:1fr 1.12fr!important;gap:7px!important}.courthreadz-remove-confirm-actions button{padding-inline:8px!important;font-size:10px!important}}
@media(prefers-reduced-motion:reduce){.courthreadz-remove-confirm-card{animation:none!important}}

@media(max-width:760px){
    .reading-profile-form{padding:14px;gap:18px;border-radius:15px}.reading-author-editor-grid,.reading-book-editor-grid{grid-template-columns:1fr}.reading-profile-save{justify-self:stretch;width:100%}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions{justify-self:end!important;justify-content:flex-end!important;flex-wrap:wrap!important;width:auto!important;margin-left:0!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-button{height:34px!important;min-height:34px!important;padding:4px 6px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions .book-talk-private-view-button>span:first-child{flex-basis:22px!important;width:22px!important;height:22px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions>#bookTalkMembersToggle.book-talk-members-button{height:34px!important;min-height:34px!important;max-height:34px!important;padding:4px 6px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-panel{margin-top:4px!important;padding:15px 12px 20px!important;border-radius:17px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-hero{gap:13px!important;padding:0 2px 15px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-avatar{flex-basis:88px!important;width:88px!important;height:88px!important;border-width:3px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-heading h3{font-size:25px!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-kicker{font-size:9px!important;letter-spacing:.16em!important}
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-private-profile-about{padding:15px!important;border-radius:15px!important}
    .book-talk-private-reading-section{margin-top:19px;gap:10px}.book-talk-private-reading-title h4{font-size:27px}.book-talk-private-author-grid,.book-talk-private-book-grid{gap:5px}.book-talk-private-choice-media{border-width:1px}.book-talk-private-author-card,.book-talk-private-book-card{gap:4px}
}
@media(prefers-reduced-motion:reduce){.book-talk-private-author-grid.is-loading .book-talk-private-choice-media,.book-talk-private-book-grid.is-loading .book-talk-private-choice-media{animation:none}}

/* COURTREADZ 8.1.254 — store posts use the same compact panel width as
   COURTREADZ posts instead of stretching across an under-filled row. */
@media(min-width:761px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed.book-talk-store-feed>.book-talk-feed-column{
        flex:0 1 320px!important;
        width:320px!important;
        max-width:320px!important;
    }
}

/* COURTREADZ 8.1.255 — keep store media and purchasing controls inside
   their compact Feed post panel at every content size. */
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed :where(.book-talk-feed-post,.book-talk-media-strip,.book-talk-media-gallery,.book-talk-media-gallery-tile,.book-talk-media-card,.book-sale-card,.book-sale-card-prices,.book-sale-card-actions){
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed :where(.book-talk-feed-post,.book-talk-media-strip,.book-talk-media-gallery,.book-talk-media-gallery-tile,.book-talk-media-card,.book-sale-card){
    overflow:hidden!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed :where(.book-talk-media-thumb-image,.book-talk-media-thumb-video,.book-talk-media-card img,.book-talk-media-card video){
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:100%!important;
    max-height:100%!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed .book-sale-card{
    margin-right:0!important;
    margin-left:0!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed .book-sale-card-actions>*{
    box-sizing:border-box!important;
    flex:1 1 120px!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-store-feed .book-sale-card-prices>*{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
}

/* COURTREADZ 8.1.69 — hard desktop viewport anchor. A narrow or zoomed
   desktop browser keeps the complete authentication card at the exact page
   midpoint instead of inheriting the phone's top/left resting geometry. */
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{
    position:fixed!important;
    inset:0!important;
    box-sizing:border-box!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    height:100vh!important;
    min-height:100vh!important;
    max-height:100vh!important;
    overflow:hidden!important;
}
@supports(height:100dvh){
    html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
    }
}

/* Incoming Book Club Feed Private Video Chat controls must always own the
   clickable top layer, including above presence toasts and mobile navigation. */
html.app-document body .book-talk-call-invite:not([hidden]){
    position:fixed!important;
    z-index:2147483647!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    isolation:isolate!important;
    touch-action:manipulation!important;
}
html.app-document body .book-talk-call-invite:not([hidden]) .book-talk-call-invite-copy{
    position:relative!important;
    z-index:1!important;
    pointer-events:none!important;
}
html.app-document body .book-talk-call-invite:not([hidden]) .book-talk-call-invite-actions{
    position:relative!important;
    z-index:3!important;
    pointer-events:auto!important;
}
html.app-document body .book-talk-call-invite:not([hidden]) .book-talk-call-invite-actions > button{
    position:relative!important;
    z-index:4!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
    -webkit-user-select:none!important;
    user-select:none!important;
    cursor:pointer!important;
}
html.app-document body .book-talk-call-invite:not([hidden]) .book-talk-call-invite-actions > button::before,
html.app-document body .book-talk-call-invite:not([hidden]) .book-talk-call-invite-actions > button::after{
    pointer-events:none!important;
}
@media(max-width:760px){
    html.app-document body .book-talk-call-invite:not([hidden]){
        top:max(8px,env(safe-area-inset-top,0px))!important;
    }
}

/* COURTREADZ 8.1.136 — final Members & Admins layout.
   One natural page flow replaces the older fixed-height/nested-scroll layouts.
   Account identity and controls use explicit grids so no item can overlap. */
html body[data-current-view="members"] .content,
html body[data-current-view="members"] .members-grid.members-page-stack,
html body[data-current-view="members"] .members-page-stack > .panel,
html body[data-current-view="members"] .registered-accounts-panel,
html body[data-current-view="members"] .registered-accounts-panel *{
    min-width:0;
    box-sizing:border-box;
}
html body[data-current-view="members"] .members-grid.members-page-stack{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    align-content:start!important;
    gap:16px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
html body[data-current-view="members"] .members-page-stack > .panel{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
    border-color:color-mix(in srgb,var(--theme-border,#ddbfc7) 48%,#ddd)!important;
    background:#fff!important;
    box-shadow:0 12px 30px rgba(55,32,42,.07)!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid .field,
html body[data-current-view="members"] .create-account-panel .form-grid .span-2{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid .span-2{
    grid-column:1/-1!important;
}
html body[data-current-view="members"] .create-account-panel input,
html body[data-current-view="members"] .create-account-panel select,
html body[data-current-view="members"] .create-account-panel button{
    width:100%!important;
    max-width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:0!important;
}
html body[data-current-view="members"] .registered-accounts-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    flex-wrap:wrap!important;
    gap:10px 14px!important;
    margin-bottom:14px!important;
}
html body[data-current-view="members"] .registered-accounts-head > div{
    flex:1 1 260px!important;
}
html body[data-current-view="members"] .registered-account-count{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    min-height:32px!important;
    padding:6px 11px!important;
    border:1px solid #e5d9dd!important;
    border-radius:999px!important;
    background:#f7f4f5!important;
    color:#5f4e55!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
}
html body[data-current-view="members"] .account-search-box{
    width:100%!important;
    margin:0 0 12px!important;
}
html body[data-current-view="members"] .account-search-box input{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-height:46px!important;
    padding:10px 13px!important;
    border-color:#ddd3d7!important;
    background:#fff!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-list{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:10px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
    scrollbar-gutter:auto!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-row{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(280px,.82fr) minmax(520px,1.18fr)!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:13px!important;
    overflow:visible!important;
    contain:none!important;
    border:1px solid #e7dfe2!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 3px 12px rgba(59,37,46,.04)!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-identity{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    align-items:center!important;
    gap:11px!important;
    width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-identity .avatar{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    margin:0!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-summary{
    display:grid!important;
    gap:4px!important;
    width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-name-line{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px 8px!important;
    width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-name-line > strong{
    display:block!important;
    flex:1 1 150px!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:13px!important;
    line-height:1.3!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-presence{
    flex:0 0 auto!important;
    margin:0!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-meta-line,
html body[data-current-view="members"] .registered-accounts-panel .account-subscription-renewal{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    line-height:1.4!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions{
    display:grid!important;
    grid-template-columns:minmax(176px,1fr) auto minmax(230px,1.15fr) auto!important;
    align-items:end!important;
    justify-content:stretch!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions > *,
html body[data-current-view="members"] .registered-accounts-panel .member-actions > form,
html body[data-current-view="members"] .registered-accounts-panel .member-actions > label{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-control{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"type-label type-status" "type-select type-select"!important;
    align-items:center!important;
    gap:5px 8px!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-control > span{
    grid-area:type-label!important;
    white-space:normal!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-select{
    grid-area:type-select!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    padding:7px 30px 7px 10px!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-save-status{
    grid-area:type-status!important;
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:96px!important;
    min-height:12px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    text-align:right!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions form{
    display:grid!important;
    align-items:end!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0!important;
    padding:8px 11px!important;
    white-space:nowrap!important;
}
html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
    display:grid!important;
    grid-template-columns:minmax(118px,1fr) auto!important;
    align-items:end!important;
    gap:7px!important;
    width:100%!important;
    max-width:none!important;
}
html body[data-current-view="members"] .registered-accounts-panel .password-reset-form input{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0!important;
    padding:8px 10px!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-protected-label{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:8px 11px!important;
    border:1px solid #e5d9dd!important;
    border-radius:10px!important;
    background:#f7f4f5!important;
    color:#69575e!important;
    font-size:10px!important;
    font-weight:900!important;
    text-align:center!important;
}

@media(max-width:1450px){
    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        grid-template-columns:minmax(0,1fr)!important;
        align-items:stretch!important;
    }
}
@media(max-width:1200px){
    html body[data-current-view="members"] .create-account-panel .form-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media(max-width:980px){
    html body[data-current-view="members"] .registered-accounts-panel .member-actions{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        align-items:stretch!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control,
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-column:1/-1!important;
        width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > form:not(.password-reset-form) button,
    html body[data-current-view="members"] .registered-accounts-panel .account-protected-label{
        width:100%!important;
    }
}
@media(max-width:760px){
    html body[data-current-view="members"] .workspace{
        padding-left:max(8px,env(safe-area-inset-left))!important;
        padding-right:max(8px,env(safe-area-inset-right))!important;
        overflow-x:hidden!important;
    }
    html body[data-current-view="members"] .members-grid.members-page-stack{
        gap:10px!important;
    }
    html body[data-current-view="members"] .members-page-stack > .panel{
        display:block!important;
        padding:13px!important;
    }
    html body[data-current-view="members"] .create-account-panel .form-grid{
        grid-template-columns:minmax(0,1fr)!important;
        gap:9px!important;
    }
    html body[data-current-view="members"] .create-account-panel .form-grid .span-2{
        grid-column:auto!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-list{
        gap:8px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        grid-template-columns:minmax(0,1fr)!important;
        gap:11px!important;
        padding:10px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-name-line > strong{
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions{
        grid-template-columns:minmax(0,1fr)!important;
        gap:7px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > *,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > form,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > label,
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control,
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-column:auto!important;
        width:100%!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control{
        grid-template-columns:minmax(0,1fr) auto!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-template-columns:minmax(0,1fr) auto!important;
    }
}
@media(max-width:420px){
    html body[data-current-view="members"] .registered-accounts-head{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
    }
    html body[data-current-view="members"] .registered-account-count{
        justify-self:start!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-identity{
        grid-template-columns:38px minmax(0,1fr)!important;
        gap:8px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-identity .avatar{
        width:38px!important;
        height:38px!important;
        min-width:38px!important;
        max-width:38px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-template-columns:minmax(0,1fr)!important;
    }
}
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
    position:fixed!important;
    inset:auto!important;
    left:50vw!important;
    right:auto!important;
    top:50vh!important;
    bottom:auto!important;
    box-sizing:border-box!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    height:auto!important;
    margin:0!important;
    transform:translate3d(-50%,-50%,0)!important;
    transform-origin:center center!important;
    overflow:visible!important;
}
@supports(height:100dvh){
    html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,
    html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        top:50dvh!important;
    }
}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group > .login-panel,
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel{
    position:relative!important;
    inset:auto!important;
    box-sizing:border-box!important;
    width:calc(100vw - 10px)!important;
    min-width:0!important;
    max-width:calc(100vw - 10px)!important;
    height:auto!important;
    max-height:calc(100vh - 16px)!important;
    margin:0 auto!important;
    overflow:hidden!important;
    transform:none!important;
}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group > .login-panel > .login-box,
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel > .login-box{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc(100vh - 16px)!important;
    margin:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}
@supports(height:100dvh){
    html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group > .login-panel,
    html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel,
    html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group > .login-panel > .login-box,
    html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel > .login-box{
        max-height:calc(100dvh - 16px)!important;
    }
}

/* Admin Live Mapping */
.live-mapping-workspace .content{max-width:none!important;width:100%!important}.live-map-shell{display:grid;gap:12px}.live-map-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(111,79,88,.12);border-radius:18px;background:#fff;box-shadow:0 10px 28px rgba(91,31,48,.06)}.live-map-head h2{margin:0 0 4px;font-size:25px}.live-map-head p{margin:0;max-width:760px;color:var(--muted);font-size:12px}.live-map-status{display:grid;grid-template-columns:auto auto;align-items:center;gap:2px 7px;min-width:150px;padding:9px 11px;border:1px solid rgba(40,165,111,.15);border-radius:13px;background:#f7fff9}.live-map-status strong{font-size:11px;color:#257449}.live-map-status small{grid-column:2;color:#789080;font-size:9px}.live-map-pulse{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:#2eaa61;box-shadow:0 0 0 0 rgba(46,170,97,.28);animation:liveMapPulse 1.6s infinite}@keyframes liveMapPulse{70%{box-shadow:0 0 0 8px rgba(46,170,97,0)}100%{box-shadow:0 0 0 0 rgba(46,170,97,0)}}.live-map-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.live-map-stats article{padding:12px 14px;border:1px solid rgba(111,79,88,.11);border-radius:15px;background:#fff}.live-map-stats span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.live-map-stats strong{display:block;margin-top:2px;font-size:27px}.live-map-layout{display:grid;grid-template-columns:minmax(380px,.9fr) minmax(500px,1.35fr);gap:12px}.live-map-panel{min-width:0;padding:14px;border:1px solid rgba(111,79,88,.12);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(91,31,48,.05)}.live-map-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.live-map-panel-head h3{margin:0;font-size:16px}.live-map-panel-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.live-map-zones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.live-map-zone{min-height:90px;padding:10px;border:1px solid rgba(111,79,88,.12);border-radius:14px;background:#fffafb}.live-map-zone.has-users{border-color:rgba(46,170,97,.24)}.live-map-zone-head{display:flex;justify-content:space-between;gap:8px}.live-map-zone-head strong{font-size:11px}.live-map-zone-count{min-width:23px;height:23px;display:grid;place-items:center;border-radius:999px;background:#f2e7eb;font-size:10px;font-weight:900}.live-map-zone.has-users .live-map-zone-count{background:#e8faef;color:#267748}.live-map-zone-users{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.live-map-zone-user{max-width:100%;padding:4px 7px;border-radius:999px;background:#f5eef1;font-size:9px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-map-zone-user.admin{background:#fff0f1;color:#b32636}.live-map-users-head{align-items:center}.live-map-tools{display:flex;gap:6px;flex-wrap:wrap}.live-map-tools input,.live-map-tools select{height:32px!important;min-height:32px!important;padding:5px 8px!important;border-radius:9px!important;font-size:10px!important}.live-map-tools input{width:205px}.live-map-tools select{width:112px}.live-map-user-list{display:grid;gap:7px;max-height:510px;overflow:auto;scrollbar-gutter:stable}.live-map-user-card{border:1px solid rgba(111,79,88,.12);border-radius:14px;background:#fff;overflow:hidden}.live-map-user-card.is-online{border-color:rgba(46,170,97,.22)}.live-map-user-toggle{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border:0!important;border-radius:0!important;background:transparent!important;color:var(--ink)!important;text-align:left;box-shadow:none!important;transform:none!important}.live-map-user-toggle:hover,.live-map-user-toggle:focus,.live-map-user-toggle:active{transform:none!important;background:#fffafb!important}.live-map-user-dot{width:9px;height:9px;border-radius:50%;background:#b8b1b5}.live-map-user-card.is-online .live-map-user-dot{background:#2eaa61;box-shadow:0 0 0 4px rgba(46,170,97,.09)}.live-map-user-main{min-width:0}.live-map-user-main strong,.live-map-user-main small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-map-user-main strong{font-size:11px}.live-map-user-main small{margin-top:2px;color:var(--muted);font-size:9px}.live-map-user-side{text-align:right}.live-map-user-side b,.live-map-user-side small{display:block}.live-map-user-side b{font-size:9px}.live-map-user-side small{font-size:8px;color:var(--muted)}.live-map-chevron{display:inline-block;margin-left:5px;transition:transform .12s}.live-map-user-toggle[aria-expanded=true] .live-map-chevron{transform:rotate(180deg)}.live-map-user-details{padding:0 11px 11px;border-top:1px solid rgba(111,79,88,.09)}.live-map-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px}.live-map-detail{padding:7px 8px;border-radius:9px;background:#faf6f7}.live-map-detail span{display:block;color:#9b7a83;font-size:8px;font-weight:850;text-transform:uppercase}.live-map-detail b{display:block;margin-top:2px;font-size:9px;overflow-wrap:anywhere}.live-map-detail.wide{grid-column:1/-1}.live-map-role{display:inline-block;margin-left:5px;padding:2px 5px;border-radius:999px;background:#f2e8ec;font-size:7px;font-weight:900;text-transform:uppercase}.live-map-role.admin{background:#fff0f1;color:#b32636}.live-map-feed{display:grid;gap:5px;max-height:260px;overflow:auto;scrollbar-gutter:stable}.live-map-feed-item{display:grid;grid-template-columns:72px minmax(150px,.65fr) minmax(220px,1fr) minmax(120px,.5fr);gap:8px;align-items:center;padding:7px 8px;border-bottom:1px solid rgba(111,79,88,.07);font-size:9px}.live-map-feed-time{color:#9a7c84}.live-map-feed-user,.live-map-feed-action{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-map-feed-user{font-weight:850}.live-map-feed-area{justify-self:end;padding:3px 6px;border-radius:999px;background:#f5eef1;font-weight:800}.live-map-empty{padding:24px 12px;text-align:center;color:var(--muted);font-size:10px}
@media(max-width:1150px){.live-map-layout{grid-template-columns:1fr}.live-map-zones{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.live-map-head{align-items:flex-start;flex-direction:column}.live-map-status{width:100%}.live-map-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.live-map-zones{grid-template-columns:repeat(2,minmax(0,1fr))}.live-map-users-head{align-items:stretch;flex-direction:column}.live-map-tools input,.live-map-tools select{width:100%}.live-map-detail-grid{grid-template-columns:1fr}.live-map-detail.wide{grid-column:auto}.live-map-feed-item{grid-template-columns:64px minmax(0,1fr)}.live-map-feed-action,.live-map-feed-area{grid-column:2}.live-map-feed-area{justify-self:start}}


/* POLISHED X / CLOSE / REMOVE CONTROLS ----------------------------------
   One consistent visual system for compact × controls. Geometry is fixed in
   every state so these buttons never jump, grow or shift surrounding content. */
.close-button,
.reader-close,
#bookTalkEmojiClose{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
    max-height:34px!important;
    padding:0!important;
    border:1px solid rgba(111,79,88,.16)!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,#ffffff 0%,#fbf4f6 100%)!important;
    color:#684a53!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:20px!important;
    font-weight:700!important;
    line-height:1!important;
    text-align:center!important;
    box-shadow:0 3px 9px rgba(86,48,59,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
    cursor:pointer!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease!important;
}
.close-button:hover,
.close-button:focus,
.reader-close:hover,
.reader-close:focus,
#bookTalkEmojiClose:hover,
#bookTalkEmojiClose:focus{
    background:linear-gradient(180deg,#fff6f8 0%,#f8e7ec 100%)!important;
    border-color:rgba(190,78,105,.38)!important;
    color:#9b314c!important;
    box-shadow:0 4px 11px rgba(125,52,72,.12),0 0 0 3px rgba(216,109,131,.08)!important;
    outline:none!important;
    transform:none!important;
}
.close-button:active,
.reader-close:active,
#bookTalkEmojiClose:active{
    background:#f5e2e8!important;
    border-color:rgba(174,65,91,.42)!important;
    color:#82263d!important;
    box-shadow:inset 0 1px 3px rgba(92,39,53,.12)!important;
    transform:none!important;
}

.book-talk-feed-remove,
.book-talk-reply-delete,
.book-talk-delete,
.announcement-remove,
.stream-chat-delete,
.stream-recording-remove,
.book-talk-category-card-remove{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    width:28px!important;
    min-width:28px!important;
    max-width:28px!important;
    height:28px!important;
    min-height:28px!important;
    max-height:28px!important;
    padding:0!important;
    border:1px solid rgba(185,47,71,.22)!important;
    border-radius:9px!important;
    background:linear-gradient(180deg,#fffafa 0%,#fff0f3 100%)!important;
    color:#b52d47!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:17px!important;
    font-weight:800!important;
    line-height:1!important;
    text-align:center!important;
    box-shadow:0 2px 6px rgba(143,39,59,.08)!important;
    cursor:pointer!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease!important;
}
.book-talk-feed-remove:hover,
.book-talk-feed-remove:focus,
.book-talk-reply-delete:hover,
.book-talk-reply-delete:focus,
.book-talk-delete:hover,
.book-talk-delete:focus,
.announcement-remove:hover,
.announcement-remove:focus,
.stream-chat-delete:hover,
.stream-chat-delete:focus,
.stream-recording-remove:hover,
.stream-recording-remove:focus,
.book-talk-category-card-remove:hover,
.book-talk-category-card-remove:focus{
    background:#b82f49!important;
    border-color:#a92740!important;
    color:#fff!important;
    box-shadow:0 4px 10px rgba(154,40,62,.18),0 0 0 3px rgba(184,47,73,.08)!important;
    outline:none!important;
    transform:none!important;
}
.book-talk-feed-remove:active,
.book-talk-reply-delete:active,
.book-talk-delete:active,
.announcement-remove:active,
.stream-chat-delete:active,
.stream-recording-remove:active,
.book-talk-category-card-remove:active{
    background:#96243b!important;
    border-color:#842033!important;
    color:#fff!important;
    box-shadow:inset 0 1px 3px rgba(76,14,29,.22)!important;
    transform:none!important;
}

/* Tiny category-chip × remains compact but uses the same polished language. */
.book-talk-category-chip .cat-remove{
    box-sizing:border-box!important;
    display:grid!important;
    place-items:center!important;
    width:19px!important;
    min-width:19px!important;
    height:19px!important;
    min-height:19px!important;
    margin-right:-5px!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.32)!important;
    border-radius:7px!important;
    background:rgba(255,255,255,.20)!important;
    color:inherit!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:13px!important;
    font-weight:800!important;
    line-height:1!important;
    box-shadow:none!important;
    transform:none!important;
}
.book-talk-category-chip .cat-remove:hover,
.book-talk-category-chip .cat-remove:focus{
    background:#fff!important;
    border-color:rgba(185,47,71,.26)!important;
    color:#b52d47!important;
    outline:none!important;
    transform:none!important;
}

/* Keep positioned feed/reply × controls in their existing locations. */
.book-talk-reply-delete{right:1px!important;top:3px!important;position:absolute!important;}
.book-talk-delete{right:0!important;top:-3px!important;position:absolute!important;}

@media(max-width:760px){
    .close-button,.reader-close,#bookTalkEmojiClose{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;}
}


/* BOOK CLUB FEED — MATCH REPLY TEXT TO MAIN FEED ----------------------- */
.book-talk-reply-meta strong{
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:900!important;
    color:var(--ink)!important;
}
.book-talk-reply-meta time{
    font-size:9.5px!important;
    line-height:1.2!important;
    font-weight:650!important;
    color:var(--muted)!important;
}
.book-talk-reply-text{
    font-size:13px!important;
    line-height:1.45!important;
    font-weight:400!important;
    color:var(--ink)!important;
}
.book-talk-reply-actions button{
    font-size:13px!important;
    font-weight:850!important;
    min-height:30px!important;
    height:30px!important;
    padding:4px 7px!important;
}
.book-talk-reply-copy>.book-talk-reaction-row .book-talk-reaction-pill{
    font-size:12px!important;
}
.book-talk-reply-copy>.book-talk-reaction-row .book-talk-reaction-pill small{
    font-size:9px!important;
    font-weight:900!important;
}
@media(max-width:760px){
    .book-talk-reply-meta strong{font-size:12.5px!important}
    .book-talk-reply-text{font-size:12.5px!important}
    .book-talk-reply-actions button{font-size:12px!important}
}


/* CLUB BOOK FEED — REPLIES USE EXACT MAIN-FEED TYPOGRAPHY ------------ */
.book-talk-reply,
.book-talk-reply-copy,
.book-talk-reply-meta,
.book-talk-reply-text,
.book-talk-reply-actions,
.book-talk-reply-actions button,
.book-talk-reply-copy>.book-talk-reaction-row,
.book-talk-reply-copy>.book-talk-reaction-row button{
    font-family:inherit!important;
}
.book-talk-reply-meta strong{
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:700!important;
    letter-spacing:normal!important;
}
.book-talk-reply-meta time{
    font-size:9.5px!important;
    line-height:1.2!important;
    font-weight:400!important;
    letter-spacing:normal!important;
}
.book-talk-reply-text{
    font-size:13px!important;
    line-height:1.45!important;
    font-weight:400!important;
    letter-spacing:normal!important;
}
.book-talk-reply-actions button{
    font-size:13px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:normal!important;
}
.book-talk-reply-copy>.book-talk-reaction-row .book-talk-reaction-pill{
    font-size:12px!important;
    line-height:1!important;
}
.book-talk-reply-copy>.book-talk-reaction-row .book-talk-reaction-pill small{
    font-size:9px!important;
    font-weight:900!important;
    line-height:1!important;
}
/* Do not shrink reply typography on phones; match the feed exactly. */
@media(max-width:760px){
    .book-talk-reply-meta strong{font-size:13px!important}
    .book-talk-reply-meta time{font-size:9.5px!important}
    .book-talk-reply-text{font-size:13px!important}
    .book-talk-reply-actions button{font-size:13px!important}
}


/* CLUB BOOK FEED — WIDER STATIC POST CARD GRID ------------------------ */
@media(min-width:761px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        display:grid!important;
        grid-template-columns:repeat(auto-fill,minmax(500px,620px))!important;
        grid-auto-flow:row!important;
        align-content:start!important;
        align-items:flex-start!important;
        justify-content:start!important;
        gap:12px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post{
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        display:flex!important;
        flex-direction:column!important;
        overflow:visible!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post-head{
        flex:0 0 auto!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-body{
        flex:0 0 auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post>.book-talk-reaction-row{
        flex:0 0 auto!important;
        max-height:none!important;
        overflow:visible!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-actions{
        flex:0 0 auto!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-thread:not([hidden]){
        flex:0 0 auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-thread,
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply,
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-copy{
        overflow:visible!important;
        max-height:none!important;
        scrollbar-width:none!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-thread::-webkit-scrollbar,
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply::-webkit-scrollbar,
    html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-copy::-webkit-scrollbar{
        display:none!important;
        width:0!important;
        height:0!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-category-hub,
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-empty,
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-loading{
        grid-column:1/-1!important;
        width:100%!important;
        max-width:none!important;
    }
}

/* COURTREADZ 8.1.24 — Admin controls for Login card colour and white glow. */
body .admin-settings-workspace .login-card-colour-setting,
body .admin-settings-workspace .login-card-glow-setting{
    padding:7px!important;
    border:1px solid #f0d7de!important;
    border-radius:9px!important;
    background:#fffafb!important;
}
body .admin-settings-workspace .login-card-colour-row,
body .admin-settings-workspace .login-card-glow-row{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
}
body .admin-settings-workspace .login-card-colour-row input[type="color"]{
    flex:0 0 38px!important;
    width:38px!important;
    min-width:38px!important;
    height:30px!important;
    min-height:30px!important;
    padding:2px!important;
    border-radius:7px!important;
    cursor:pointer!important;
}
body .admin-settings-workspace .login-card-colour-row output,
body .admin-settings-workspace .login-card-glow-row output{
    flex:0 0 58px!important;
    min-height:30px!important;
    padding:5px 7px!important;
    border:1px solid #eed8de!important;
    border-radius:7px!important;
    background:#fff!important;
    color:#704b57!important;
    font:800 9.5px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace!important;
    text-align:center!important;
}
body .admin-settings-workspace .login-card-glow-row input[type="range"]{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:30px!important;
    padding:0!important;
    accent-color:var(--theme,#d86d83)!important;
}
body .admin-settings-workspace .login-card-colour-setting p,
body .admin-settings-workspace .login-card-glow-setting p{
    margin:3px 0 0!important;
    color:var(--muted)!important;
    font-size:8.8px!important;
    line-height:1.25!important;
}

@media(min-width:761px) and (max-width:1250px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        grid-template-columns:minmax(0,620px)!important;
    }
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        display:flex!important;
        flex-direction:column!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-feed-post{
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
    }
}


/* BOOK CLUB FEED — ONE SCROLLING POST VIEWPORT / NO CARD OVERLAP ------- */
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
    min-height:0!important;
    height:100%!important;
    max-height:100%!important;
    overflow-y:scroll!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    align-content:start!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed::-webkit-scrollbar{
    width:9px!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed::-webkit-scrollbar-track{
    background:transparent!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed::-webkit-scrollbar-thumb{
    background:var(--theme-border,#dcbec7)!important;
    border-radius:999px!important;
    border:2px solid transparent!important;
    background-clip:padding-box!important;
}
@media(min-width:761px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        grid-auto-rows:max-content!important;
        grid-auto-flow:row!important;
        align-items:start!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post{
        position:relative!important;
        align-self:flex-start!important;
        justify-self:stretch!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:hidden!important;
        isolation:isolate!important;
        contain:layout!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post .book-talk-thread,
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post .book-talk-reply,
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post .book-talk-reply-copy{
        position:relative!important;
        max-height:none!important;
        overflow:visible!important;
    }
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        overflow-y:auto!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post{
        position:relative!important;
        flex:0 0 auto!important;
        overflow:hidden!important;
        isolation:isolate!important;
    }
}

/* COURTREADZ 8.1.249 — compact ordered Feed rows with tighter vertical spacing.
   Fixed-width panels span the full right workspace without becoming wider. */
@media(min-width:761px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        display:flex!important;
        flex-flow:row wrap!important;
        align-items:flex-start!important;
        align-content:flex-start!important;
        justify-content:space-between!important;
        box-sizing:border-box!important;
        width:100%!important;
        max-width:none!important;
        column-gap:3px!important;
        row-gap:1px!important;
        padding-right:0!important;
        padding-left:0!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post{
        position:relative!important;
        inset:auto!important;
        flex:0 1 320px!important;
        order:0!important;
        width:320px!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        align-self:flex-start!important;
        margin:0!important;
        grid-row:auto!important;
        float:none!important;
        transform:none!important;
        overflow:hidden!important;
        contain:paint style!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post>*{
        box-sizing:border-box!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-category-hub{
        display:flex!important;
        flex-flow:row wrap!important;
        align-items:stretch!important;
        align-content:flex-start!important;
        justify-content:space-between!important;
        box-sizing:border-box!important;
        width:100%!important;
        max-width:none!important;
        column-gap:3px!important;
        row-gap:1px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-category-hub>.book-talk-category-card{
        position:relative!important;
        inset:auto!important;
        box-sizing:border-box!important;
        flex:0 1 220px!important;
        order:0!important;
        width:220px!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        align-self:stretch!important;
        margin:0!important;
        float:none!important;
        transform:none!important;
        overflow:hidden!important;
    }
}
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post-head,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-author,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-thread,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-copy,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-media-strip,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-shared-book{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
}
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-author strong,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-author small,
html body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-meta{
    min-width:0!important;
    flex-wrap:wrap!important;
    overflow-wrap:anywhere!important;
}
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:auto!important;
    min-width:0!important;
}
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-action{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-form{
    grid-template-columns:30px minmax(0,1fr) 34px auto!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
}
@media(max-width:760px){
    html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-reply-form{
        grid-template-columns:26px minmax(0,1fr) 34px auto!important;
        gap:5px!important;
    }
}

/* source-style-71 */
/* Admin recording cards: dedicated full Delete Recording action.
   This is intentionally more specific than the shared 28x28 delete/X rules. */
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button{
    position:static!important;
    inset:auto!important;
    z-index:auto!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;

    width:calc(100% - 24px)!important;
    min-width:0!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    max-height:none!important;
    margin:0 12px 12px!important;
    padding:9px 14px!important;

    border:1.5px solid #d9415d!important;
    border-radius:12px!important;
    background:linear-gradient(180deg,#fff5f7 0%,#ffe8ed 100%)!important;
    color:#a91f3b!important;

    font-family:inherit!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.1!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    text-align:center!important;

    box-shadow:
        0 4px 12px rgba(169,31,59,.10),
        inset 0 1px 0 rgba(255,255,255,.92)!important;
    cursor:pointer!important;
    opacity:1!important;
    transform:none!important;
    translate:none!important;
    scale:none!important;
    backdrop-filter:none!important;
    transition:
        background .16s ease,
        border-color .16s ease,
        color .16s ease,
        box-shadow .16s ease!important;
}
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button::before,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button::before{
    content:"🗑";
    display:inline-block;
    flex:0 0 auto;
    font-size:14px;
    line-height:1;
    filter:saturate(.85);
}
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:hover,
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:focus-visible,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:hover,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:focus-visible{
    border-color:#b92243!important;
    background:linear-gradient(180deg,#d93657 0%,#b92243 100%)!important;
    color:#fff!important;
    box-shadow:
        0 7px 16px rgba(169,31,59,.22),
        0 0 0 3px rgba(217,54,87,.12)!important;
    outline:none!important;
    transform:none!important;
}
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:active,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:active{
    background:#991b35!important;
    border-color:#89162e!important;
    color:#fff!important;
    box-shadow:inset 0 2px 5px rgba(70,6,22,.22)!important;
}
#recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:disabled,
.admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button:disabled{
    border-color:#df9baa!important;
    background:#f8e8ec!important;
    color:#9d6471!important;
    box-shadow:none!important;
    cursor:wait!important;
    opacity:.78!important;
}
@media(max-width:760px){
    #recordingsDialog .admin-recordings-dialog-panel .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button,
    .admin-stream-recordings .stream-recording-card > button.stream-recording-remove.stream-recording-delete-button{
        width:calc(100% - 20px)!important;
        height:44px!important;
        min-height:44px!important;
        margin:0 10px 10px!important;
        font-size:12.5px!important;
    }
}


/* PERF 8.0.4 website-theme-static */
html,body{background:var(--theme-page)!important;}
.workspace,.content{background:transparent;}
.sidebar{
    background:linear-gradient(180deg,var(--theme-sidebar) 0%,var(--theme-sidebar-soft) 100%)!important;
    border-color:rgba(var(--theme-rgb),.24)!important;
}
.nav a.active,.mobile-menu a.active{
    background:var(--theme-deep)!important;
    color:#fff!important;
    box-shadow:inset 3px 0 0 var(--theme),0 8px 18px rgba(var(--theme-rgb),.14)!important;
}
.nav a:hover,.mobile-menu a:hover{background:rgba(255,255,255,.10)!important;}
.panel,.topbar{
    background:var(--theme-surface)!important;
    border-color:var(--theme-border)!important;
    box-shadow:0 10px 26px rgba(var(--theme-rgb),.075)!important;
}
.primary,.library-view-button.active,.install-app-button{
    background:var(--theme)!important;
    color:var(--theme-on)!important;
    border-color:var(--theme)!important;
}
.primary:hover,.library-view-button.active:hover,.install-app-button:hover{
    background:var(--theme-dark)!important;
    color:var(--theme-on)!important;
}
.secondary{
    background:var(--theme-soft)!important;
    color:var(--theme-deep)!important;
}
.secondary:hover{background:var(--theme-muted-surface)!important;color:var(--theme-deep)!important;}
.ghost-button{background:var(--theme-pale)!important;color:var(--theme-deep)!important;}
.ghost-button:hover{background:var(--theme-soft)!important;}
.field input,.field textarea,.field select,.search-box input,.member-actions input,.page-editor-item textarea{
    border-color:var(--theme-border)!important;
}
.field input:focus,.field textarea:focus,.field select:focus,.search-box input:focus,.member-actions input:focus,.page-editor-item textarea:focus{
    border-color:var(--theme)!important;
    box-shadow:0 0 0 3px rgba(var(--theme-rgb),.15)!important;
}
input[type="checkbox"],input[type="radio"],input[type="range"]{accent-color:var(--theme)!important;}
.activity-item,.member-row,.viewer-pill,.settings-media-card,.settings-subscription-box{
    border-color:var(--theme-border)!important;
    background:var(--theme-surface)!important;
}
.stat:before{background:var(--theme)!important;}
.tag{background:var(--theme-soft)!important;color:var(--theme-deep)!important;}
.library-view-controls{border-color:var(--theme-border)!important;background:var(--theme-surface)!important;}
.library-view-button:hover{background:var(--theme-soft)!important;color:var(--theme-deep)!important;}
.avatar{background:var(--theme-soft)!important;color:var(--theme-deep)!important;}
.stream-notice{background:var(--theme-soft)!important;color:var(--theme-deep)!important;}
.login-page{background:var(--theme-page)!important;}
.login-panel{background:var(--theme-surface)!important;}
.login-box{border-color:var(--theme-border)!important;box-shadow:0 22px 50px rgba(var(--theme-rgb),.12)!important;}
.login-box .field input{border-color:var(--theme-border)!important;}
.login-box .primary{background:var(--theme)!important;color:var(--theme-on)!important;}
a{--theme-link:var(--theme-dark);}
.workspace a:not(.primary):not(.secondary):not(.ghost-button):not(.danger-button):not(.nav a):not(.mobile-menu a){color:var(--theme-link);}
::selection{background:var(--theme-soft);color:var(--theme-deep);}
*::-webkit-scrollbar-thumb{background:var(--theme-border)!important;}

/* Website theme must also own the complete left navigation panel. These selectors
   intentionally beat the older sidebar first-paint lock that used fixed pink/black values. */
html body .app-shell > aside.sidebar,
html body .app-shell > aside.sidebar.sidebar-stable{
    background:linear-gradient(180deg,var(--theme-sidebar) 0%,var(--theme-sidebar-soft) 100%)!important;
    border-right-color:rgba(var(--theme-rgb),.34)!important;
    box-shadow:6px 0 22px rgba(var(--theme-rgb),.16)!important;
}
html body .app-shell > aside.sidebar .side-brand,
html body .app-shell > aside.sidebar .role-chip,
html body .app-shell > aside.sidebar .user-card,
html body .app-shell > aside.sidebar .sidebar-subscription-renewal,
html body .app-shell > aside.sidebar .member-sidebar-recordings{
    background:rgba(255,255,255,.105)!important;
    border-color:rgba(255,255,255,.19)!important;
}
html body .app-shell > aside.sidebar .nav a,
html body .app-shell > aside.sidebar .nav a.nav-pressed{
    background:rgba(255,255,255,.075)!important;
    border-color:rgba(255,255,255,.13)!important;
    color:rgba(255,255,255,.94)!important;
}
html body .app-shell > aside.sidebar .nav a:not(.active):hover,
html body .app-shell > aside.sidebar .nav a:not(.active):focus,
html body .app-shell > aside.sidebar .nav a:not(.active):active,
html body .app-shell > aside.sidebar .nav a.nav-pressed:not(.active){
    background:rgba(255,255,255,.14)!important;
    border-color:rgba(255,255,255,.22)!important;
    color:#fff!important;
}
html body .app-shell > aside.sidebar .nav a.active,
html body .app-shell > aside.sidebar .nav a.active:hover,
html body .app-shell > aside.sidebar .nav a.active:focus,
html body .app-shell > aside.sidebar .nav a.active:active{
    background:#fff!important;
    border-color:#fff!important;
    color:var(--theme-deep)!important;
    box-shadow:0 5px 14px rgba(var(--theme-rgb),.20)!important;
}
html body .app-shell > aside.sidebar .nav a.active::before{background:var(--theme)!important;}
html body .app-shell > aside.sidebar .nav a.active .nav-icon,
html body .app-shell > aside.sidebar .nav a.active:hover .nav-icon,
html body .app-shell > aside.sidebar .nav a.active:focus .nav-icon,
html body .app-shell > aside.sidebar .nav a.active:active .nav-icon{
    background:var(--theme-soft)!important;
    color:var(--theme-deep)!important;
}
html body .app-shell > aside.sidebar .logout-form button:hover{
    background:#fff!important;
    border-color:#fff!important;
    color:var(--theme-deep)!important;
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar,
    html body.stream-mobile-page .app-shell > aside.sidebar{
        background:linear-gradient(135deg,var(--theme-sidebar),var(--theme-sidebar-soft))!important;
        border-color:rgba(var(--theme-rgb),.30)!important;
        box-shadow:0 4px 14px rgba(var(--theme-rgb),.16)!important;
    }
    html body .app-shell > aside.sidebar .mobile-menu>a.active,
    html body .app-shell > aside.sidebar .mobile-recordings-toggle[aria-expanded="true"]{
        background:#fff!important;
        border-color:#fff!important;
        color:var(--theme-deep)!important;
    }
}

/* COURTREADZ 8.1.242 — permanent Raffle and Podcasts videos navigation icons. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a[href*="view=raffle"] .raffle-ticket-icon::before,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a[href*="view=podcasts_videos"] .podcasts-videos-nav-icon::before{
        content:""!important;
        display:block!important;
        width:21px!important;
        height:21px!important;
        background:currentColor!important;
        -webkit-mask-repeat:no-repeat!important;
        mask-repeat:no-repeat!important;
        -webkit-mask-position:center!important;
        mask-position:center!important;
        -webkit-mask-size:21px 21px!important;
        mask-size:21px 21px!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a[href*="view=raffle"] .raffle-ticket-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v4a3 3 0 0 0 0 6v4H4v-4a3 3 0 0 0 0-6V5Z'/%3E%3Cpath d='M12 5v2m0 3v2m0 3v4'/%3E%3C/svg%3E")!important;
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v4a3 3 0 0 0 0 6v4H4v-4a3 3 0 0 0 0-6V5Z'/%3E%3Cpath d='M12 5v2m0 3v2m0 3v4'/%3E%3C/svg%3E")!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a[href*="view=podcasts_videos"] .podcasts-videos-nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E")!important;
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E")!important;
    }
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu .mobile-feature-nav-icon{
        display:block!important;
        flex:0 0 19px!important;
        width:19px!important;
        min-width:19px!important;
        height:19px!important;
        min-height:19px!important;
        background:currentColor!important;
        -webkit-mask-repeat:no-repeat!important;
        mask-repeat:no-repeat!important;
        -webkit-mask-position:center!important;
        mask-position:center!important;
        -webkit-mask-size:19px 19px!important;
        mask-size:19px 19px!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu .raffle-mobile-ticket{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v4a3 3 0 0 0 0 6v4H4v-4a3 3 0 0 0 0-6V5Z'/%3E%3Cpath d='M12 5v2m0 3v2m0 3v4'/%3E%3C/svg%3E")!important;
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v4a3 3 0 0 0 0 6v4H4v-4a3 3 0 0 0 0-6V5Z'/%3E%3Cpath d='M12 5v2m0 3v2m0 3v4'/%3E%3C/svg%3E")!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu .podcasts-mobile-icon{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E")!important;
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E")!important;
    }
}


/* PERF 8.0.4 stream-chatbox-static */
#rtcStreamApp .stream-chat-panel,
#rtcStreamApp .member-viewer-panel .stream-chat-panel,
#rtcStreamApp .admin-viewer-panel .stream-chat-panel{
    background:var(--stream-chatbox-color)!important;
    background-color:var(--stream-chatbox-color)!important;
    color:var(--stream-chatbox-text)!important;
}
#rtcStreamApp .stream-chat-head,
#rtcStreamApp .stream-chat-messages,
#rtcStreamApp .stream-chat-form,
#rtcStreamApp .stream-chat-feedback,
#rtcStreamApp .member-viewer-panel .stream-chat-head,
#rtcStreamApp .member-viewer-panel .stream-chat-messages,
#rtcStreamApp .member-viewer-panel .stream-chat-form,
#rtcStreamApp .member-viewer-panel .stream-chat-feedback,
#rtcStreamApp .admin-viewer-panel .stream-chat-head,
#rtcStreamApp .admin-viewer-panel .stream-chat-messages,
#rtcStreamApp .admin-viewer-panel .stream-chat-form,
#rtcStreamApp .admin-viewer-panel .stream-chat-feedback{
    background:var(--stream-chatbox-color)!important;
    background-color:var(--stream-chatbox-color)!important;
    color:var(--stream-chatbox-text)!important;
    border-color:var(--stream-chatbox-border)!important;
}
#rtcStreamApp .stream-chat-message,
#rtcStreamApp .stream-chat-message.mine,
#rtcStreamApp .stream-chat-message.admin-message,
#rtcStreamApp .stream-chat-message:nth-child(even),
#rtcStreamApp .member-viewer-panel .stream-chat-message,
#rtcStreamApp .member-viewer-panel .stream-chat-message.mine,
#rtcStreamApp .member-viewer-panel .stream-chat-message.admin-message,
#rtcStreamApp .member-viewer-panel .stream-chat-message:nth-child(even),
#rtcStreamApp .admin-viewer-panel .stream-chat-message,
#rtcStreamApp .admin-viewer-panel .stream-chat-message.mine,
#rtcStreamApp .admin-viewer-panel .stream-chat-message.admin-message{
    background:var(--stream-chatbox-surface)!important;
    background-color:var(--stream-chatbox-surface)!important;
    color:var(--stream-chatbox-text)!important;
    border-color:var(--stream-chatbox-border)!important;
}
#rtcStreamApp .stream-chat-message-line,
#rtcStreamApp .stream-chat-message-name,
#rtcStreamApp .stream-chat-message-separator,
#rtcStreamApp .stream-chat-message-text,
#rtcStreamApp .stream-chat-message-head strong,
#rtcStreamApp .stream-chat-message-head time,
#rtcStreamApp .stream-chat-empty,
#rtcStreamApp .stream-chat-feedback{
    color:var(--stream-chatbox-text)!important;
}
#rtcStreamApp .stream-chat-form input,
#rtcStreamApp .member-viewer-panel .stream-chat-form input,
#rtcStreamApp .admin-viewer-panel .stream-chat-form input{
    background:var(--stream-chatbox-input)!important;
    background-color:var(--stream-chatbox-input)!important;
    color:var(--stream-chatbox-text)!important;
    border-color:var(--stream-chatbox-border)!important;
    caret-color:var(--stream-chatbox-text)!important;
}
#rtcStreamApp .stream-chat-form input::placeholder{color:var(--stream-chatbox-text)!important;opacity:.65!important;}
#rtcStreamApp .stream-chat-form button,
#rtcStreamApp .member-viewer-panel .stream-chat-form button,
#rtcStreamApp .admin-viewer-panel .stream-chat-form button{
    background:var(--stream-chatbox-button)!important;
    background-color:var(--stream-chatbox-button)!important;
    color:var(--stream-chatbox-button-text)!important;
    border-color:var(--stream-chatbox-border)!important;
}
#rtcStreamApp .stream-chat-form button:hover{
    filter:brightness(.94)!important;
    background:var(--stream-chatbox-button)!important;
    color:var(--stream-chatbox-button-text)!important;
}
.admin-settings-workspace .stream-chatbox-colour-setting{
    padding:9px 10px!important;
    border:1px solid #f0d7de;
    border-radius:11px;
    background:#fffafb;
}
.admin-settings-workspace .stream-chatbox-colour-row{display:flex;align-items:center;gap:9px;}
.admin-settings-workspace .stream-chatbox-colour-row input[type="color"]{
    flex:0 0 50px!important;width:50px!important;height:38px!important;min-height:38px!important;
    padding:3px!important;border-radius:9px!important;cursor:pointer;
}
.admin-settings-workspace .stream-chatbox-colour-row output{
    min-width:78px;padding:7px 9px;border:1px solid #eed8de;border-radius:8px;background:#fff;color:#704b57;
    font:800 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;text-align:center;
}
.admin-settings-workspace .stream-chatbox-colour-setting p{
    margin:3px 0 0!important;color:var(--muted);font-size:10.5px!important;line-height:1.3!important;
}
@media(min-width:761px){
    .admin-settings-workspace .settings-core-grid{
        grid-template-columns:minmax(145px,.48fr) minmax(230px,.9fr) repeat(3,minmax(150px,.52fr))!important;
    }
}
@media(max-width:1280px) and (min-width:761px){
    .admin-settings-workspace .settings-core-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* Registration Terms & Conditions — v8.0.8 */
.registration-terms{
    margin:4px 0 2px;
    border:1px solid rgba(168,83,105,.28);
    border-radius:12px;
    background:rgba(255,255,255,.92);
    overflow:hidden;
}
.registration-terms>summary{
    cursor:pointer;
    padding:11px 13px;
    color:#7e344a;
    font-size:12px;
    font-weight:900;
    list-style-position:inside;
    user-select:none;
}
.registration-terms[open]>summary{border-bottom:1px solid rgba(168,83,105,.18)}
.registration-terms-scroll{
    max-height:300px;
    overflow:auto;
    padding:13px 14px 16px;
    color:#44383d;
    font-size:11px;
    line-height:1.5;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
}
.registration-terms-head{display:grid;gap:2px;margin-bottom:10px;color:#6c2f42}
.registration-terms-head strong{font-size:12px}
.registration-terms-head span{font-size:10px;color:#816f76}
.registration-terms-scroll h3{margin:13px 0 4px;font-size:11px;line-height:1.35;color:#6f3044}
.registration-terms-scroll p{margin:0 0 8px}
.registration-terms-accept{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin:10px 0 12px;
    padding:10px 11px;
    border:1px solid rgba(168,83,105,.24);
    border-radius:11px;
    background:rgba(255,248,250,.94);
    color:#4f4046;
    font-size:11px;
    line-height:1.4;
    font-weight:700;
    cursor:pointer;
}
.registration-terms-accept input{
    flex:0 0 auto;
    width:17px;
    height:17px;
    margin:0;
    accent-color:#c45e79;
}
@media(max-width:760px){
    .registration-terms-scroll{max-height:240px}
}

/* Registration agreement + prompt — v8.0.12 */
.registration-terms-agreement{
    margin:5px 0 8px;
    min-width:0;
}
.registration-terms-accept{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:8px 9px!important;
    border:1px solid rgba(168,83,105,.24)!important;
    border-radius:10px!important;
    background:rgba(255,248,250,.94)!important;
    color:#4f4046!important;
    font-size:11px!important;
    line-height:1.2!important;
    font-weight:700!important;
    cursor:pointer!important;
    box-sizing:border-box!important;
}
.registration-terms-accept input{
    flex:0 0 auto!important;
    width:16px!important;
    height:16px!important;
    margin:0!important;
    accent-color:#c45e79!important;
}
.registration-terms-accept>span{
    display:block!important;
    min-width:0!important;
    white-space:nowrap!important;
}
.registration-terms-link{
    display:inline!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    color:#9d3f5a!important;
    font:inherit!important;
    font-weight:900!important;
    line-height:inherit!important;
    text-decoration:underline!important;
    text-underline-offset:2px!important;
    cursor:pointer!important;
}
.registration-terms-link:hover,.registration-terms-link:focus-visible{
    color:#6f263d!important;
    text-decoration-thickness:2px!important;
}
body.registration-terms-open{overflow:hidden!important}
.registration-terms-dialog[hidden]{display:none!important}
.registration-terms-dialog{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    display:grid!important;
    place-items:center!important;
    padding:20px!important;
    box-sizing:border-box!important;
}
.registration-terms-backdrop{
    position:absolute!important;
    inset:0!important;
    background:rgba(25,14,19,.58)!important;
    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px)!important;
}
.registration-terms-dialog-card{
    position:relative!important;
    z-index:1!important;
    width:min(760px,calc(100vw - 40px))!important;
    max-height:calc(100dvh - 40px)!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    border:1px solid #e4c7d0!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 24px 80px rgba(35,15,22,.32)!important;
    outline:none!important;
}
.registration-terms-dialog-head{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    padding:14px 16px!important;
    border-bottom:1px solid #ead9df!important;
    background:#fff7f9!important;
}
.registration-terms-dialog-head>div{display:grid!important;gap:2px!important;min-width:0!important}
.registration-terms-dialog-head strong{font-size:14px!important;color:#6c2f42!important}
.registration-terms-dialog-head span{font-size:10px!important;color:#816f76!important}
.registration-terms-close{
    flex:0 0 auto!important;
    width:34px!important;
    height:34px!important;
    display:grid!important;
    place-items:center!important;
    padding:0!important;
    border:1px solid #dfc5cd!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#7f344b!important;
    font-size:22px!important;
    line-height:1!important;
    cursor:pointer!important;
}
.registration-terms-dialog .registration-terms-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:auto!important;
    padding:16px 18px!important;
    color:#44383d!important;
    font-size:11.5px!important;
    line-height:1.52!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
}
.registration-terms-dialog .registration-terms-head{display:none!important}
.registration-terms-dialog-actions{
    flex:0 0 auto!important;
    display:flex!important;
    justify-content:flex-end!important;
    padding:11px 14px!important;
    border-top:1px solid #ead9df!important;
    background:#fff!important;
}
.registration-terms-dialog-actions button{min-width:92px!important}
@media(max-width:760px){
    .registration-terms-accept{
        gap:5px!important;
        padding:7px 8px!important;
        font-size:clamp(8.6px,2.65vw,10.5px)!important;
    }
    .registration-terms-accept input{width:15px!important;height:15px!important}
    .registration-terms-dialog{padding:12px!important}
    .registration-terms-dialog-card{
        width:calc(100vw - 24px)!important;
        max-height:calc(100dvh - 24px)!important;
        border-radius:14px!important;
    }
    .registration-terms-dialog-head{padding:11px 12px!important}
    .registration-terms-dialog-head strong{font-size:12px!important}
    .registration-terms-dialog .registration-terms-scroll{padding:13px 14px!important;font-size:11px!important}
}

/* Registration Terms agreement checkbox — v8.0.18 direct visual state */
.registration-terms-agreement{
    display:grid!important;
    grid-template-columns:19px minmax(0,1fr)!important;
    align-items:center!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    margin:5px 0 8px!important;
    padding:8px 9px!important;
    border:1px solid rgba(168,83,105,.24)!important;
    border-radius:10px!important;
    background:rgba(255,248,250,.94)!important;
    box-sizing:border-box!important;
}
.registration-terms-check-control{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
    min-height:19px!important;
    margin:0!important;
    cursor:pointer!important;
    user-select:none!important;
    -webkit-tap-highlight-color:transparent!important;
}
.registration-terms-checkbox{
    position:absolute!important;
    inset:0!important;
    z-index:3!important;
    width:19px!important;
    height:19px!important;
    margin:0!important;
    padding:0!important;
    opacity:0!important;
    cursor:pointer!important;
}
.registration-terms-checkmark{
    position:relative!important;
    z-index:1!important;
    display:grid!important;
    place-items:center!important;
    width:19px!important;
    height:19px!important;
    box-sizing:border-box!important;
    border:2px solid var(--theme-dark,#b84f68)!important;
    border-radius:4px!important;
    background:#fff!important;
    color:transparent!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:14px!important;
    font-weight:900!important;
    line-height:1!important;
    box-shadow:0 1px 2px rgba(0,0,0,.10)!important;
    transition:background-color .1s ease,border-color .1s ease,color .1s ease,box-shadow .1s ease,transform .08s ease!important;
}
/* Two independent checked-state paths: native :checked and JS .is-checked. */
.registration-terms-checkbox:checked + .registration-terms-checkmark,
.registration-terms-check-control.is-checked .registration-terms-checkmark,
.registration-terms-check-control[data-checked="true"] .registration-terms-checkmark{
    background:var(--theme,#d86d83)!important;
    border-color:var(--theme-deep,#8b4658)!important;
    color:var(--theme-on,#fff)!important;
    box-shadow:inset 0 0 0 1px var(--theme-deep,#8b4658),0 0 0 3px rgba(var(--theme-rgb,216,109,131),.24)!important;
    transform:scale(1.06)!important;
}
.registration-terms-checkbox:focus-visible + .registration-terms-checkmark{
    outline:2px solid var(--theme-deep,#8b4658)!important;
    outline-offset:2px!important;
}
.registration-terms-checkbox:active + .registration-terms-checkmark{transform:scale(.94)!important;}
.registration-terms-copy{
    display:block!important;
    min-width:0!important;
    color:#4f4046!important;
    font-size:11px!important;
    line-height:1.2!important;
    font-weight:700!important;
    white-space:nowrap!important;
}
.registration-terms-copy label{
    display:inline!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    font:inherit!important;
    cursor:pointer!important;
}
#registrationSubmit:disabled{
    opacity:.5!important;
    cursor:not-allowed!important;
    filter:saturate(.65)!important;
    transform:none!important;
}
@media(max-width:760px){
    .registration-terms-agreement{grid-template-columns:18px minmax(0,1fr)!important;gap:5px!important;padding:7px 8px!important}
    .registration-terms-check-control,.registration-terms-checkbox,.registration-terms-checkmark{width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important}
    .registration-terms-checkmark{font-size:13px!important}
    .registration-terms-copy{font-size:clamp(8.6px,2.65vw,10.5px)!important}
}

/* source-style-47 — COURTREADZ email verification + Password Reset */
.password-reset-button{
    width:100%;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:9px;
    padding:10px 14px;
    border:1px solid color-mix(in srgb,var(--theme) 46%,#ffffff);
    border-radius:12px;
    background:#fff8fa;
    color:var(--theme-deep,#8b4658);
    text-decoration:none;
    font-size:12px;
    font-weight:850;
    box-sizing:border-box;
    transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.password-reset-button:hover,.password-reset-button:focus-visible{
    background:color-mix(in srgb,var(--theme) 10%,#ffffff);
    border-color:var(--theme,#d86d83);
    transform:translateY(-1px);
}
.password-reset-pane{width:100%}
.password-reset-heading{margin:0 0 20px}
.password-reset-heading h2{margin:0 0 7px!important;font-size:29px!important;color:#6b3443}
.password-reset-heading p{margin:0!important;color:#8f6a75;font-size:13px;line-height:1.55}
.auth-back-link{
    display:flex;
    justify-content:center;
    margin-top:15px;
    color:var(--theme-deep,#8b4658);
    font-size:12px;
    font-weight:850;
    text-decoration:none;
}
.auth-back-link:hover,.auth-back-link:focus-visible{text-decoration:underline}
.email-auth-notice{
    margin:8px 0 16px;
    padding:12px 13px;
    border:1px solid #efc7d0;
    border-radius:12px;
    background:#fff7f9;
    color:#7c4050;
    font-size:12px;
    line-height:1.5;
}
.email-auth-notice.error{border-color:#efb8c4;background:#fff0f3;color:#8d3048}

.settings-email-box{
    margin-top:14px;
    padding-top:2px;
}
.courthreadz-email-settings-card{
    margin-top:10px;
    padding:16px;
    border:1px solid color-mix(in srgb,var(--theme) 30%,#e8dfe2);
    border-radius:16px;
    background:linear-gradient(145deg,#fffdfd,#fff6f8);
    box-shadow:0 8px 24px rgba(89,48,60,.06);
}
.courthreadz-email-settings-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:13px;
}
.courthreadz-email-settings-head>div{display:grid;gap:2px;min-width:0}
.courthreadz-email-settings-head strong{color:#633443;font-size:14px;overflow-wrap:anywhere}
.courthreadz-email-settings-head small{color:var(--muted);font-size:10px}
.email-connection{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:5px 9px;
    border:1px solid #ead3da;
    border-radius:999px;
    background:#fff;
    color:#96717b;
    font-size:10px;
    font-weight:850;
    white-space:nowrap;
}
.email-connection.connected{border-color:#b8dcc5;background:#f3fff7;color:#39724d}
.courthreadz-email-server-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-bottom:13px;
}
.courthreadz-email-server-grid>div{
    min-width:0;
    display:grid;
    gap:3px;
    padding:10px 11px;
    border:1px solid #f0dce1;
    border-radius:11px;
    background:#fff;
}
.courthreadz-email-server-grid span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#9a7881}
.courthreadz-email-server-grid strong{font-size:11px;color:#633443;overflow-wrap:anywhere}
.courthreadz-email-password-field{margin:0!important}
.courthreadz-email-password-field p{margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.45}
.smtp-remove-password{
    display:flex;
    align-items:center;
    gap:7px;
    margin-top:10px;
    color:#815963;
    font-size:10px;
    font-weight:750;
}
.smtp-remove-password input{accent-color:var(--theme,#d86d83)}
.smtp-test-button{margin-top:12px}
@media(max-width:620px){
    .password-reset-heading h2{font-size:25px!important}
    .courthreadz-email-settings-card{padding:13px}
    .courthreadz-email-settings-head{display:grid}
    .email-connection{justify-self:start}
    .courthreadz-email-server-grid{grid-template-columns:1fr}
}

/* source-style-48 — pending registration verification resend */
.resend-verification-form{margin:0!important;padding:0!important}
button.resend-verification-button{
    appearance:none;
    -webkit-appearance:none;
    cursor:pointer;
    font-family:inherit;
}

/* COURTREADZ 8.0.27 — account Profile / Account Image */
.profile-page{display:flex;justify-content:flex-end;width:100%;min-height:100%;}
.profile-panel{width:min(720px,100%);align-self:flex-start;}
.profile-card{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:16px;}
.profile-image-preview{width:112px;height:112px;flex:0 0 112px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--theme-soft,#f7e8ec);color:var(--theme-deep,#733a49);border:3px solid color-mix(in srgb,var(--theme-base,#d86d83) 58%,#fff);font-size:34px;font-weight:950;box-shadow:0 8px 24px rgba(55,25,40,.10);}
.profile-image-preview img,.avatar.has-image img,.rtc-guest-account-avatar.has-image img,.book-talk-member-avatar.has-image img,.book-talk-feed-avatar.has-image img,.book-talk-reply-avatar.has-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;}
.profile-account-copy{min-width:0;display:grid;gap:4px;}
.profile-account-copy strong{font-size:20px;overflow-wrap:anywhere;}
.profile-account-copy span{color:var(--muted);overflow-wrap:anywhere;}
.profile-account-copy small{font-weight:800;color:var(--theme-deep,#733a49);}
.profile-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding-top:4px;}
.profile-image-field{margin:0!important;min-width:0;}
.profile-image-field input[type=file]{width:100%;background:#fff;}
.profile-image-field small{display:block;margin-top:6px;color:var(--muted);font-size:11px;}
.profile-remove-form{margin-top:10px;display:flex;justify-content:flex-end;}
.avatar.has-image,.rtc-guest-account-avatar.has-image,.book-talk-member-avatar.has-image,.book-talk-feed-avatar.has-image,.book-talk-reply-avatar.has-image{padding:0!important;overflow:hidden;background:var(--theme-soft,#f7e8ec)!important;color:transparent!important;}
.avatar.has-image{border-radius:50%!important;}
.rtc-guest-account-avatar.has-image{border-radius:50%!important;}
.book-talk-member-avatar.has-image,.book-talk-feed-avatar.has-image,.book-talk-reply-avatar.has-image{border-radius:50%!important;}
@media(max-width:760px){
  .profile-page{justify-content:stretch;}
  .profile-panel{width:100%;}
  .profile-card{gap:14px;padding:14px;}
  .profile-image-preview{width:88px;height:88px;flex-basis:88px;font-size:28px;}
  .profile-account-copy strong{font-size:17px;}
  .profile-upload-form{grid-template-columns:1fr;}
  .profile-upload-form .primary{width:100%;}
  .profile-remove-form .secondary{width:100%;}
}



/* COURTREADZ 8.0.30 — Member/Author Profile password change */
.profile-password-form{display:grid;gap:12px;margin:0 0 16px;padding:16px;border:1px solid var(--line);background:#fff;border-radius:16px}
.profile-section-heading{display:grid;gap:4px}.profile-section-heading strong{font-size:15px}.profile-section-heading small{color:var(--muted);font-size:11px;line-height:1.45}
.profile-password-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-password-grid .field:first-child{grid-column:1/-1}.profile-password-grid .field{margin:0!important}.profile-password-form>.primary{justify-self:start}
@media(max-width:620px){.profile-password-form{padding:13px;border-radius:14px}.profile-password-grid{grid-template-columns:1fr}.profile-password-grid .field:first-child{grid-column:auto}.profile-password-form>.primary{width:100%;justify-self:stretch}}

/* COURTREADZ Profile description + public Profile prompt */
.profile-description-form{display:grid;gap:10px;margin:0 0 16px;padding:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--theme-pale,#fff7f9) 56%,#fff);border-radius:16px}
.profile-description-field{margin:0!important}.profile-description-field textarea{width:100%;min-height:170px;resize:vertical;line-height:1.55;background:#fff;white-space:pre-wrap}.profile-description-field small{display:block;margin-top:6px;color:var(--muted);font-size:11px;line-height:1.45}.profile-description-form>.primary{justify-self:start}
.profile-avatar-trigger{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.profile-avatar-trigger:hover{transform:translateY(-1px);filter:saturate(1.04)}.profile-avatar-trigger:focus-visible{outline:3px solid color-mix(in srgb,var(--theme-base,#d86d83) 70%,#fff);outline-offset:3px}.profile-image-preview.profile-avatar-trigger:hover{box-shadow:0 11px 30px rgba(55,25,40,.16)}
html.public-profile-open{overflow:hidden}
.public-profile-overlay{position:fixed;inset:0;z-index:16000;display:grid;place-items:center;padding:20px;background:rgba(36,20,28,.52);backdrop-filter:blur(8px)}.public-profile-overlay[hidden]{display:none!important}
.public-profile-modal{position:relative;width:min(620px,calc(100vw - 28px));max-height:min(760px,calc(100dvh - 32px));overflow:auto;padding:26px;border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 32%,#fff);border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(36,20,28,.30);outline:none}
.public-profile-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--theme-pale,#fff7f9);color:var(--theme-deep,#733a49);font-size:25px;font-weight:800;cursor:pointer}.public-profile-close:hover{background:var(--theme-soft,#f7e8ec)}
.public-profile-hero{display:flex;align-items:center;gap:18px;padding:4px 46px 20px 0;border-bottom:1px solid var(--line)}.public-profile-avatar{width:116px;height:116px;flex:0 0 116px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--theme-soft,#f7e8ec);color:var(--theme-deep,#733a49);border:4px solid color-mix(in srgb,var(--theme-base,#d86d83) 55%,#fff);font-size:38px;font-weight:950;box-shadow:0 10px 28px rgba(55,25,40,.14)}.public-profile-avatar img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.public-profile-avatar.has-image{padding:0}.public-profile-heading{min-width:0;display:grid;gap:5px}.public-profile-kicker{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:var(--theme-deep,#733a49)}.public-profile-heading h2{margin:0;font-size:clamp(24px,4vw,34px);line-height:1.08;overflow-wrap:anywhere}.public-profile-role{justify-self:start;padding:5px 10px;border-radius:999px;background:var(--theme-soft,#f7e8ec);color:var(--theme-deep,#733a49);font-size:11px;font-weight:900}
.public-profile-meta{margin-top:15px;color:var(--muted);font-size:12px;font-weight:750}.public-profile-about{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--theme-pale,#fff7f9) 52%,#fff)}.public-profile-about h3{margin:0 0 9px;font-size:14px}.public-profile-about p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;color:var(--ink)}.public-profile-status{min-height:0;margin-top:10px;color:#a32642;font-size:12px;font-weight:800}.public-profile-status:empty{display:none}.public-profile-actions{display:flex;justify-content:flex-end;margin-top:18px}
@media(max-width:620px){.profile-description-form{padding:13px;border-radius:14px}.profile-description-form>.primary{justify-self:stretch}.public-profile-overlay{padding:10px;align-items:center}.public-profile-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:20px 16px 16px;border-radius:18px}.public-profile-hero{gap:13px;padding-right:38px}.public-profile-avatar{width:86px;height:86px;flex-basis:86px;font-size:29px;border-width:3px}.public-profile-heading h2{font-size:24px}.public-profile-about{padding:14px}.public-profile-actions>.primary{width:100%}}


/* COURTREADZ 8.0.45 — viewport-safe Terms dialog */
.registration-terms-dialog{
    position:fixed!important;
    top:max(12px,env(safe-area-inset-top))!important;
    right:max(12px,env(safe-area-inset-right))!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    left:max(12px,env(safe-area-inset-left))!important;
    width:auto!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
    transform:none!important;
}
.registration-terms-backdrop{
    position:fixed!important;
    inset:0!important;
}
.registration-terms-dialog-card{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:min(760px,100%)!important;
    max-width:760px!important;
    height:auto!important;
    max-height:100%!important;
    margin:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
}
.registration-terms-dialog .registration-terms-scroll{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
}
@media(max-width:760px){
    .registration-terms-dialog{
        top:max(8px,env(safe-area-inset-top))!important;
        right:max(8px,env(safe-area-inset-right))!important;
        bottom:max(8px,env(safe-area-inset-bottom))!important;
        left:max(8px,env(safe-area-inset-left))!important;
    }
    .registration-terms-dialog-card{
        width:100%!important;
        max-width:100%!important;
        max-height:100%!important;
        border-radius:14px!important;
    }
}
@media(max-height:520px){
    .registration-terms-dialog{
        top:max(6px,env(safe-area-inset-top))!important;
        right:max(6px,env(safe-area-inset-right))!important;
        bottom:max(6px,env(safe-area-inset-bottom))!important;
        left:max(6px,env(safe-area-inset-left))!important;
    }
    .registration-terms-dialog-head{padding:9px 11px!important;}
    .registration-terms-dialog .registration-terms-scroll{padding:10px 12px!important;}
    .registration-terms-dialog-actions{padding:8px 11px!important;}
}


/* Global interaction guard — 8.0.46 */
html,body{-webkit-touch-callout:none}
img,video,a{-webkit-user-drag:none!important;user-drag:none!important;-webkit-touch-callout:none}


/* Global page highlighting lock — 8.0.47 */
html,body,body *:not(input):not(textarea):not([contenteditable="true"]):not([contenteditable="plaintext-only"]){
    -webkit-user-select:none!important;
    -moz-user-select:none!important;
    -ms-user-select:none!important;
    user-select:none!important;
    -webkit-touch-callout:none!important;
}
input,textarea,[contenteditable="true"],[contenteditable="true"] *,[contenteditable="plaintext-only"],[contenteditable="plaintext-only"] *{
    -webkit-user-select:text;
    -moz-user-select:text;
    -ms-user-select:text;
    user-select:text;
}
::selection{background:transparent;color:inherit}
::-moz-selection{background:transparent;color:inherit}

/* COURTREADZ 8.0.61 — Mobile Private Chat viewport lock.
   The COURTREADZ header stays above the chat, the Members control stays at the
   bottom, and only the chat/message viewport flexes so Send is the bottom row. */
@media(max-width:760px){
    html body.book-talk-mobile-private-active{
        width:100%!important;
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
        overflow:hidden!important;
        overscroll-behavior:none!important;
    }
    html body.book-talk-mobile-private-active .app-shell{
        width:100%!important;
        height:100dvh!important;
        min-height:100dvh!important;
        overflow:hidden!important;
    }
    /* Keep the COURTREADZ Book Club mobile bar permanently above the chat. */
    html body.book-talk-mobile-private-active .app-shell > aside.sidebar{
        position:fixed!important;
        top:0!important;
        left:0!important;
        right:0!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        z-index:10000!important;
        transform:none!important;
    }
    html body.book-talk-mobile-private-active .book-talk-workspace.mobile-private-chat-fill{
        position:relative!important;
        width:100%!important;
        height:100dvh!important;
        min-height:0!important;
        max-height:100dvh!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
    }
    /* Lock Private Chat into the exact strip between the fixed top header and
       the fixed Book Club Members bar. */
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill{
        position:fixed!important;
        top:var(--book-talk-mobile-private-top,70px)!important;
        left:0!important;
        right:0!important;
        bottom:auto!important;
        width:100vw!important;
        max-width:100vw!important;
        height:var(--book-talk-mobile-private-height,calc(100dvh - 128px - env(safe-area-inset-bottom)))!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding:4px 6px 0!important;
        gap:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
        z-index:20!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill > .book-talk-chat-panel{
        order:1!important;
        display:flex!important;
        flex-direction:column!important;
        flex:1 1 auto!important;
        width:100%!important;
        height:100%!important;
        min-height:0!important;
        max-height:100%!important;
        margin:0!important;
        padding:10px 10px 0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill .book-talk-head,
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill .book-talk-video-panel,
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill .book-talk-feed-controls,
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill .book-talk-category-create{
        flex:0 0 auto!important;
    }
    /* This is the only section that grows/shrinks with the phone height. */
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill #bookTalkMessages.book-talk-messages{
        order:10!important;
        flex:1 1 0!important;
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding-top:8px!important;
        padding-bottom:8px!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
        overscroll-behavior:contain!important;
        box-sizing:border-box!important;
    }
    /* Feedback belongs above the composer. The composer is deliberately the
       final row, so its lower edge sits directly on the Members bar boundary. */
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill #bookTalkFeedback.book-talk-feedback{
        order:20!important;
        flex:0 0 auto!important;
        min-height:0!important;
        margin:0!important;
        padding:2px 0 3px!important;
    }
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill #bookTalkForm.book-talk-form.is-private{
        order:30!important;
        flex:0 0 auto!important;
        width:100%!important;
        margin:0!important;
        padding:7px 0 0!important;
        box-sizing:border-box!important;
    }
    /* Members remains the full-width bottom control/drawer. */
    html body.book-talk-mobile-private-active #bookClubTalkApp.mobile-private-chat-fill > .book-talk-members-panel{
        position:fixed!important;
        left:0!important;
        right:0!important;
        bottom:0!important;
        width:100vw!important;
        max-width:100vw!important;
        z-index:9200!important;
    }
}


/* COURTREADZ 8.0.62 — searchable Book Club Members drawer. */
.book-talk-members-search{
    flex:0 0 auto;
    display:grid;
    grid-template-columns:28px minmax(0,1fr) 30px;
    align-items:center;
    gap:6px;
    padding:9px 10px;
    border-bottom:1px solid var(--line);
    background:color-mix(in srgb,var(--theme-pale,#fff7f9) 82%,#fff 18%);
}
.book-talk-members-search-icon{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:9px;
    background:var(--theme-soft,#f7e8ec);
    color:var(--theme-deep,#733a49);
    font-size:18px;
    font-weight:900;
    line-height:1;
}
.book-talk-members-search input{
    width:100%;
    min-width:0;
    height:36px;
    margin:0;
    padding:7px 10px;
    border:1px solid var(--theme-border,#dcbec7);
    border-radius:10px;
    background:#fff;
    color:var(--ink);
    font:inherit;
    font-size:12px;
    font-weight:750;
    outline:none;
    box-sizing:border-box;
}
.book-talk-members-search input:focus{
    border-color:var(--theme-base,#d86d83);
    box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-base,#d86d83) 16%,transparent);
}
.book-talk-members-search-clear{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    min-width:30px;
    padding:0;
    border:1px solid var(--theme-border,#dcbec7);
    border-radius:9px;
    background:#fff;
    color:var(--theme-deep,#733a49);
    font-size:18px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
}
.book-talk-members-search-clear[hidden]{display:none!important}
@media(max-width:760px){
    html body[data-current-view="book_talk"] .book-talk-members-search{
        position:relative!important;
        z-index:3!important;
        grid-template-columns:28px minmax(0,1fr) 32px!important;
        gap:7px!important;
        padding:9px 10px!important;
        opacity:0!important;
        transform:translateY(8px)!important;
        pointer-events:none!important;
        background:var(--theme-surface,#fff)!important;
        transition:opacity .16s ease .04s,transform .22s ease!important;
    }
    html body[data-current-view="book_talk"] .book-talk-members-panel.mobile-members-open .book-talk-members-search{
        opacity:1!important;
        transform:translateY(0)!important;
        pointer-events:auto!important;
    }
    html body[data-current-view="book_talk"] .book-talk-members-search input{
        height:38px!important;
        font-size:13px!important;
        border-radius:11px!important;
    }
}


/* COURTREADZ 8.0.63 — Main Book Club Feed mobile viewport fill.
   The public Feed now uses the same measured top/bottom viewport boundaries as
   Private Chat. Only the posts viewport flexes; the Post composer is the final
   row directly above the fixed Book Club Members bar. */
@media(max-width:760px){
    html body.book-talk-mobile-feed-active{
        width:100%!important;
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
        overflow:hidden!important;
        overscroll-behavior:none!important;
    }
    html body.book-talk-mobile-feed-active .app-shell{
        width:100%!important;
        height:100dvh!important;
        min-height:100dvh!important;
        overflow:hidden!important;
    }
    html body.book-talk-mobile-feed-active .app-shell > aside.sidebar{
        position:fixed!important;
        top:0!important;
        left:0!important;
        right:0!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        z-index:10000!important;
        transform:none!important;
    }
    html body.book-talk-mobile-feed-active .book-talk-workspace.mobile-public-feed-fill{
        position:relative!important;
        width:100%!important;
        height:100dvh!important;
        min-height:0!important;
        max-height:100dvh!important;
        margin:0!important;
        padding:0!important;
        overflow:hidden!important;
    }
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill{
        position:fixed!important;
        top:var(--book-talk-mobile-private-top,70px)!important;
        left:0!important;
        right:0!important;
        bottom:auto!important;
        width:100vw!important;
        max-width:100vw!important;
        height:var(--book-talk-mobile-private-height,calc(100dvh - 128px - env(safe-area-inset-bottom)))!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding:4px 6px 0!important;
        gap:0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
        z-index:20!important;
    }
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill > .book-talk-chat-panel{
        order:1!important;
        display:flex!important;
        flex-direction:column!important;
        flex:1 1 auto!important;
        width:100%!important;
        height:100%!important;
        min-height:0!important;
        max-height:100%!important;
        margin:0!important;
        padding:10px 10px 0!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill .book-talk-head,
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill .book-talk-feed-controls,
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill .book-talk-category-create{
        flex:0 0 auto!important;
    }
    /* Only the Feed posts box consumes the remaining mobile height. */
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill #bookTalkMessages.book-talk-messages.book-talk-feed{
        order:10!important;
        flex:1 1 0!important;
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding-top:8px!important;
        padding-bottom:8px!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
        overscroll-behavior:contain!important;
        box-sizing:border-box!important;
    }
    /* Keep status above Post. Post is the bottom row and therefore rests on
       the top edge of the fixed Members bar. */
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill #bookTalkFeedback.book-talk-feedback{
        order:20!important;
        flex:0 0 auto!important;
        min-height:0!important;
        margin:0!important;
        padding:2px 0 3px!important;
    }
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill #bookTalkForm.book-talk-form.book-talk-feed-composer:not([hidden]){
        order:30!important;
        flex:0 0 auto!important;
        width:100%!important;
        margin:0!important;
        padding:7px 0 0!important;
        box-sizing:border-box!important;
    }
    html body.book-talk-mobile-feed-active #bookClubTalkApp.mobile-public-feed-fill > .book-talk-members-panel{
        position:fixed!important;
        left:0!important;
        right:0!important;
        bottom:0!important;
        width:100vw!important;
        max-width:100vw!important;
        z-index:9200!important;
    }
}

/* COURTREADZ 8.0.64 — Chat header title + controls on one line ---------------- */
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    min-width:0!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head > div:first-child{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    align-items:center!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkTitle{
    flex:1 1 auto!important;
    min-width:0!important;
    margin:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions{
    display:inline-flex!important;
    flex:0 0 auto!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    gap:6px!important;
    overflow:visible!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions > *{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:nowrap!important;
}

@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head{
        gap:5px!important;
        padding:4px 2px 7px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head > div:first-child{
        flex:1 1 0!important;
        overflow:hidden!important;
    }
    /* The helper sentence is hidden on phones so the Member/chat name and all
       four chat controls own one clean horizontal header row. */
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkSubtitle{
        display:none!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkTitle{
        font-size:clamp(13px,3.6vw,18px)!important;
        line-height:1.15!important;
        max-width:100%!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions{
        flex:0 0 auto!important;
        width:auto!important;
        gap:3px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions button,
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions span{
        width:auto!important;
        min-width:0!important;
        min-height:28px!important;
        padding:4px 6px!important;
        border-radius:8px!important;
        font-size:9px!important;
        line-height:1!important;
        white-space:nowrap!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-live-label{
        gap:4px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-live-label i{
        width:6px!important;
        height:6px!important;
        flex:0 0 6px!important;
        box-shadow:0 0 0 2px rgba(39,163,111,.12)!important;
    }
}

@media(max-width:430px){
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head{
        gap:3px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkTitle{
        font-size:12px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions{
        gap:2px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions button,
    html body[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head-actions span{
        min-height:26px!important;
        padding:3px 4px!important;
        font-size:8px!important;
    }
}


/* COURTREADZ 8.0.65 — Private Video Chat side-by-side + tap fullscreen ------- */
html body[data-current-view="book_talk"] .book-talk-video-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:8px!important;
    min-width:0!important;
}
html body[data-current-view="book_talk"] .book-talk-video-tile{
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:16/9!important;
    cursor:zoom-in!important;
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    outline-offset:2px;
}
html body[data-current-view="book_talk"] .book-talk-video-tile.is-video-fullscreen-active{
    cursor:zoom-out!important;
}
html body[data-current-view="book_talk"] .book-talk-video-tile:focus-visible{
    outline:3px solid var(--theme-base,#d86d83)!important;
}
html body[data-current-view="book_talk"] .book-talk-video-tile:fullscreen,
html body[data-current-view="book_talk"] .book-talk-video-tile:-webkit-full-screen{
    width:100vw!important;
    height:100vh!important;
    max-width:none!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    border:0!important;
    border-radius:0!important;
    background:#000!important;
}
html body[data-current-view="book_talk"] .book-talk-video-tile:fullscreen video,
html body[data-current-view="book_talk"] .book-talk-video-tile:-webkit-full-screen video{
    object-fit:contain!important;
    background:#000!important;
}
body.book-talk-video-fullscreen-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
}
body > .book-talk-video-tile.book-talk-video-tile-fallback-fullscreen{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    display:block!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    aspect-ratio:auto!important;
    border:0!important;
    border-radius:0!important;
    background:#000!important;
    cursor:zoom-out!important;
}
body > .book-talk-video-tile.book-talk-video-tile-fallback-fullscreen video{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    background:#000!important;
}
body > .book-talk-video-tile.book-talk-video-tile-fallback-fullscreen .book-talk-video-name{
    left:max(12px,env(safe-area-inset-left))!important;
    bottom:max(12px,env(safe-area-inset-bottom))!important;
    font-size:12px!important;
    padding:7px 10px!important;
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] .book-talk-video-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:6px!important;
    }
    html body[data-current-view="book_talk"] .book-talk-video-tile{
        height:auto!important;
        min-height:0!important;
        aspect-ratio:16/9!important;
        border-radius:9px!important;
    }
    html body[data-current-view="book_talk"] .book-talk-video-name{
        left:5px!important;
        bottom:5px!important;
        max-width:calc(100% - 10px)!important;
        padding:4px 6px!important;
        font-size:8px!important;
    }
}


/* COURTREADZ 8.0.66 — compact mobile Post composer, full-width input ------- */
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) 72px!important;
        grid-template-areas:
            "category category"
            "message post"!important;
        column-gap:6px!important;
        row-gap:6px!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        align-items:stretch!important;
        justify-items:stretch!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.is-private,
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.category-feed-open{
        grid-template-areas:"message post"!important;
        grid-template-rows:auto!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkCategorySelect.book-talk-category-select{
        grid-area:category!important;
        grid-column:auto!important;
        grid-row:auto!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        height:36px!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkInput{
        grid-area:message!important;
        grid-column:auto!important;
        grid-row:auto!important;
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        height:42px!important;
        min-height:42px!important;
        max-height:72px!important;
        margin:0!important;
        padding:9px 10px!important;
        resize:none!important;
        box-sizing:border-box!important;
        justify-self:stretch!important;
        align-self:stretch!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkSend{
        grid-area:post!important;
        grid-column:auto!important;
        grid-row:auto!important;
        width:72px!important;
        min-width:72px!important;
        max-width:72px!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
        margin:0!important;
        padding:6px 8px!important;
        align-self:stretch!important;
        justify-self:end!important;
        white-space:nowrap!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.is-private #bookTalkCategorySelect,
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.category-feed-open #bookTalkCategorySelect{
        display:none!important;
    }
}
@media(max-width:380px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer{
        grid-template-columns:minmax(0,1fr) 66px!important;
        column-gap:5px!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkSend{
        width:66px!important;
        min-width:66px!important;
        max-width:66px!important;
        padding-left:5px!important;
        padding-right:5px!important;
    }
}


/* COURTREADZ 8.0.68 — Members search count text removed. */

/* COURTREADZ 8.0.70 — Announcements reaction icon picker. */
.announcement-react-open{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    min-width:0!important;
}
.announcement-reaction-summary{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    min-width:0;
}
.announcement-reaction-summary .announcement-reaction-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    min-width:48px!important;
    min-height:32px!important;
    padding:4px 8px!important;
    border:1px solid var(--line,#ead5dd)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:var(--ink,#3d2630)!important;
    font:inherit!important;
    cursor:pointer;
}
.announcement-reaction-summary .announcement-reaction-pill span{
    font-size:18px;
    line-height:1;
}
.announcement-reaction-summary .announcement-reaction-pill small{
    font-size:11px;
    font-weight:900;
}
.announcement-reaction-summary .announcement-reaction-pill.is-mine{
    border-color:var(--theme-base,#d86d83)!important;
    background:var(--theme-soft,#fde3e9)!important;
}
.announcement-reaction-picker{
    position:fixed;
    z-index:100050;
    width:min(390px,calc(100vw - 20px));
    max-height:min(460px,72dvh);
    padding:10px;
    border:1px solid var(--line,#ead5dd);
    border-radius:16px;
    background:#fff;
    box-shadow:0 18px 48px rgba(64,24,43,.28);
    box-sizing:border-box;
    overflow:hidden;
}
.announcement-reaction-picker[hidden]{display:none!important}
.announcement-reaction-picker-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:8px;
}
.announcement-reaction-picker-head strong{
    font-size:13px;
    font-weight:900;
}
.announcement-reaction-picker-head button{
    display:grid;
    place-items:center;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    padding:0!important;
    border:1px solid var(--line,#ead5dd)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:var(--ink,#3d2630)!important;
    font-size:22px!important;
    line-height:1!important;
    cursor:pointer;
}
.announcement-reaction-icon-grid{
    display:grid;
    grid-template-columns:repeat(8,minmax(0,1fr));
    gap:5px;
    max-height:min(350px,58dvh);
    padding:2px;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
}
.announcement-reaction-icon{
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    aspect-ratio:1!important;
    min-width:0!important;
    min-height:42px!important;
    padding:4px!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    background:#fff!important;
    color:inherit!important;
    font-size:24px!important;
    line-height:1!important;
    cursor:pointer;
    user-select:none;
    -webkit-user-select:none;
}
.announcement-reaction-icon:hover,
.announcement-reaction-icon:focus-visible{
    border-color:var(--theme-base,#d86d83)!important;
    background:var(--theme-soft,#fde3e9)!important;
}
.announcement-reaction-icon.is-selected{
    border-color:var(--theme-base,#d86d83)!important;
    background:var(--theme-soft,#fde3e9)!important;
    box-shadow:inset 0 0 0 1px var(--theme-base,#d86d83);
}
.announcement-reaction-picker-hint{
    display:block;
    margin-top:8px;
    color:var(--muted,#806974);
    font-size:11px;
    text-align:center;
}
@media(max-width:520px){
    .announcement-reaction-picker{
        width:calc(100vw - 16px);
        padding:9px;
        border-radius:14px;
    }
    .announcement-reaction-icon-grid{
        grid-template-columns:repeat(7,minmax(0,1fr));
        gap:4px;
    }
    .announcement-reaction-icon{
        min-height:40px!important;
        font-size:23px!important;
    }
}
@media(max-width:360px){
    .announcement-reaction-icon-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}


/* COURTREADZ 8.0.71 — Member recurring-subscription cancellation control. */
.subscription-recurring-control{
    width:100%;
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid rgba(120,74,91,.18);
    box-sizing:border-box;
}
.subscription-cancel-form{
    width:100%;
    margin:0;
}
.subscription-cancel-button{
    width:100%;
    min-height:44px;
    justify-content:center;
}
.subscription-cancel-help{
    margin-top:7px;
    font-size:.86rem;
    line-height:1.4;
    opacity:.78;
}
.subscription-cancelled-note{
    margin:0!important;
}
.subscription-cancel-confirm[hidden]{display:none!important}
.subscription-cancel-confirm{
    position:fixed;
    inset:0;
    z-index:30000;
    display:grid;
    place-items:center;
    box-sizing:border-box;
    padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));
    isolation:isolate;
}
.subscription-cancel-confirm-backdrop{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(35,24,29,.56)!important;
    box-shadow:none!important;
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
}
.subscription-cancel-confirm-card{
    position:relative;
    z-index:1;
    width:min(440px,100%);
    box-sizing:border-box;
    display:grid;
    justify-items:center;
    gap:14px;
    padding:26px;
    border:1px solid rgba(95,54,68,.16);
    border-radius:20px;
    background:#fff;
    color:#382c31;
    text-align:center;
    box-shadow:0 28px 80px rgba(37,21,28,.3);
    outline:0;
}
.subscription-cancel-confirm-icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:14px;
    background:#fff0f3;
    color:#9f304c;
    font-size:25px;
    font-weight:950;
    line-height:1;
}
.subscription-cancel-confirm-copy{display:grid;gap:8px}
.subscription-cancel-confirm-copy h3{
    margin:0;
    color:#382c31;
    font:800 clamp(21px,3vw,25px)/1.2 Georgia,serif;
}
.subscription-cancel-confirm-copy p{
    margin:0;
    color:#74636a;
    font-size:13px;
    line-height:1.55;
}
.subscription-cancel-confirm-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-top:3px;
}
.subscription-cancel-confirm-actions button{
    width:100%;
    min-width:0;
    min-height:44px;
    justify-content:center;
}
.subscription-cancel-confirm-submit{
    border-color:#9f304c!important;
    background:#9f304c!important;
    color:#fff!important;
}
.subscription-cancel-confirm-submit:hover,
.subscription-cancel-confirm-submit:focus-visible{
    border-color:#84243e!important;
    background:#84243e!important;
}
body.subscription-cancel-confirm-open{overflow:hidden!important}
@media(max-width:760px){
    .subscription-recurring-control{
        margin-top:10px;
        padding-top:10px;
    }
    .subscription-cancel-button{
        width:100%!important;
        min-width:0!important;
    }
}
@media(max-width:430px){
    .subscription-cancel-confirm{padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}
    .subscription-cancel-confirm-card{gap:12px;padding:21px 17px;border-radius:18px}
    .subscription-cancel-confirm-actions{grid-template-columns:1fr}
}

/* COURTREADZ 8.0.72 — reference-inspired book-cover sidebar.
   Desktop/tablet sidebar only. The workspace and page content are deliberately untouched. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar,
    html body .app-shell > aside.sidebar.sidebar-stable{
        position:relative!important;
        isolation:isolate!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
        padding-left:39px!important;
        padding-right:14px!important;
        background:
            linear-gradient(90deg,
                #b94168 0,
                #c94f76 18px,
                #e58aa3 25px,
                #f3bdcb 29px,
                #fff8f2 29px,
                #fffaf6 calc(100% - 8px),
                #de7692 calc(100% - 8px),
                #c84f75 100%)!important;
        border-right:1px solid #c95879!important;
        box-shadow:
            inset 7px 0 13px rgba(92,16,44,.26),
            inset 25px 0 12px rgba(255,255,255,.20),
            inset -7px 0 12px rgba(101,24,48,.12),
            8px 0 24px rgba(116,35,62,.14)!important;
        color:#4d1828!important;
    }
    /* Pink leather spine with subtle raised ribs. */
    html body .app-shell > aside.sidebar::before{
        content:"";
        position:absolute;
        z-index:0;
        inset:0 auto 0 0;
        width:29px;
        pointer-events:none;
        background:
            linear-gradient(90deg,rgba(101,22,51,.28),transparent 24%,rgba(255,255,255,.20) 55%,rgba(109,24,50,.20) 100%),
            repeating-linear-gradient(180deg,
                transparent 0 72px,
                rgba(246,204,155,.44) 72px 73px,
                rgba(111,39,48,.18) 73px 75px,
                transparent 75px 92px);
        box-shadow:
            inset -1px 0 rgba(116,41,59,.30),
            inset -4px 0 rgba(255,238,221,.22);
    }
    /* Fine inset border gives the cream area the book-page/frame finish. */
    html body .app-shell > aside.sidebar::after{
        content:"";
        position:absolute;
        z-index:0;
        top:9px;
        right:11px;
        bottom:9px;
        left:34px;
        border:1px solid rgba(210,158,108,.60);
        border-radius:14px;
        box-shadow:
            inset 0 0 0 2px rgba(255,255,255,.64),
            inset 0 0 18px rgba(224,162,144,.10);
        pointer-events:none;
    }
    html body .app-shell > aside.sidebar > *{
        position:relative!important;
        z-index:1!important;
    }

    html body .app-shell > aside.sidebar .side-brand{
        min-height:126px!important;
        margin:10px 0 8px!important;
        padding:16px 10px 14px!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        justify-content:center!important;
        gap:8px!important;
        text-align:center!important;
        background:linear-gradient(180deg,rgba(255,253,249,.94),rgba(255,246,240,.82))!important;
        border:1px solid rgba(217,173,139,.46)!important;
        border-radius:12px!important;
        box-shadow:inset 0 0 0 2px rgba(255,255,255,.60)!important;
        color:#4d1828!important;
    }
    html body .app-shell > aside.sidebar .side-brand .brand-mark{
        width:66px!important;
        height:66px!important;
        min-width:66px!important;
        border-radius:16px!important;
        display:grid!important;
        place-items:center!important;
        background:linear-gradient(145deg,#fff7f1,#f8dce2)!important;
        border:1px solid rgba(215,112,141,.34)!important;
        box-shadow:0 5px 12px rgba(135,48,75,.10)!important;
        color:#b83d64!important;
        font-size:30px!important;
    }
    html body .app-shell > aside.sidebar .side-brand .brand-mark.has-custom-logo{
        padding:5px!important;
        overflow:hidden!important;
    }
    html body .app-shell > aside.sidebar .side-brand .brand-mark img{
        width:100%!important;
        height:100%!important;
        object-fit:contain!important;
    }
    html body .app-shell > aside.sidebar .side-brand strong{
        display:block!important;
        max-width:170px!important;
        color:#4e1728!important;
        font-family:Georgia,"Times New Roman",serif!important;
        font-size:17px!important;
        line-height:1.14!important;
        letter-spacing:.01em!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-menu-toggle{
        display:none!important;
    }

    html body .app-shell > aside.sidebar .role-chip{
        margin:0 0 7px!important;
        padding:8px 10px!important;
        border:1px solid rgba(219,177,151,.46)!important;
        border-radius:9px!important;
        background:rgba(255,249,244,.80)!important;
        color:#7b3349!important;
        text-align:center!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .role-chip b{
        color:#b23d61!important;
    }

    html body .app-shell > aside.sidebar .nav{
        display:flex!important;
        flex-direction:column!important;
        gap:0!important;
        min-height:0!important;
        margin:3px 0 8px!important;
        padding:0 2px!important;
        overflow-y:auto!important;
        scrollbar-width:thin!important;
        scrollbar-color:#d98099 transparent!important;
    }
    html body .app-shell > aside.sidebar .nav a,
    html body .app-shell > aside.sidebar .nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav{
        position:relative!important;
        width:100%!important;
        min-height:46px!important;
        margin:0!important;
        padding:9px 9px!important;
        display:flex!important;
        align-items:center!important;
        gap:10px!important;
        border:0!important;
        border-bottom:1px solid rgba(211,174,159,.32)!important;
        border-radius:0!important;
        background:transparent!important;
        color:#4f1b2b!important;
        box-shadow:none!important;
        text-align:left!important;
        font-weight:650!important;
    }
    html body .app-shell > aside.sidebar .nav a:not(.active):hover,
    html body .app-shell > aside.sidebar .nav a:not(.active):focus,
    html body .app-shell > aside.sidebar .nav a:not(.active):active,
    html body .app-shell > aside.sidebar .nav a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav:hover,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav:focus{
        background:rgba(229,111,143,.10)!important;
        color:#9f3155!important;
        border-color:rgba(211,174,159,.42)!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .nav .nav-icon{
        flex:0 0 27px!important;
        width:27px!important;
        height:27px!important;
        min-width:27px!important;
        display:grid!important;
        place-items:center!important;
        border:1px solid rgba(188,74,105,.28)!important;
        border-radius:9px!important;
        background:#fff7f2!important;
        color:#a93659!important;
        font-size:15px!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .nav .nav-label{
        min-width:0!important;
        line-height:1.18!important;
        white-space:normal!important;
    }

    html body .app-shell > aside.sidebar .nav a.active,
    html body .app-shell > aside.sidebar .nav a.active:hover,
    html body .app-shell > aside.sidebar .nav a.active:focus,
    html body .app-shell > aside.sidebar .nav a.active:active{
        margin:5px 0!important;
        padding:10px 10px!important;
        min-height:47px!important;
        border:1px solid #cb4f75!important;
        border-radius:9px!important;
        background:linear-gradient(180deg,#df6386 0%,#d34972 100%)!important;
        color:#fff!important;
        box-shadow:0 7px 14px rgba(167,46,82,.20),inset 0 1px rgba(255,255,255,.26)!important;
    }
    html body .app-shell > aside.sidebar .nav a.active::before{
        display:none!important;
    }
    html body .app-shell > aside.sidebar .nav a.active .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:hover .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:focus .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:active .nav-icon{
        background:rgba(255,255,255,.16)!important;
        border-color:rgba(255,255,255,.32)!important;
        color:#fff!important;
    }
    html body .app-shell > aside.sidebar .nav a.subscription-nav-link.subscription-active:not(.active){
        background:rgba(226,91,127,.075)!important;
    }

    html body .app-shell > aside.sidebar .sidebar-bottom{
        margin-top:auto!important;
        padding:10px 4px 12px!important;
        border-top:1px solid rgba(207,158,143,.34)!important;
        background:transparent!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        margin:0 0 9px!important;
        padding:10px!important;
        border:1px solid rgba(218,128,151,.30)!important;
        border-radius:10px!important;
        background:linear-gradient(180deg,#fff6f4,#feecef)!important;
        color:#7d3049!important;
        text-align:center!important;
        line-height:1.35!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal b{
        display:block!important;
        margin-top:3px!important;
        color:#d8426f!important;
        font-size:1.02em!important;
    }
    html body .app-shell > aside.sidebar .logout-form{
        margin:0!important;
    }
    html body .app-shell > aside.sidebar .logout-form button{
        width:100%!important;
        min-height:42px!important;
        border:0!important;
        border-radius:8px!important;
        background:transparent!important;
        color:#551e30!important;
        font-weight:700!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .logout-form button:hover,
    html body .app-shell > aside.sidebar .logout-form button:focus{
        background:rgba(216,73,113,.10)!important;
        color:#b4365d!important;
    }

    html body .app-shell > aside.sidebar .announcement-unread-count{
        margin-left:auto!important;
        background:#d8436f!important;
        color:#fff!important;
        border-color:#d8436f!important;
    }
}

/* COURTREADZ 8.0.73 — left book sidebar icon + navigation polish.
   Desktop/tablet sidebar only: clean outline icons without icon boxes, reliable
   left-aligned labels with room to wrap, and a clearer Sign Out action. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav a,
    html body .app-shell > aside.sidebar .nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav{
        justify-content:space-between!important;
        align-items:center!important;
        width:100%!important;
        min-width:0!important;
        padding-left:10px!important;
        padding-right:10px!important;
        gap:9px!important;
        overflow:visible!important;
        text-align:left!important;
    }

    /* Icon shell is now completely invisible — only the clean icon remains. */
    html body .app-shell > aside.sidebar .nav .nav-icon{
        position:relative!important;
        flex:0 0 25px!important;
        width:25px!important;
        min-width:25px!important;
        height:26px!important;
        padding:0!important;
        display:grid!important;
        place-items:center!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
        color:#a93659!important;
        font-size:0!important;
        line-height:1!important;
        overflow:visible!important;
    }
    html body .app-shell > aside.sidebar .nav .nav-icon::before{
        content:"";
        width:21px;
        height:21px;
        display:block;
        background:currentColor;
        -webkit-mask-repeat:no-repeat;
        mask-repeat:no-repeat;
        -webkit-mask-position:center;
        mask-position:center;
        -webkit-mask-size:21px 21px;
        mask-size:21px 21px;
    }

    /* Chat / Book Club Feed */
    html body .app-shell > aside.sidebar .nav a[href*="view=book_talk"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.4 8.4 0 0 1-9 8.5 9.5 9.5 0 0 1-4-.9L3 21l1.6-4.4A8.2 8.2 0 0 1 3 11.5 8.6 8.6 0 0 1 12 3a8.6 8.6 0 0 1 9 8.5Z'/%3E%3Cpath d='M8 10h8M8 14h5'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5a8.4 8.4 0 0 1-9 8.5 9.5 9.5 0 0 1-4-.9L3 21l1.6-4.4A8.2 8.2 0 0 1 3 11.5 8.6 8.6 0 0 1 12 3a8.6 8.6 0 0 1 9 8.5Z'/%3E%3Cpath d='M8 10h8M8 14h5'/%3E%3C/svg%3E");
    }
    /* Dashboard */
    html body .app-shell > aside.sidebar .nav a[href*="view=dashboard"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E");
    }
    /* Library */
    html body .app-shell > aside.sidebar .nav a[href*="view=library"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 5.5A3.5 3.5 0 0 1 7 3h5v17H7a3.5 3.5 0 0 0-3.5 1V5.5Z'/%3E%3Cpath d='M20.5 5.5A3.5 3.5 0 0 0 17 3h-5v17h5a3.5 3.5 0 0 1 3.5 1V5.5Z'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 5.5A3.5 3.5 0 0 1 7 3h5v17H7a3.5 3.5 0 0 0-3.5 1V5.5Z'/%3E%3Cpath d='M20.5 5.5A3.5 3.5 0 0 0 17 3h-5v17h5a3.5 3.5 0 0 1 3.5 1V5.5Z'/%3E%3C/svg%3E");
    }
    /* Announcements */
    html body .app-shell > aside.sidebar .nav a[href*="view=announcements"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a2 2 0 0 0 2 2h2l2 5h3l-1.5-5H13l7 3V6l-7 3H5a2 2 0 0 0-2 2Z'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a2 2 0 0 0 2 2h2l2 5h3l-1.5-5H13l7 3V6l-7 3H5a2 2 0 0 0-2 2Z'/%3E%3C/svg%3E");
    }
    /* Profile */
    html body .app-shell > aside.sidebar .nav a[href*="view=profile"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c.8-4.3 3.5-6.5 8-6.5s7.2 2.2 8 6.5'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c.8-4.3 3.5-6.5 8-6.5s7.2 2.2 8 6.5'/%3E%3C/svg%3E");
    }
    /* Subscribe */
    html body .app-shell > aside.sidebar .nav a[href*="view=subscribe"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15.5 8.5c-.8-1-2-1.5-3.5-1.5-2 0-3.5 1-3.5 2.5 0 4 7 1.5 7 5.5 0 1.5-1.5 2.5-3.5 2.5-1.7 0-3-.5-4-1.7M12 5v14'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M15.5 8.5c-.8-1-2-1.5-3.5-1.5-2 0-3.5 1-3.5 2.5 0 4 7 1.5 7 5.5 0 1.5-1.5 2.5-3.5 2.5-1.7 0-3-.5-4-1.7M12 5v14'/%3E%3C/svg%3E");
    }
    /* Members */
    html body .app-shell > aside.sidebar .nav a[href*="view=members"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M2.5 20c.6-4 2.8-6 6.5-6s5.9 2 6.5 6M14.5 15c3.6-.6 6 1 7 4.5'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M2.5 20c.6-4 2.8-6 6.5-6s5.9 2 6.5 6M14.5 15c3.6-.6 6 1 7 4.5'/%3E%3C/svg%3E");
    }
    /* Mapping */
    html body .app-shell > aside.sidebar .nav a[href*="view=live_mapping"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 6 6-3 6 3 6-3v15l-6 3-6-3-6 3V6Z'/%3E%3Cpath d='M9 3v15M15 6v15'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 6 6-3 6 3 6-3v15l-6 3-6-3-6 3V6Z'/%3E%3Cpath d='M9 3v15M15 6v15'/%3E%3C/svg%3E");
    }
    /* Private recordings */
    html body .app-shell > aside.sidebar .nav a[href*="view=private_recordings"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='13' height='12' rx='2'/%3E%3Cpath d='m16 10 5-3v10l-5-3v-4Z'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='13' height='12' rx='2'/%3E%3Cpath d='m16 10 5-3v10l-5-3v-4Z'/%3E%3C/svg%3E");
    }
    /* Settings */
    html body .app-shell > aside.sidebar .nav a[href*="view=settings"] .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .3 1.9l.1.1-2.8 2.8-.1-.1a1.7 1.7 0 0 0-1.9-.3 1.7 1.7 0 0 0-1 1.6v.2h-4V21a1.7 1.7 0 0 0-1-1.6 1.7 1.7 0 0 0-1.9.3l-.1.1L4.2 17l.1-.1a1.7 1.7 0 0 0 .3-1.9A1.7 1.7 0 0 0 3 14H2.8v-4H3a1.7 1.7 0 0 0 1.6-1 1.7 1.7 0 0 0-.3-1.9L4.2 7 7 4.2l.1.1a1.7 1.7 0 0 0 1.9.3A1.7 1.7 0 0 0 10 3V2.8h4V3a1.7 1.7 0 0 0 1 1.6 1.7 1.7 0 0 0 1.9-.3l.1-.1L19.8 7l-.1.1a1.7 1.7 0 0 0-.3 1.9 1.7 1.7 0 0 0 1.6 1h.2v4H21a1.7 1.7 0 0 0-1.6 1Z'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .3 1.9l.1.1-2.8 2.8-.1-.1a1.7 1.7 0 0 0-1.9-.3 1.7 1.7 0 0 0-1 1.6v.2h-4V21a1.7 1.7 0 0 0-1-1.6 1.7 1.7 0 0 0-1.9.3l-.1.1L4.2 17l.1-.1a1.7 1.7 0 0 0 .3-1.9A1.7 1.7 0 0 0 3 14H2.8v-4H3a1.7 1.7 0 0 0 1.6-1 1.7 1.7 0 0 0-.3-1.9L4.2 7 7 4.2l.1.1a1.7 1.7 0 0 0 1.9.3A1.7 1.7 0 0 0 10 3V2.8h4V3a1.7 1.7 0 0 0 1 1.6 1.7 1.7 0 0 0 1.9-.3l.1-.1L19.8 7l-.1.1a1.7 1.7 0 0 0-.3 1.9 1.7 1.7 0 0 0 1.6 1h.2v4H21a1.7 1.7 0 0 0-1.6 1Z'/%3E%3C/svg%3E");
    }
    /* Stream videos button */
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav .nav-icon::before{
        -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E");
        mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m10 9 5 3-5 3V9Z'/%3E%3C/svg%3E");
    }

    /* Preserve the custom live-stream pulse, but remove its old icon-box chrome. */
    html body .app-shell > aside.sidebar .nav .stream-live-indicator::before{
        display:none!important;
    }
    html body .app-shell > aside.sidebar .nav .stream-live-indicator{
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
        font-size:inherit!important;
    }

    /* Active item: icon changes to white, still no square behind it. */
    html body .app-shell > aside.sidebar .nav a.active .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:hover .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:focus .nav-icon,
    html body .app-shell > aside.sidebar .nav a.active:active .nav-icon{
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
        color:#fff!important;
    }

    /* Labels get the remaining width and can never sit underneath an icon/badge. */
    html body .app-shell > aside.sidebar .nav .nav-label{
        flex:1 1 auto!important;
        min-width:0!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        display:block!important;
        color:inherit!important;
        font-size:13.5px!important;
        line-height:1.22!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
        word-break:normal!important;
        text-align:left!important;
    }
    html body .app-shell > aside.sidebar .nav .announcement-unread-count{
        position:static!important;
        flex:0 0 auto!important;
        margin-left:auto!important;
    }
    html body .app-shell > aside.sidebar .nav .subscription-dot{
        position:absolute!important;
        left:27px!important;
        top:9px!important;
        width:6px!important;
        height:6px!important;
        margin:0!important;
        z-index:2!important;
    }

    /* Cleaner Sign Out row, left aligned like the navigation above it. */
    html body .app-shell > aside.sidebar .logout-form{
        width:100%!important;
        margin:1px 0 0!important;
        padding:0 2px!important;
    }
    html body .app-shell > aside.sidebar .logout-form button{
        position:relative!important;
        width:100%!important;
        min-height:44px!important;
        margin:0!important;
        padding:9px 12px 9px 42px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        border:1px solid rgba(196,74,106,.24)!important;
        border-radius:9px!important;
        background:rgba(255,250,247,.70)!important;
        color:#70263e!important;
        box-shadow:none!important;
        text-align:left!important;
        font-size:13.5px!important;
        font-weight:750!important;
        letter-spacing:.01em!important;
        overflow:visible!important;
    }
    html body .app-shell > aside.sidebar .logout-form button::before{
        content:"";
        position:absolute;
        left:12px;
        top:50%;
        width:21px;
        height:21px;
        transform:translateY(-50%);
        background:currentColor;
        -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 4H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h5'/%3E%3Cpath d='m15 8 4 4-4 4M19 12H9'/%3E%3C/svg%3E") center/21px 21px no-repeat;
        mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 4H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h5'/%3E%3Cpath d='m15 8 4 4-4 4M19 12H9'/%3E%3C/svg%3E") center/21px 21px no-repeat;
    }
    html body .app-shell > aside.sidebar .logout-form button:hover,
    html body .app-shell > aside.sidebar .logout-form button:focus-visible{
        background:rgba(219,76,116,.11)!important;
        border-color:rgba(190,61,98,.40)!important;
        color:#b43259!important;
    }
}


/* COURTREADZ 8.0.74 — make the UNSELECTED left-sidebar navigation visibly button-like.
   These final overrides target the real .sidebar .nav anchors/buttons used by every account type. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav{
        gap:5px!important;
        padding:2px 3px 4px!important;
    }

    html body .app-shell > aside.sidebar .nav a:not(.active),
    html body .app-shell > aside.sidebar .nav a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav{
        width:100%!important;
        min-width:0!important;
        min-height:44px!important;
        margin:0!important;
        padding:9px 11px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:10px!important;
        border:1px solid rgba(198,111,132,.34)!important;
        border-radius:10px!important;
        background:linear-gradient(180deg,rgba(255,253,249,.98) 0%,rgba(255,244,244,.96) 100%)!important;
        color:#5f2639!important;
        box-shadow:0 2px 5px rgba(117,43,65,.055),inset 0 1px 0 rgba(255,255,255,.88)!important;
        text-align:left!important;
        overflow:visible!important;
        transform:none!important;
    }

    html body .app-shell > aside.sidebar .nav a:not(.active):hover,
    html body .app-shell > aside.sidebar .nav a:not(.active):focus-visible,
    html body .app-shell > aside.sidebar .nav a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav:hover,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav:focus-visible{
        border-color:rgba(194,72,106,.55)!important;
        background:linear-gradient(180deg,#fff8f6 0%,#fde9ee 100%)!important;
        color:#a83055!important;
        box-shadow:0 4px 9px rgba(148,48,78,.10),inset 0 1px 0 rgba(255,255,255,.92)!important;
        transform:none!important;
    }

    /* No square/rounded box around any icon. */
    html body .app-shell > aside.sidebar .nav a:not(.active) .nav-icon,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav .nav-icon{
        flex:0 0 24px!important;
        width:24px!important;
        min-width:24px!important;
        height:24px!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
        color:#b13a5f!important;
    }

    /* Give text the full remaining line width; badges stay at the far right. */
    html body .app-shell > aside.sidebar .nav a:not(.active) .nav-label,
    html body .app-shell > aside.sidebar .nav button.member-stream-videos-nav .nav-label{
        position:relative!important;
        z-index:1!important;
        flex:1 1 auto!important;
        width:auto!important;
        min-width:0!important;
        max-width:100%!important;
        margin:0!important;
        padding:0!important;
        display:block!important;
        color:inherit!important;
        text-align:left!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:break-word!important;
        word-break:normal!important;
    }

    html body .app-shell > aside.sidebar .nav a:not(.active) .announcement-unread-count{
        position:static!important;
        flex:0 0 auto!important;
        margin-left:auto!important;
    }

    /* Selected item remains the strong pink button and lines up with the unselected buttons. */
    html body .app-shell > aside.sidebar .nav a.active,
    html body .app-shell > aside.sidebar .nav a.active:hover,
    html body .app-shell > aside.sidebar .nav a.active:focus,
    html body .app-shell > aside.sidebar .nav a.active:active{
        width:100%!important;
        min-width:0!important;
        min-height:44px!important;
        margin:0!important;
        padding:9px 11px!important;
        gap:10px!important;
        border-radius:10px!important;
        text-align:left!important;
        transform:none!important;
    }
}


/* COURTREADZ 8.0.75 — fixed sidebar header/footer with independently scrollable navigation.
   Only the button section between the signed-in area and Sign Out scrolls. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar,
    html body .app-shell > aside.sidebar.sidebar-stable{
        display:flex!important;
        flex-direction:column!important;
        height:100dvh!important;
        min-height:0!important;
        max-height:100dvh!important;
        overflow:hidden!important;
    }

    /* Header / account identity always stays visible. */
    html body .app-shell > aside.sidebar .side-brand,
    html body .app-shell > aside.sidebar .role-chip{
        flex:0 0 auto!important;
    }

    /* This is the only vertically scrolling part of the left panel. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav{
        flex:1 1 0!important;
        min-height:0!important;
        max-height:none!important;
        width:100%!important;
        margin:2px 0 6px!important;
        padding:2px 1px 5px 0!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior:contain!important;
        -webkit-overflow-scrolling:touch!important;
        scrollbar-gutter:stable!important;
        scrollbar-width:thin!important;
        scrollbar-color:#cf6d8b rgba(255,239,242,.52)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav::-webkit-scrollbar{
        width:7px;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav::-webkit-scrollbar-track{
        background:rgba(255,239,242,.52);
        border-radius:10px;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav::-webkit-scrollbar-thumb{
        background:#cf6d8b;
        border-radius:10px;
        border:1px solid rgba(255,248,246,.86);
    }

    /* Sign Out / subscription area stays pinned to the bottom. */
    html body .app-shell > aside.sidebar .sidebar-bottom{
        flex:0 0 auto!important;
        margin-top:0!important;
        position:relative!important;
        z-index:3!important;
        padding-top:8px!important;
        background:linear-gradient(180deg,rgba(255,250,246,.86),rgba(255,247,242,.97))!important;
        box-shadow:0 -8px 14px rgba(117,43,65,.045)!important;
    }

    /* Move navigation content farther left and make every label free to wrap. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:active{
        box-sizing:border-box!important;
        width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:43px!important;
        padding:8px 7px 8px 5px!important;
        gap:7px!important;
        align-items:flex-start!important;
        justify-content:flex-start!important;
        text-align:left!important;
        white-space:normal!important;
        overflow:visible!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-icon{
        flex:0 0 21px!important;
        width:21px!important;
        min-width:21px!important;
        height:21px!important;
        margin:1px 0 0!important;
        padding:0!important;
        align-self:flex-start!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-label{
        flex:1 1 auto!important;
        width:auto!important;
        min-width:0!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        display:block!important;
        text-align:left!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
        word-break:normal!important;
        line-height:1.23!important;
    }

    /* Keep notification / status badges from covering wrapped button text. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .announcement-unread-count{
        position:static!important;
        flex:0 0 auto!important;
        margin:1px 1px 0 auto!important;
        align-self:flex-start!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .subscription-dot{
        left:20px!important;
        top:7px!important;
    }
}

/* Short desktop/tablet windows: compact the fixed areas so the button scroller gets more room. */
@media(min-width:761px) and (max-height:760px){
    html body .app-shell > aside.sidebar .side-brand{
        min-height:92px!important;
        margin-top:6px!important;
        margin-bottom:5px!important;
        padding-top:9px!important;
        padding-bottom:9px!important;
        gap:5px!important;
    }
    html body .app-shell > aside.sidebar .side-brand .brand-mark{
        width:48px!important;
        min-width:48px!important;
        height:48px!important;
        font-size:23px!important;
        border-radius:12px!important;
    }
    html body .app-shell > aside.sidebar .side-brand strong{
        font-size:15px!important;
        line-height:1.08!important;
    }
    html body .app-shell > aside.sidebar .role-chip{
        margin-bottom:5px!important;
        padding-top:6px!important;
        padding-bottom:6px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-bottom{
        padding-top:6px!important;
        padding-bottom:7px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        margin-bottom:6px!important;
        padding:7px!important;
    }
}

/* COURTREADZ 8.1.69 final desktop priority lock. Keep this after every legacy
   Login and responsive rule so no later width breakpoint can move the card. */
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{position:fixed!important;inset:0!important;width:100vw!important;min-width:100vw!important;max-width:100vw!important;height:100vh!important;min-height:100vh!important;max-height:100vh!important;overflow:hidden!important}
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{position:fixed!important;inset:auto!important;left:50vw!important;right:auto!important;top:50vh!important;bottom:auto!important;width:100vw!important;min-width:100vw!important;max-width:100vw!important;height:auto!important;margin:0!important;transform:translate3d(-50%,-50%,0)!important;transform-origin:center center!important;overflow:visible!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel{position:relative!important;inset:auto!important;width:calc(100vw - 10px)!important;min-width:0!important;max-width:calc(100vw - 10px)!important;height:auto!important;max-height:calc(100vh - 16px)!important;margin:0 auto!important;overflow:hidden!important;transform:none!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{width:100%!important;max-width:none!important;height:auto!important;max-height:calc(100vh - 16px)!important;margin:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important}
@supports(height:100dvh){html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important}html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{top:50dvh!important}html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{max-height:calc(100dvh - 16px)!important}}

/* COURTREADZ 8.1.71 — narrow, curved desktop Login/Register card. */
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel{width:calc(100vw - 32px)!important;min-width:0!important;max-width:620px!important;border-radius:34px!important;overflow:hidden!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{border-radius:34px!important}

/* COURTREADZ 8.1.81 — permanent Raffle entry points for Member and Admin navigation.
   These final cascade rules make the role action visible directly after Announcements
   in the desktop sidebar and in the mobile dropdown. */
html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link,
html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link{
    box-sizing:border-box!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
}
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link{
        position:relative!important;
        width:100%!important;
        min-width:0!important;
        height:37px!important;
        min-height:37px!important;
        max-height:37px!important;
        flex:0 0 37px!important;
        margin:0!important;
        padding:5px 6px!important;
        gap:6px!important;
        align-items:center!important;
        overflow:hidden!important;
        border:1px solid rgba(211,126,151,.44)!important;
        border-radius:8px!important;
        background:linear-gradient(180deg,#fff9f7 0%,#fde9ee 100%)!important;
        color:#762c45!important;
        box-shadow:0 2px 6px rgba(118,44,67,.07)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link.active{
        border-color:#c94d73!important;
        background:linear-gradient(180deg,#df6386 0%,#d34972 100%)!important;
        color:#fff!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link .nav-label{
        display:block!important;
        flex:1 1 auto!important;
        min-width:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:11.5px!important;
        font-weight:850!important;
        line-height:18px!important;
        white-space:nowrap!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link .raffle-nav-badge{
        display:inline-grid!important;
        visibility:visible!important;
        opacity:1!important;
    }
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar .member-mobile-dropdown.is-open{
        max-height:calc(100dvh - 82px - env(safe-area-inset-top,0px))!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior:contain!important;
        -webkit-overflow-scrolling:touch!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link{
        min-height:44px!important;
        border-color:rgba(255,230,168,.58)!important;
        background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(246,184,66,.20))!important;
        color:#fff!important;
        font-weight:900!important;
    }
}

/* COURTREADZ 8.1.253 — opened-category post panels fill the Feed workspace
   as one compact group, with a consistent 10px gap in both directions. */
@media(min-width:761px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed{
        box-sizing:border-box!important;
        display:flex!important;
        flex-flow:row wrap!important;
        align-items:flex-start!important;
        align-content:flex-start!important;
        justify-content:flex-start!important;
        width:100%!important;
        max-width:none!important;
        column-gap:10px!important;
        row-gap:0!important;
        padding-right:0!important;
        padding-left:0!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-column{
        box-sizing:border-box!important;
        display:flex!important;
        flex:1 1 320px!important;
        flex-direction:column!important;
        align-items:stretch!important;
        align-self:flex-start!important;
        width:auto!important;
        min-width:0!important;
        max-width:100%!important;
        gap:10px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-post,
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-column>.book-talk-feed-post{
        position:relative!important;
        inset:auto!important;
        box-sizing:border-box!important;
        display:flex!important;
        flex:0 0 auto!important;
        flex-direction:column!important;
        order:0!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        align-self:stretch!important;
        float:none!important;
        clear:none!important;
        transform:none!important;
        overflow:hidden!important;
        contain:paint style!important;
        content-visibility:visible!important;
    }
    /* COURTREADZ 8.1.252 — keep category selector cards compact. */
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-category-hub{
        box-sizing:border-box!important;
        display:flex!important;
        flex-flow:row wrap!important;
        align-items:stretch!important;
        align-content:flex-start!important;
        justify-content:flex-start!important;
        width:100%!important;
        max-width:none!important;
        column-gap:3px!important;
        row-gap:1px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages>.book-talk-category-hub>.book-talk-category-card{
        box-sizing:border-box!important;
        flex:0 1 220px!important;
        width:220px!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        margin:0!important;
        align-self:stretch!important;
    }
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-column{
        display:contents!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMessages.book-talk-feed>.book-talk-feed-column>.book-talk-feed-post{
        position:relative!important;
        box-sizing:border-box!important;
        display:flex!important;
        flex:0 0 auto!important;
        flex-direction:column!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        margin:0!important;
    }
}

/* COURTREADZ 8.1.82 final permanent Raffle control — must remain last. */
html body .app-shell > aside.sidebar a.raffle-nav-link.raffle-permanent-entry,
html body .app-shell > aside.sidebar a.raffle-nav-link[data-raffle-ready="1"]{
    box-sizing:border-box!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    text-decoration:none!important;
}
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link.raffle-permanent-entry,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"]{
        flex:0 0 42px!important;
        width:100%!important;
        min-width:0!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
        margin:0!important;
        padding:6px 7px!important;
        gap:7px!important;
        align-items:center!important;
        overflow:hidden!important;
        border:2px solid #e2a82f!important;
        border-radius:9px!important;
        background:linear-gradient(135deg,#fff8cf 0%,#ffe69a 52%,#ffd477 100%)!important;
        color:#6b3d00!important;
        box-shadow:0 4px 10px rgba(128,79,0,.16)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link.raffle-permanent-entry.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"].active{
        border-color:#a43b5d!important;
        background:linear-gradient(180deg,#df6386 0%,#c93e69 100%)!important;
        color:#fff!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .raffle-ticket-icon{
        display:inline-grid!important;
        place-items:center!important;
        flex:0 0 22px!important;
        width:22px!important;
        min-width:22px!important;
        height:22px!important;
        min-height:22px!important;
        margin:0!important;
        padding:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:17px!important;
        line-height:22px!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .nav-label{
        display:block!important;
        flex:1 1 auto!important;
        min-width:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:12px!important;
        font-weight:950!important;
        line-height:20px!important;
        white-space:nowrap!important;
    }
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link.raffle-permanent-entry,
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link[data-raffle-ready="1"]{
        grid-column:1/-1!important;
        justify-content:flex-start!important;
        min-height:48px!important;
        padding:10px 12px!important;
        gap:8px!important;
        border:2px solid #ffd87b!important;
        border-radius:10px!important;
        background:linear-gradient(135deg,#b64d69 0%,#8f344f 100%)!important;
        color:#fff!important;
        font-size:13px!important;
        font-weight:950!important;
        box-shadow:0 5px 14px rgba(73,20,38,.24)!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link .raffle-nav-badge{
        margin-left:auto!important;
    }
}

/* Private Chat final cascade authority (8.3.190). */
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.is-private:not([hidden]){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"message post"!important;
    align-items:end!important;
    gap:7px!important;
    padding-top:8px!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.is-private #bookTalkInput{
    min-height:42px!important;
    max-height:96px!important;
    padding:10px 14px!important;
    border-radius:21px!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.is-private #bookTalkSend{
    width:auto!important;
    min-width:74px!important;
    max-width:none!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:8px 13px!important;
    border-radius:21px!important;
}
@media(max-width:760px){
    html body.book-talk-mobile-private-active[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer.is-private:not([hidden]){
        grid-template-columns:minmax(0,1fr) 68px!important;
        gap:6px!important;
        margin:0!important;
        padding:6px 0 max(2px,env(safe-area-inset-bottom,0px))!important;
    }
    html body.book-talk-mobile-private-active[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.is-private #bookTalkSend{
        width:68px!important;
        min-width:68px!important;
        max-width:68px!important;
        padding:6px 8px!important;
    }
    html body.book-talk-mobile-private-active[data-current-view="book_talk"] #bookClubTalkApp .book-talk-head p{
        display:flex!important;
        align-items:center!important;
        min-height:14px!important;
        margin-top:2px!important;
        font-size:9px!important;
    }
}

/* COURTREADZ 8.1.256 — Feed images, videos and the Buy Now section sit
   exactly 3px inside their containing post panel on desktop and mobile. */
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post > .book-talk-media-strip,
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post > .book-sale-card{
    box-sizing:border-box!important;
    width:calc(100% - 6px)!important;
    min-width:0!important;
    max-width:calc(100% - 6px)!important;
    margin:3px!important;
}
html.app-document body[data-current-view="book_talk"] #bookTalkMessages .book-talk-feed-post > .book-talk-media-strip{
    padding:0!important;
}

/* COURTREADZ 8.1.260 — keep the mobile Login panel's top edge fixed while
   Sign In, Register and Password Reset retain their natural content heights. */
@media(max-width:760px){
html.login-document.login-mobile-device.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,
html.login-document.login-mobile-device.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="login"] .login-fitted-group,
html.login-document.login-mobile-device.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group,
html.login-document.login-mobile-device.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="password_reset"] .login-fitted-group{
    top:var(--login-mobile-stable-top,var(--login-group-top,max(5px,env(safe-area-inset-top,0px))))!important;
    bottom:auto!important;
    transform:translate3d(0,0,0)!important;
    transition:none!important;
    animation:none!important;
    will-change:auto!important;
}
}

/* COURTREADZ 8.1.166 — Book Club Members toolbar-button drawer and
   category-layout containment.
   Admin and Member views share one off-canvas drawer. The Feed uses the full
   page width and the button immediately after + Category toggles the drawer. */
html body[data-current-view="book_talk"] #bookClubTalkApp{
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    overflow:hidden!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp>.book-talk-chat-panel{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
}
/* Preserve the existing single-row Category toolbar while keeping every item
   inside its own space. Category chips scroll horizontally; the two action
   buttons retain their natural size and never overlap or wrap. */
html body[data-current-view="book_talk"] #bookTalkFeedControls{
    display:flex!important;
    flex-flow:row nowrap!important;
    align-items:center!important;
    gap:clamp(4px,1vw,8px)!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkCategories.book-talk-category-strip{
    flex:1 1 0!important;
    width:0!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkCategories>.book-talk-category-chip{
    flex:0 0 auto!important;
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    max-width:none!important;
    box-sizing:border-box!important;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkNewCategory.book-talk-new-category{
    height:32px!important;
    min-height:32px!important;
    max-height:32px!important;
    box-sizing:border-box!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkNewCategory.book-talk-new-category,
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button{
    flex:0 0 auto!important;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] #bookTalkCategoryForm.book-talk-category-create{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
html body[data-current-view="book_talk"] #bookTalkCategoryForm.book-talk-category-create>*{
    min-width:0!important;
}
html body[data-current-view="book_talk"] #bookTalkCategoryForm.book-talk-category-create>button{
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] .book-talk-category-hub{
    grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),280px))!important;
    min-width:0!important;
    max-width:100%!important;
}
html body[data-current-view="book_talk"] .book-talk-category-card,
html body[data-current-view="book_talk"] .book-talk-category-card-top,
html body[data-current-view="book_talk"] .book-talk-category-card-meta{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
html body[data-current-view="book_talk"] .book-talk-category-card-title{
    flex:1 1 auto!important;
    min-width:0!important;
}
html body[data-current-view="book_talk"] .book-talk-category-card-actions{
    flex:0 0 auto!important;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] .book-talk-category-card-stat{
    min-width:0!important;
    overflow:hidden!important;
}
html body[data-current-view="book_talk"] .book-talk-category-card-stat>small{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button{
    position:relative!important;
    z-index:9701!important;
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    height:32px!important;
    min-height:32px!important;
    margin:0!important;
    padding:5px 8px!important;
    overflow:visible!important;
    border:1px solid var(--theme-border,#dcbec7)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:var(--theme-deep,#733a49)!important;
    box-shadow:none!important;
    font-size:10px!important;
    font-weight:950!important;
    line-height:1!important;
    white-space:nowrap!important;
    cursor:pointer!important;
    transform:none!important;
    transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button:hover,
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button:focus-visible{
    border-color:var(--theme-base,#d86d83)!important;
    background:var(--theme-pale,#fff7f9)!important;
    color:var(--theme-deep,#733a49)!important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-base,#d86d83) 15%,transparent)!important;
}
html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button[aria-expanded="true"]{
    border-color:var(--theme-base,#d86d83)!important;
    background:var(--theme-base,#d86d83)!important;
    color:var(--theme-on-base,#fff)!important;
    box-shadow:0 7px 18px rgba(102,38,58,.22)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    z-index:0!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-icon,
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-label,
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-chevron{
    display:inline-block!important;
    flex:0 0 auto!important;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-icon{
    font-size:13px!important;
    line-height:1!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-label{
    font:inherit!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-count{
    display:grid!important;
    place-items:center!important;
    flex:0 0 auto!important;
    min-width:20px!important;
    height:20px!important;
    padding:0 5px!important;
    border-radius:999px!important;
    background:var(--theme-soft,#f7e8ec)!important;
    color:var(--theme-deep,#733a49)!important;
    font-size:9px!important;
    font-weight:950!important;
    line-height:1!important;
    white-space:nowrap!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle[aria-expanded="true"] .book-talk-members-button-count{
    background:#fff!important;
    color:var(--theme-deep,#733a49)!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-chevron{
    font-size:17px!important;
    font-weight:950!important;
    line-height:.7!important;
    transform:none!important;
    transition:transform .22s ease!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersToggle[aria-expanded="true"] .book-talk-members-button-chevron{
    transform:rotate(180deg)!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersBackdrop.book-talk-members-drawer-backdrop,
html body[data-current-view="book_talk"]>#bookTalkMembersBackdrop.book-talk-members-drawer-backdrop{
    position:fixed!important;
    z-index:9550!important;
    inset:0!important;
    display:block!important;
    width:100vw!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:rgba(50,22,34,.14)!important;
    cursor:default!important;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersBackdrop.book-talk-members-drawer-backdrop[hidden],
html body[data-current-view="book_talk"]>#bookTalkMembersBackdrop.book-talk-members-drawer-backdrop[hidden]{
    display:none!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersPanel.book-talk-members-panel,
html body[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel{
    position:fixed!important;
    z-index:9600!important;
    top:20px!important;
    right:0!important;
    bottom:20px!important;
    left:auto!important;
    display:block!important;
    width:clamp(290px,25vw,350px)!important;
    max-width:calc(100vw - 56px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    border:1px solid var(--theme-border,#dcbec7)!important;
    border-right:0!important;
    border-radius:18px 0 0 18px!important;
    background:var(--theme-surface,#fff)!important;
    box-shadow:0 22px 60px rgba(65,25,40,.24)!important;
    box-sizing:border-box!important;
    isolation:isolate!important;
    transform:translate3d(100%,0,0)!important;
    transition:transform .34s cubic-bezier(.22,.78,.2,1),box-shadow .22s ease!important;
    pointer-events:none!important;
    backface-visibility:hidden!important;
    -webkit-backface-visibility:hidden!important;
    will-change:transform!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersPanel.book-talk-members-panel.mobile-members-open,
html body[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel.mobile-members-open{
    transform:translate3d(0,0,0)!important;
    box-shadow:-18px 24px 64px rgba(65,25,40,.28)!important;
    pointer-events:auto!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-body{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
    border-radius:17px 0 0 17px!important;
    background:var(--theme-surface,#fff)!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-tab{
    position:absolute!important;
    z-index:4!important;
    top:clamp(82px,18vh,164px)!important;
    left:-48px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    width:48px!important;
    min-width:48px!important;
    height:154px!important;
    min-height:154px!important;
    margin:0!important;
    padding:10px 6px!important;
    border:1px solid color-mix(in srgb,var(--theme-base,#d86d83) 74%,#fff 26%)!important;
    border-right:0!important;
    border-radius:15px 0 0 15px!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--theme-base,#d86d83) 94%,#ff9ab1 6%),color-mix(in srgb,var(--theme-deep,#733a49) 88%,#d86d83 12%))!important;
    color:#fff!important;
    box-shadow:-8px 10px 24px rgba(70,21,39,.25),inset 0 1px 0 rgba(255,255,255,.3)!important;
    cursor:pointer!important;
    pointer-events:auto!important;
    user-select:none!important;
    -webkit-tap-highlight-color:transparent!important;
    transform:none!important;
    transition:filter .18s ease,box-shadow .18s ease!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-tab:hover{
    filter:brightness(1.06)!important;
    box-shadow:-11px 12px 29px rgba(70,21,39,.31),inset 0 1px 0 rgba(255,255,255,.36)!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-tab:focus-visible{
    outline:3px solid #fff!important;
    outline-offset:-5px!important;
    box-shadow:-11px 12px 29px rgba(70,21,39,.31),0 0 0 4px var(--theme-base,#d86d83)!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-icon{
    display:block!important;
    font-size:17px!important;
    line-height:1!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-label{
    display:block!important;
    writing-mode:vertical-rl!important;
    transform:rotate(180deg)!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:950!important;
    line-height:1!important;
    letter-spacing:.055em!important;
    text-transform:uppercase!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-count{
    display:grid!important;
    place-items:center!important;
    min-width:24px!important;
    height:24px!important;
    padding:0 5px!important;
    border:1px solid rgba(255,255,255,.82)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:var(--theme-deep,#733a49)!important;
    font-size:10px!important;
    font-weight:950!important;
    line-height:1!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-chevron{
    display:block!important;
    color:#fff!important;
    font-size:22px!important;
    font-weight:900!important;
    line-height:.7!important;
    transform:none!important;
    transition:transform .22s ease!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel.mobile-members-open .book-talk-members-drawer-chevron{
    transform:rotate(180deg)!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-head{
    position:relative!important;
    z-index:2!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:0!important;
    gap:10px!important;
    padding:14px!important;
    border:0!important;
    border-bottom:1px solid var(--line)!important;
    border-radius:17px 0 0 0!important;
    background:var(--theme-pale,#fff7f9)!important;
    color:var(--ink)!important;
    box-shadow:none!important;
    cursor:default!important;
    transform:none!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-head::after{
    content:none!important;
    display:none!important;
    animation:none!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-head h3{
    margin:0!important;
    color:var(--ink)!important;
    font-size:16px!important;
    font-weight:950!important;
    line-height:1.15!important;
    text-shadow:none!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-mobile-hint{
    display:block!important;
    margin-top:4px!important;
    color:var(--muted)!important;
    font-size:9.5px!important;
    font-weight:750!important;
    line-height:1.2!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-head .book-talk-member-count{
    display:grid!important;
    place-items:center!important;
    min-width:34px!important;
    height:34px!important;
    padding:0 9px!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--theme-base,#d86d83)!important;
    color:var(--theme-on-base,#fff)!important;
    font-size:12px!important;
    font-weight:950!important;
    box-shadow:none!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-search{
    position:relative!important;
    z-index:2!important;
    flex:0 0 auto!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
}
html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-scroll{
    flex:1 1 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    background:var(--theme-surface,#fff)!important;
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] .book-talk-workspace{
        padding-bottom:0!important;
    }
    html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersPanel.book-talk-members-panel,
    html body[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel{
        top:calc(72px + env(safe-area-inset-top,0px))!important;
        right:0!important;
        bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
        left:auto!important;
        width:min(340px,calc(100vw - 56px))!important;
        max-width:calc(100vw - 56px)!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        padding:0!important;
        border-left:1px solid var(--theme-border,#dcbec7)!important;
        border-right:0!important;
        border-bottom:1px solid var(--theme-border,#dcbec7)!important;
        border-radius:17px 0 0 17px!important;
    }
    html body.book-talk-mobile-private-active[data-current-view="book_talk"] #bookClubTalkApp.mobile-private-chat-fill>#bookTalkMembersPanel.book-talk-members-panel,
    html body.book-talk-mobile-feed-active[data-current-view="book_talk"] #bookClubTalkApp.mobile-public-feed-fill>#bookTalkMembersPanel.book-talk-members-panel,
    html body.book-talk-mobile-private-active[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel,
    html body.book-talk-mobile-feed-active[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel{
        top:calc(var(--book-talk-mobile-private-top,70px) + 8px)!important;
        right:0!important;
        bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
        left:auto!important;
        width:min(340px,calc(100vw - 56px))!important;
        max-width:calc(100vw - 56px)!important;
        height:auto!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-tab{
        top:62px!important;
        left:-46px!important;
        width:46px!important;
        min-width:46px!important;
        height:146px!important;
        min-height:146px!important;
        border-radius:14px 0 0 14px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-body{
        border-radius:16px 0 0 16px!important;
    }
    html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button{
        gap:4px!important;
        padding-right:6px!important;
        padding-left:6px!important;
    }
}
@media(prefers-reduced-motion:reduce){
    html body[data-current-view="book_talk"] #bookClubTalkApp>#bookTalkMembersPanel.book-talk-members-panel,
    html body[data-current-view="book_talk"]>#bookTalkMembersPanel.book-talk-members-panel,
    html body[data-current-view="book_talk"] #bookTalkMembersPanel .book-talk-members-drawer-chevron,
    html body[data-current-view="book_talk"] #bookTalkMembersToggle .book-talk-members-button-chevron,
    html body[data-current-view="book_talk"] #bookTalkFeedControls>#bookTalkMembersToggle.book-talk-members-button{
        transition:none!important;
    }
}

/* COURTREADZ 8.1.136 — cascade lock for the Admin account page.
   Kept last so legacy responsive rules cannot reintroduce fixed heights or overlap. */
html body[data-current-view="members"] .members-grid.members-page-stack{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-items:start!important;
    align-content:start!important;
    gap:16px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
html body[data-current-view="members"] .members-page-stack > .panel,
html body[data-current-view="members"] .create-account-panel,
html body[data-current-view="members"] .registered-accounts-panel{
    position:relative!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid .field,
html body[data-current-view="members"] .create-account-panel .form-grid .span-2,
html body[data-current-view="members"] .create-account-panel input,
html body[data-current-view="members"] .create-account-panel select,
html body[data-current-view="members"] .create-account-panel button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
}
html body[data-current-view="members"] .create-account-panel .form-grid .span-2{
    grid-column:1/-1!important;
}
html body[data-current-view="members"] .registered-accounts-panel{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-list{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:start!important;
    gap:10px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
    scrollbar-gutter:auto!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-row{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(280px,.82fr) minmax(520px,1.18fr)!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:13px!important;
    overflow:visible!important;
    contain:none!important;
    box-sizing:border-box!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-identity{
    display:grid!important;
    grid-template-columns:42px minmax(0,1fr)!important;
    align-items:center!important;
    gap:11px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-summary,
html body[data-current-view="members"] .registered-accounts-panel .account-name-line,
html body[data-current-view="members"] .registered-accounts-panel .account-meta-line,
html body[data-current-view="members"] .registered-accounts-panel .account-subscription-renewal{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions{
    display:grid!important;
    grid-template-columns:minmax(176px,1fr) auto minmax(230px,1.15fr) auto!important;
    align-items:end!important;
    justify-content:stretch!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .member-actions > *,
html body[data-current-view="members"] .registered-accounts-panel .member-actions > form,
html body[data-current-view="members"] .registered-accounts-panel .member-actions > label{
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    box-sizing:border-box!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-control{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"type-label type-status" "type-select type-select"!important;
    align-items:center!important;
    gap:5px 8px!important;
    width:100%!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-control > span{grid-area:type-label!important}
html body[data-current-view="members"] .registered-accounts-panel .account-type-select{
    grid-area:type-select!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
}
html body[data-current-view="members"] .registered-accounts-panel .account-type-save-status{
    grid-area:type-status!important;
    width:auto!important;
    min-width:0!important;
    max-width:96px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
    display:grid!important;
    grid-template-columns:minmax(118px,1fr) auto!important;
    align-items:end!important;
    gap:7px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}
html body[data-current-view="members"] .registered-accounts-panel .password-reset-form input,
html body[data-current-view="members"] .registered-accounts-panel .member-actions button{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    margin:0!important;
    box-sizing:border-box!important;
}
@media(max-width:1450px){
    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        grid-template-columns:minmax(0,1fr)!important;
        align-items:stretch!important;
    }
}
@media(max-width:1200px){
    html body[data-current-view="members"] .create-account-panel .form-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media(max-width:980px){
    html body[data-current-view="members"] .registered-accounts-panel .member-actions{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        align-items:stretch!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control,
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-column:1/-1!important;
        width:100%!important;
    }
}
@media(max-width:760px){
    html body[data-current-view="members"] .workspace{
        padding-left:max(8px,env(safe-area-inset-left))!important;
        padding-right:max(8px,env(safe-area-inset-right))!important;
        overflow-x:hidden!important;
    }
    html body[data-current-view="members"] .members-grid.members-page-stack{gap:10px!important}
    html body[data-current-view="members"] .members-page-stack > .panel{padding:13px!important}
    html body[data-current-view="members"] .create-account-panel .form-grid{
        grid-template-columns:minmax(0,1fr)!important;
        gap:9px!important;
    }
    html body[data-current-view="members"] .create-account-panel .form-grid .span-2{grid-column:auto!important}
    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        grid-template-columns:minmax(0,1fr)!important;
        gap:11px!important;
        padding:10px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions{
        grid-template-columns:minmax(0,1fr)!important;
        gap:7px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > *,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > form,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > label,
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control,
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-column:auto!important;
        width:100%!important;
        max-width:100%!important;
    }
}
@media(max-width:420px){
    html body[data-current-view="members"] .registered-accounts-panel .account-identity{
        grid-template-columns:38px minmax(0,1fr)!important;
        gap:8px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        grid-template-columns:minmax(0,1fr)!important;
    }
}

/* COURTREADZ 8.1.82 — unmistakable permanent Raffle navigation control.
   This is intentionally the last authenticated-navigation rule in the cascade. */
html body .app-shell > aside.sidebar a.raffle-nav-link.raffle-permanent-entry,
html body .app-shell > aside.sidebar a.raffle-nav-link[data-raffle-ready="1"]{
    box-sizing:border-box!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    text-decoration:none!important;
}
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link.raffle-permanent-entry,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"]{
        position:relative!important;
        flex:0 0 42px!important;
        width:100%!important;
        min-width:0!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
        margin:0!important;
        padding:6px 7px!important;
        gap:7px!important;
        align-items:center!important;
        overflow:hidden!important;
        border:2px solid #e2a82f!important;
        border-radius:9px!important;
        background:linear-gradient(135deg,#fff8cf 0%,#ffe69a 52%,#ffd477 100%)!important;
        color:#6b3d00!important;
        box-shadow:0 4px 10px rgba(128,79,0,.16)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link.raffle-permanent-entry.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"].active{
        border-color:#a43b5d!important;
        background:linear-gradient(180deg,#df6386 0%,#c93e69 100%)!important;
        color:#fff!important;
        box-shadow:0 5px 12px rgba(139,37,68,.20)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .raffle-ticket-icon{
        display:inline-grid!important;
        place-items:center!important;
        flex:0 0 22px!important;
        width:22px!important;
        min-width:22px!important;
        height:22px!important;
        min-height:22px!important;
        margin:0!important;
        padding:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:17px!important;
        line-height:22px!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .nav-label{
        display:block!important;
        flex:1 1 auto!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:12px!important;
        font-weight:950!important;
        line-height:20px!important;
        white-space:nowrap!important;
    }
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link.raffle-permanent-entry,
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link[data-raffle-ready="1"]{
        grid-column:1/-1!important;
        justify-content:flex-start!important;
        min-height:48px!important;
        padding:10px 12px!important;
        gap:8px!important;
        border:2px solid #ffd87b!important;
        border-radius:10px!important;
        background:linear-gradient(135deg,#b64d69 0%,#8f344f 100%)!important;
        color:#fff!important;
        font-size:13px!important;
        font-weight:950!important;
        box-shadow:0 5px 14px rgba(73,20,38,.24)!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link .raffle-mobile-ticket{
        display:inline!important;
        flex:0 0 auto!important;
        font-size:18px!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link .raffle-nav-badge{
        margin-left:auto!important;
    }
}

/* COURTREADZ 8.1.79 — Member Raffle and Admin draw controls. */
.app-shell .sidebar .raffle-nav-link{position:relative;border-color:rgba(var(--theme-rgb,216,109,131),.24)!important;background:linear-gradient(90deg,rgba(var(--theme-rgb,216,109,131),.08),rgba(255,255,255,.6))!important}
.app-shell .sidebar .raffle-nav-link.active{background:linear-gradient(90deg,var(--theme,#d86d83),var(--theme-dark,#b84f68))!important;color:var(--theme-on,#fff)!important}
.raffle-nav-badge{display:inline-grid;place-items:center;flex:0 0 auto;min-width:29px;height:17px;margin-left:auto;padding:0 5px;border-radius:999px;background:#f2b63f;color:#5d3b00;font-size:8px;font-weight:950;letter-spacing:.04em;line-height:1;box-shadow:0 2px 6px rgba(132,84,0,.16)}
.raffle-nav-link.active .raffle-nav-badge{background:#fff1b8;color:#684700}
.member-mobile-dropdown .raffle-nav-link{display:flex!important;align-items:center!important;gap:7px!important}
.raffle-page{display:grid;gap:18px;width:min(1120px,100%);margin:0 auto;padding-bottom:30px}
.raffle-page-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:128px;padding:24px 28px;overflow:hidden;border:1px solid rgba(var(--theme-rgb,216,109,131),.25);border-radius:24px;background:linear-gradient(135deg,rgba(var(--theme-rgb,216,109,131),.16),rgba(255,255,255,.96) 48%,rgba(255,220,181,.4));box-shadow:0 18px 45px rgba(86,35,53,.1)}
.raffle-page-head::after{content:"";position:absolute;right:-65px;bottom:-115px;width:260px;height:260px;border:42px solid rgba(var(--theme-rgb,216,109,131),.09);border-radius:50%;pointer-events:none}
.raffle-page-head>div:first-child{position:relative;z-index:1;min-width:0}
.raffle-kicker{display:block;margin-bottom:5px;color:var(--theme-deep,#8b4658);font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.raffle-page-head h2{margin:0;color:#54283a;font-size:clamp(28px,4vw,44px);line-height:1.05;letter-spacing:-.035em}
.raffle-page-head p{max-width:680px;margin:9px 0 0;color:#81596a;font-size:14px;font-weight:650;line-height:1.5}
.raffle-head-mark{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 auto;width:82px;height:82px;border:2px solid rgba(var(--theme-rgb,216,109,131),.35);border-radius:25px;background:linear-gradient(145deg,#fff,rgba(var(--theme-rgb,216,109,131),.15));color:var(--theme,#d86d83);font-size:50px;font-weight:400;line-height:1;box-shadow:0 12px 26px rgba(var(--theme-rgb,216,109,131),.18)}
.raffle-create-panel{padding:22px!important;border-radius:22px!important}
.raffle-create-panel .panel-head{margin-bottom:16px}
.raffle-create-panel .panel-head h3{margin:0;color:#5a2b3d;font-size:20px}
.raffle-create-panel .panel-head p{margin:4px 0 0;color:var(--muted,#866876)}
.raffle-create-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(220px,.72fr);gap:14px}
.raffle-create-form .field{display:grid;align-content:start;gap:7px;min-width:0;margin:0}
.raffle-create-form .field>span{color:#633448;font-size:12px;font-weight:850}
.raffle-create-form .field>span small{color:#9a7c89;font-size:10px;font-weight:700}
.raffle-create-form input,.raffle-create-form textarea{box-sizing:border-box;width:100%;min-width:0;border:1px solid #e3c9d1;border-radius:12px;background:#fff;color:#4f2938;font:inherit;outline:none}
.raffle-create-form input{height:44px;padding:0 12px}
.raffle-create-form textarea{min-height:104px;padding:11px 12px;line-height:1.5;resize:vertical}
.raffle-create-form input:focus,.raffle-create-form textarea:focus{border-color:var(--theme,#d86d83);box-shadow:0 0 0 3px rgba(var(--theme-rgb,216,109,131),.14)}
.raffle-description-field{grid-column:1/-1}
.raffle-create-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:2px}
.raffle-create-actions>span{color:#8b6e79;font-size:12px;font-weight:700}
.raffle-create-actions .primary{min-width:180px}
.raffle-admin-notice{padding:13px 16px;border:1px solid #f0cbd3;border-radius:14px;background:#fff7f8;color:#774255;font-size:13px;font-weight:800;text-align:center}
.raffle-current-card{position:relative;padding:0!important;overflow:hidden!important;border:1px solid rgba(var(--theme-rgb,216,109,131),.32)!important;border-radius:24px!important;background:linear-gradient(180deg,#fff 0%,#fffafb 100%)!important;box-shadow:0 22px 55px rgba(83,35,52,.12)!important}
.raffle-current-card::before{content:"";display:block;height:7px;background:linear-gradient(90deg,var(--theme,#d86d83),#f3a6b4,#f5c97b,var(--theme,#d86d83))}
.raffle-ticket-edge{position:absolute;z-index:2;top:132px;width:28px;height:28px;border:1px solid rgba(var(--theme-rgb,216,109,131),.22);border-radius:50%;background:var(--app-bg,#f7f2f4);pointer-events:none}
.raffle-ticket-edge-left{left:-15px}.raffle-ticket-edge-right{right:-15px}
.raffle-current-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:26px 30px 18px}
.raffle-current-head>div:first-child{min-width:0}
.raffle-current-head h3{margin:10px 0 0;color:#4d2635;font-size:clamp(24px,4vw,36px);line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}
.raffle-status{display:inline-flex;align-items:center;min-height:25px;padding:0 10px;border:1px solid #e1c7cf;border-radius:999px;background:#f6eef1;color:#82596a;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.raffle-status.is-open{border-color:#a8d7b2;background:#eefaf1;color:#2f7540}
.raffle-status-drawn{border-color:#e9c76f;background:#fff8df;color:#806019}
.raffle-status-cancelled{border-color:#e6bec7;background:#fff0f2;color:#a13f54}
.raffle-entry-total{display:grid;place-items:center;flex:0 0 auto;min-width:90px;padding:12px 16px;border:1px solid rgba(var(--theme-rgb,216,109,131),.2);border-radius:17px;background:rgba(var(--theme-rgb,216,109,131),.07)}
.raffle-entry-total strong{color:var(--theme-deep,#8b4658);font-size:28px;line-height:1}
.raffle-entry-total span{margin-top:4px;color:#936b7a;font-size:10px;font-weight:850;text-transform:uppercase}
.raffle-prize{display:flex;align-items:center;gap:13px;margin:0 30px;padding:17px 18px;border:1px dashed rgba(var(--theme-rgb,216,109,131),.42);border-radius:15px;background:linear-gradient(90deg,rgba(var(--theme-rgb,216,109,131),.09),rgba(255,241,198,.35))}
.raffle-prize span{flex:0 0 auto;padding:5px 8px;border-radius:8px;background:var(--theme,#d86d83);color:#fff;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.raffle-prize strong{min-width:0;color:#5c3040;font-size:18px;overflow-wrap:anywhere}
.raffle-description{margin:18px 30px 0;color:#6f5160;font-size:14px;font-weight:600;line-height:1.65}
.raffle-dates{display:flex;flex-wrap:wrap;gap:8px 18px;margin:17px 30px 0;padding-bottom:21px;border-bottom:1px dashed #e5d1d7;color:#987785;font-size:11px;font-weight:750}
.raffle-winner-banner{display:flex;align-items:center;gap:17px;margin:22px 30px;padding:20px;border:1px solid #e9c968;border-radius:18px;background:linear-gradient(135deg,#fff9df,#fff 58%,#ffefd0);box-shadow:0 13px 28px rgba(165,124,29,.1)}
.raffle-winner-banner.is-current-user{border-color:#d89b25;background:linear-gradient(135deg,#fff2bd,#fffdf2 54%,#ffe3a2);box-shadow:0 0 0 4px rgba(235,179,55,.15),0 16px 32px rgba(165,124,29,.16)}
.raffle-winner-crown{display:grid;place-items:center;flex:0 0 auto;width:54px;height:54px;border-radius:16px;background:#f4b93e;color:#fff;font-size:26px;box-shadow:inset 0 0 0 5px rgba(255,255,255,.28)}
.raffle-winner-banner>div{display:grid;min-width:0;gap:2px}
.raffle-winner-banner small{color:#966c1b;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.raffle-winner-banner strong{color:#5b3a0d;font-size:24px;line-height:1.15;overflow-wrap:anywhere}
.raffle-winner-banner span:last-child{color:#9c7d43;font-size:11px;font-weight:700}
.raffle-member-action{display:grid;justify-items:center;gap:8px;margin:22px 30px;padding:24px;border-radius:18px;background:#fff4f6;text-align:center}
.raffle-member-action form{width:min(360px,100%)}
.raffle-join-button,.raffle-joined-button,.raffle-closed-button{width:min(360px,100%);min-height:50px;border-radius:14px!important;font-size:15px!important;font-weight:900!important}
.raffle-joined-button,.raffle-closed-button{border:1px solid #aedab7;background:#eefaf1;color:#2e7340;cursor:default}
.raffle-closed-button{border-color:#dbc7ce;background:#f7f2f4;color:#846674}
.raffle-joined-button span{margin-right:5px}
.raffle-member-action p{margin:0;color:#927381;font-size:11px;font-weight:700}
.raffle-admin-controls{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:22px 30px}
.raffle-admin-controls form{margin:0}
.raffle-admin-controls button{min-height:40px}
.raffle-admin-controls button:disabled{opacity:.5;cursor:not-allowed}
.raffle-cancel-button{width:auto!important;padding:0 14px!important}
.raffle-entries-panel{margin:0 30px 30px;border:1px solid #ead9de;border-radius:17px;background:#fff;overflow:hidden}
.raffle-entries-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border-bottom:1px solid #eee1e5;background:#fffafb}
.raffle-entries-head h4{margin:0;color:#5b3040;font-size:15px}.raffle-entries-head p{margin:2px 0 0;color:#9a7b87;font-size:10px;font-weight:650}
.raffle-entries-head>span{display:grid;place-items:center;min-width:34px;height:28px;padding:0 7px;border-radius:999px;background:rgba(var(--theme-rgb,216,109,131),.12);color:var(--theme-deep,#8b4658);font-size:12px;font-weight:900}
.raffle-no-entries{padding:30px;color:#9b7f89;font-size:13px;font-weight:700;text-align:center}
.raffle-entry-list{display:grid;max-height:390px;overflow:auto}
.raffle-entry-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #f2e8eb}
.raffle-entry-row:last-child{border-bottom:0}.raffle-entry-row>span{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#f6ecef;color:#8b5e6e;font-size:11px;font-weight:900}
.raffle-entry-row>div{display:grid;min-width:0;gap:2px}.raffle-entry-row strong{color:#5d3443;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.raffle-entry-row small{color:#a08590;font-size:10px;font-weight:650}
.raffle-entry-row em{padding:4px 8px;border-radius:999px;background:#fff1bd;color:#805f12;font-size:9px;font-style:normal;font-weight:900;text-transform:uppercase}.raffle-entry-row.is-winner{background:#fffaf0}
.raffle-empty-card{display:grid;justify-items:center;padding:54px 24px!important;border-radius:22px!important;text-align:center}.raffle-empty-icon{display:grid;place-items:center;width:68px;height:68px;margin-bottom:13px;border-radius:21px;background:rgba(var(--theme-rgb,216,109,131),.1);color:var(--theme,#d86d83);font-size:42px}.raffle-empty-card h3{margin:0;color:#5c3041;font-size:21px}.raffle-empty-card p{max-width:520px;margin:7px 0 0;color:#927482;font-size:13px;font-weight:650}
.raffle-history{display:grid;gap:12px}.raffle-history-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 3px}.raffle-history-head h3{margin:0;color:#5b3040;font-size:18px}.raffle-history-head span{color:#9b7d88;font-size:11px;font-weight:800}
.raffle-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.raffle-history-card{display:grid;align-content:start;gap:7px;min-width:0;padding:16px;border:1px solid #e8d6dc;border-radius:16px;background:#fff;box-shadow:0 10px 24px rgba(83,35,52,.06)}
.raffle-history-card>span{color:var(--theme-deep,#8b4658);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.raffle-history-card h4{margin:0;color:#5b3040;font-size:15px;overflow-wrap:anywhere}.raffle-history-card p{margin:0;color:#846674;font-size:12px;font-weight:650;overflow-wrap:anywhere}.raffle-history-card>div{display:grid;gap:3px;margin-top:5px;padding-top:9px;border-top:1px solid #f0e5e8}.raffle-history-card small{color:#a0838e;font-size:10px;font-weight:750}.raffle-history-card strong{color:#6a3b4d;font-size:11px;overflow-wrap:anywhere}
@media(max-width:900px){.raffle-create-form{grid-template-columns:1fr 1fr}.raffle-create-form .field:nth-of-type(3){grid-column:1/-1}.raffle-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.raffle-page{gap:12px;padding:0 0 18px}.raffle-page-head{min-height:0;padding:18px;border-radius:18px}.raffle-page-head h2{font-size:29px}.raffle-page-head p{font-size:12px}.raffle-head-mark{width:56px;height:56px;border-radius:17px;font-size:34px}.raffle-create-panel{padding:16px!important;border-radius:17px!important}.raffle-create-form{grid-template-columns:1fr;gap:11px}.raffle-create-form .field:nth-of-type(3),.raffle-description-field,.raffle-create-actions{grid-column:auto}.raffle-create-actions{align-items:stretch;flex-direction:column}.raffle-create-actions .primary{width:100%}.raffle-current-card{border-radius:18px!important}.raffle-current-head{padding:20px 18px 15px}.raffle-current-head h3{font-size:25px}.raffle-entry-total{min-width:68px;padding:10px}.raffle-entry-total strong{font-size:23px}.raffle-prize{align-items:flex-start;margin:0 18px;padding:14px}.raffle-prize strong{font-size:15px}.raffle-description{margin:15px 18px 0;font-size:13px}.raffle-dates{display:grid;gap:5px;margin:14px 18px 0;padding-bottom:16px}.raffle-winner-banner,.raffle-member-action{margin:17px 18px;padding:17px}.raffle-winner-banner strong{font-size:20px}.raffle-winner-crown{width:46px;height:46px}.raffle-admin-controls{display:grid;grid-template-columns:1fr;margin:17px 18px}.raffle-admin-controls form,.raffle-admin-controls button{width:100%!important}.raffle-entries-panel{margin:0 18px 18px}.raffle-entry-row{padding:11px 12px}.raffle-history-grid{grid-template-columns:1fr}.raffle-ticket-edge{top:112px}}

/* COURTREADZ 8.1.72 — iPhone Safari stable keyboard surface. iOS does not use
   the Android document-scroll alignment path: the rigid card receives one
   debounced compositor transform after visualViewport has settled. */
@media(max-width:760px){
    html.login-document.login-ios-device.login-keyboard-open{
        position:fixed!important;
        inset:0!important;
        width:100%!important;
        height:var(--login-stable-viewport-height,100vh)!important;
        min-height:0!important;
        max-height:none!important;
        overflow:hidden!important;
        overscroll-behavior:none!important;
    }
    html.login-document.login-ios-device.login-keyboard-open body.login-body{
        position:fixed!important;
        inset:0!important;
        width:var(--login-mobile-layout-width,100vw)!important;
        height:var(--login-stable-viewport-height,100vh)!important;
        min-height:0!important;
        max-height:none!important;
        overflow:hidden!important;
        overscroll-behavior:none!important;
    }
    html.login-document.login-ios-device.login-keyboard-open body.login-body > .login-page,
    html.login-document.login-ios-device.login-keyboard-open body.login-body > .login-page > .login-art,
    html.login-document.login-ios-device.login-keyboard-open body.login-body .login-page .login-stack{
        position:fixed!important;
        inset:0!important;
        width:var(--login-mobile-layout-width,100vw)!important;
        height:var(--login-stable-viewport-height,100vh)!important;
        min-height:0!important;
        max-height:none!important;
        overflow:hidden!important;
        overscroll-behavior:none!important;
    }
    html.login-document.login-ios-device.login-keyboard-open body.login-body .login-page .login-fitted-group{
        position:fixed!important;
        inset:auto!important;
        left:0!important;
        right:auto!important;
        top:var(--login-group-top,max(5px,env(safe-area-inset-top,0px)))!important;
        bottom:auto!important;
        width:var(--login-mobile-layout-width,100vw)!important;
        min-width:var(--login-mobile-layout-width,100vw)!important;
        max-width:var(--login-mobile-layout-width,100vw)!important;
        height:auto!important;
        margin:0!important;
        padding-bottom:0!important;
        overflow:visible!important;
        transform:translate3d(0,var(--login-ios-keyboard-shift,0px),0)!important;
        transform-origin:center top!important;
        transition:transform 280ms cubic-bezier(.22,.74,.24,1)!important;
        will-change:transform!important;
    }
    html.login-document.login-ios-device.login-keyboard-open body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        transform:translate3d(0,var(--login-ios-keyboard-shift,0px),0) scale(var(--login-register-fit-scale,1))!important;
        transform-origin:center top!important;
    }
    html.login-document.login-ios-device.login-keyboard-open body.login-body .login-panel,
    html.login-document.login-ios-device.login-keyboard-open body.login-body .login-box,
    html.login-document.login-ios-device.login-keyboard-open body.login-body .auth-pane{
        touch-action:manipulation!important;
    }
}

/* COURTREADZ 8.1.73 — iPhone application-header safe area. The header logo,
   COURTREADZ title, hamburger and its dropdown always begin below the Apple
   time/signal/Wi-Fi/battery area, including the compact Live Stream view. */
@media(max-width:760px){
    html.app-document.ios-device{
        --courthreadz-ios-status-top:max(env(safe-area-inset-top,0px),20px);
    }
    html.app-document.ios-device body .app-shell > aside.sidebar,
    html.app-document.ios-device body.stream-mobile-page .app-shell > aside.sidebar{
        padding-top:calc(8px + var(--courthreadz-ios-status-top))!important;
    }
    html.app-document.ios-device body.stream-mobile-page .app-shell > aside.sidebar{
        padding-top:calc(7px + var(--courthreadz-ios-status-top))!important;
    }
}

/* COURTREADZ 8.0.76 — sidebar labels wrap only between whole words. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active) .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active .nav-label{
        white-space:normal!important;
        overflow-wrap:normal!important;
        word-wrap:normal!important;
        word-break:normal!important;
        hyphens:none!important;
        -webkit-hyphens:none!important;
        line-break:auto!important;
    }
}

/* COURTREADZ 8.0.77 — sidebar icons turn pink on hover/highlight. */
@media(min-width:761px){
    /* Resting icons stay muted so the pink interaction state is obvious. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active):not(.nav-pressed) .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav:not(:hover):not(:focus-visible) .nav-icon{
        color:#8f6a76!important;
        transition:color .16s ease,filter .16s ease!important;
    }

    /* Hovered / keyboard-focused / pressed navigation icons become pink. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active):hover .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active):focus-visible .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed:not(.active) .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav:hover .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav:focus-visible .nav-icon{
        color:#df3f75!important;
        filter:drop-shadow(0 1px 2px rgba(223,63,117,.16))!important;
    }

    /* The selected/highlighted page icon is pink as well, with enough contrast on the strong button. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:hover .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus-visible .nav-icon,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:active .nav-icon{
        color:#ffd6e3!important;
        background:transparent!important;
        border:0!important;
        box-shadow:none!important;
        filter:drop-shadow(0 1px 1px rgba(105,24,49,.18))!important;
    }
}


/* COURTREADZ 8.0.78 — first sidebar label line aligns directly with its icon. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active{
        align-items:flex-start!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-icon{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        flex:0 0 21px!important;
        width:21px!important;
        min-width:21px!important;
        height:21px!important;
        min-height:21px!important;
        margin:0!important;
        padding:0!important;
        line-height:21px!important;
        vertical-align:top!important;
        align-self:flex-start!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active) .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active .nav-label{
        display:block!important;
        min-width:0!important;
        margin:0!important;
        padding:0!important;
        line-height:21px!important;
        text-align:left!important;
        white-space:normal!important;
        overflow-wrap:normal!important;
        word-break:normal!important;
        hyphens:none!important;
    }

    /* Keep badges aligned to the same first row without stealing label width. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .announcement-unread-count{
        margin-top:0!important;
        min-height:21px!important;
        align-self:flex-start!important;
    }
}

/* COURTREADZ 8.0.79 — neater, tighter desktop/tablet left sidebar.
   Keeps the existing book treatment and scroll behaviour, while reducing the
   unused right-side gutter and making the navigation buttons more consistent. */
@media(min-width:761px){
    /* Bring the right edge of the left panel closer to the navigation. */
    html body .app-shell{
        grid-template-columns:242px minmax(0,1fr)!important;
    }
    html body .app-shell > aside.sidebar,
    html body .app-shell > aside.sidebar.sidebar-stable{
        padding-left:36px!important;
        padding-right:7px!important;
        gap:8px!important;
    }
    html body .app-shell > aside.sidebar::after{
        right:5px!important;
        left:32px!important;
    }

    /* Tighter scroll area so the button stack sits neatly inside the page frame. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav{
        margin:2px 0 5px!important;
        padding:2px 0 5px!important;
        gap:5px!important;
        scrollbar-gutter:auto!important;
    }

    /* Uniform button geometry for selected and unselected navigation items. */
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:active{
        min-height:40px!important;
        margin:0!important;
        padding:7px 7px 7px 6px!important;
        gap:7px!important;
        border-radius:8px!important;
        align-items:flex-start!important;
        line-height:1.16!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active),
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav{
        border:1px solid rgba(211,126,151,.30)!important;
        background:linear-gradient(180deg,rgba(255,251,247,.98),rgba(255,241,244,.92))!important;
        box-shadow:0 1px 2px rgba(118,44,67,.04)!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active):hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active):focus-visible,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav:hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav:focus-visible{
        border-color:rgba(220,78,119,.54)!important;
        background:linear-gradient(180deg,#fff7f8,#fde8ee)!important;
        box-shadow:0 3px 8px rgba(168,53,88,.08)!important;
        transform:none!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:active{
        border:1px solid #c94d73!important;
        background:linear-gradient(180deg,#df6386 0%,#d34972 100%)!important;
        box-shadow:0 4px 9px rgba(161,45,79,.15),inset 0 1px rgba(255,255,255,.24)!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-icon{
        flex:0 0 20px!important;
        width:20px!important;
        min-width:20px!important;
        height:20px!important;
        min-height:20px!important;
        line-height:20px!important;
        margin:0!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active) .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active .nav-label{
        line-height:20px!important;
        font-size:12.5px!important;
        font-weight:720!important;
        letter-spacing:0!important;
        white-space:normal!important;
        overflow-wrap:normal!important;
        word-break:normal!important;
        hyphens:none!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .announcement-unread-count{
        margin-left:4px!important;
        margin-right:0!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .subscription-dot{
        left:19px!important;
    }

    /* Match the tighter navigation width at the bottom without touching page content. */
    html body .app-shell > aside.sidebar .sidebar-bottom{
        padding-left:0!important;
        padding-right:0!important;
    }
    html body .app-shell > aside.sidebar .logout-form button{
        min-height:40px!important;
        padding:8px 8px!important;
        border-radius:8px!important;
    }
}

/* Keep the sidebar compact on narrower desktop/tablet widths too. */
@media(min-width:761px) and (max-width:1050px){
    html body .app-shell{
        grid-template-columns:218px minmax(0,1fr)!important;
    }
    html body .app-shell > aside.sidebar,
    html body .app-shell > aside.sidebar.sidebar-stable{
        padding-left:34px!important;
        padding-right:6px!important;
    }
    html body .app-shell > aside.sidebar::after{
        left:31px!important;
        right:4px!important;
    }
}


/* COURTREADZ 8.0.80 — Sign Out overlap fix.
   Keep the exit icon in the normal flex flow so it can never sit on top of the label. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .logout-form{
        padding:0!important;
        overflow:visible!important;
    }
    html body .app-shell > aside.sidebar .logout-form button{
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:9px!important;
        min-height:40px!important;
        padding:8px 10px!important;
        line-height:1.2!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        box-sizing:border-box!important;
    }
    html body .app-shell > aside.sidebar .logout-form button::before{
        position:static!important;
        left:auto!important;
        top:auto!important;
        width:18px!important;
        height:18px!important;
        flex:0 0 18px!important;
        transform:none!important;
        -webkit-mask-size:18px 18px!important;
        mask-size:18px 18px!important;
    }
}

/* COURTREADZ 8.0.81 — compact single-line scrollable sidebar buttons.
   Keep every icon + label on one row, while using a 37px button height
   (5px taller than the extra-compact 32px target) for comfortable clicking. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.nav-pressed,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:hover,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:focus,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active:active{
        min-height:37px!important;
        height:37px!important;
        padding:5px 6px!important;
        gap:6px!important;
        align-items:center!important;
        flex-wrap:nowrap!important;
        line-height:1!important;
        overflow:hidden!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-icon{
        flex:0 0 18px!important;
        width:18px!important;
        min-width:18px!important;
        height:18px!important;
        min-height:18px!important;
        line-height:18px!important;
        align-self:center!important;
        margin:0!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a:not(.active) .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav button.member-stream-videos-nav .nav-label,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.active .nav-label{
        flex:1 1 auto!important;
        min-width:0!important;
        width:auto!important;
        display:block!important;
        align-self:center!important;
        margin:0!important;
        padding:0!important;
        font-size:11.5px!important;
        line-height:18px!important;
        white-space:nowrap!important;
        overflow:visible!important;
        text-overflow:clip!important;
        word-break:normal!important;
        overflow-wrap:normal!important;
        hyphens:none!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .announcement-unread-count{
        flex:0 0 auto!important;
        margin-left:auto!important;
        align-self:center!important;
    }
}

/* COURTREADZ 8.0.82 — keep the Broadcast / Live Stream pulse icon visible.
   The pulse now follows the sidebar icon colour instead of staying white. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .stream-live-indicator{
        color:#8f6a76!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .stream-live-indicator .stream-live-dot{
        background:currentColor!important;
        border-color:currentColor!important;
        color:currentColor!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav .stream-live-indicator .stream-live-ring{
        background:transparent!important;
        border-color:currentColor!important;
        color:currentColor!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link:not(.active):hover .stream-live-indicator,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link:not(.active):focus-visible .stream-live-indicator,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link.nav-pressed:not(.active) .stream-live-indicator{
        color:#df3f75!important;
    }

    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link.active .stream-live-indicator,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link.active:hover .stream-live-indicator,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav a.stream-nav-link.active:focus-visible .stream-live-indicator{
        color:#ffd6e3!important;
    }
}

/* COURTREADZ 8.0.83 — full Club logo image + Settings size slider. */
@media (min-width:761px){
    html body .app-shell > aside.sidebar .side-brand .brand-mark.has-custom-logo{
        width:var(--club-logo-size,66px)!important;
        height:var(--club-logo-size,66px)!important;
        min-width:var(--club-logo-size,66px)!important;
        min-height:var(--club-logo-size,66px)!important;
        max-width:160px!important;
        max-height:160px!important;
        padding:0!important;
        overflow:visible!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
    }
    html body .app-shell > aside.sidebar .side-brand .brand-mark.has-custom-logo img{
        display:block!important;
        width:auto!important;
        height:auto!important;
        max-width:100%!important;
        max-height:100%!important;
        object-fit:contain!important;
        object-position:center center!important;
        border-radius:0!important;
    }
}

body .admin-settings-workspace .club-logo-setting-card .club-logo-size-control{
    display:grid!important;
    gap:4px!important;
    margin-top:6px!important;
    padding:6px!important;
    border:1px solid rgba(216,109,131,.22)!important;
    border-radius:8px!important;
    background:rgba(255,250,248,.82)!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-size-control > label{
    margin:0!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.02em!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-size-row{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-size-row input[type="range"]{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    accent-color:#d86d83!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-size-row output{
    flex:0 0 48px!important;
    min-width:48px!important;
    text-align:right!important;
    font-size:9px!important;
    font-weight:800!important;
    color:#8d3853!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-size-control p{
    margin:0!important;
    font-size:9px!important;
    line-height:1.25!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-preview{
    width:min(var(--club-logo-preview-size,66px),160px)!important;
    height:min(var(--club-logo-preview-size,66px),160px)!important;
    min-width:36px!important;
    min-height:36px!important;
    padding:0!important;
    overflow:visible!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-preview img{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
}

/* COURTREADZ 8.0.84 — compact Private Video Recordings workspace. */
body[data-current-view="private_recordings"] .private-video-recordings-page{
    width:100%!important;
    min-width:0!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-panel{
    display:grid!important;
    gap:10px!important;
    min-width:0!important;
    padding:12px!important;
    border-radius:14px!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-panel > .panel-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    margin:0!important;
    padding:0 0 8px!important;
    border-bottom:1px solid rgba(138,77,96,.12)!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-panel > .panel-head > div{
    min-width:0!important;
    display:grid!important;
    gap:2px!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-panel > .panel-head h2{
    margin:0!important;
    font-size:17px!important;
    line-height:1.15!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-panel > .panel-head p{
    margin:0!important;
    font-size:10px!important;
    line-height:1.3!important;
}
body[data-current-view="private_recordings"] .private-video-recording-count{
    flex:0 0 auto!important;
    min-width:30px!important;
    width:auto!important;
    height:30px!important;
    padding:0 8px!important;
    font-size:10px!important;
    border-radius:999px!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-empty{
    padding:20px 14px!important;
    border-radius:11px!important;
    font-size:11px!important;
}
body[data-current-view="private_recordings"] .private-video-recordings-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important;
    gap:9px!important;
    min-width:0!important;
    align-items:start!important;
}
body[data-current-view="private_recordings"] .private-video-recording-card{
    display:grid!important;
    gap:6px!important;
    min-width:0!important;
    padding:8px!important;
    border-radius:12px!important;
    box-shadow:0 4px 14px rgba(35,24,43,.055)!important;
    content-visibility:auto;
    contain-intrinsic-size:auto 310px;
}
body[data-current-view="private_recordings"] .private-video-recording-preview{
    width:100%!important;
    height:116px!important;
    min-height:116px!important;
    max-height:116px!important;
    padding:8px!important;
    gap:5px!important;
    border-radius:9px!important;
}
body[data-current-view="private_recordings"] .private-video-recording-play-icon{
    width:38px!important;
    height:38px!important;
    font-size:15px!important;
    box-shadow:0 6px 18px rgba(0,0,0,.20)!important;
}
body[data-current-view="private_recordings"] .private-video-recording-preview > span:last-child{
    font-size:9px!important;
    line-height:1!important;
}
body[data-current-view="private_recordings"] .private-video-recording-copy{
    display:grid!important;
    gap:2px!important;
    min-width:0!important;
    padding:1px 1px 0!important;
}
body[data-current-view="private_recordings"] .private-video-recording-copy strong{
    font-size:12.5px!important;
    line-height:1.2!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
}
body[data-current-view="private_recordings"] .private-video-recording-copy small{
    font-size:9px!important;
    line-height:1.3!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
}
body[data-current-view="private_recordings"] .private-video-recording-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
}
body[data-current-view="private_recordings"] .private-video-recording-actions .secondary{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:31px!important;
    min-height:31px!important;
    max-height:31px!important;
    padding:4px 7px!important;
    border-radius:8px!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
    text-decoration:none!important;
}
body[data-current-view="private_recordings"] .private-video-recording-title-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 68px!important;
    align-items:end!important;
    gap:5px!important;
    padding-top:1px!important;
}
body[data-current-view="private_recordings"] .private-video-recording-title-form label{
    display:grid!important;
    gap:3px!important;
    min-width:0!important;
}
body[data-current-view="private_recordings"] .private-video-recording-title-form label span{
    font-size:8.5px!important;
    line-height:1.1!important;
}
body[data-current-view="private_recordings"] .private-video-recording-title-form input{
    box-sizing:border-box!important;
    width:100%!important;
    height:31px!important;
    min-height:31px!important;
    padding:4px 8px!important;
    border-radius:8px!important;
    font-size:10px!important;
    line-height:1.1!important;
}
body[data-current-view="private_recordings"] .private-video-recording-title-form button{
    width:100%!important;
    height:31px!important;
    min-height:31px!important;
    max-height:31px!important;
    padding:4px 7px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
}
body[data-current-view="private_recordings"] .private-video-recording-delete-form{
    display:flex!important;
    justify-content:stretch!important;
    margin:0!important;
}
body[data-current-view="private_recordings"] .private-video-recording-delete-form button{
    width:100%!important;
    height:31px!important;
    min-height:31px!important;
    max-height:31px!important;
    padding:4px 8px!important;
    border-radius:8px!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
}
body[data-current-view="private_recordings"] .private-video-recording-dialog-card{
    gap:7px!important;
    padding:9px!important;
    border-radius:14px!important;
}
body[data-current-view="private_recordings"] .private-video-recording-dialog-head strong{
    font-size:12px!important;
}
/* COURTREADZ 8.1.171 — one Admin Podcasts videos library for Podcast and Book Club Feed recordings. */
body[data-current-view="private_recordings"] .podcasts-video-summary{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    min-width:0!important;
}
body[data-current-view="private_recordings"] .podcasts-video-summary > span{
    display:inline-flex!important;
    align-items:center!important;
    gap:4px!important;
    min-height:27px!important;
    padding:4px 9px!important;
    border:1px solid rgba(138,77,96,.14)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.7)!important;
    color:var(--muted)!important;
    font-size:9px!important;
    font-weight:800!important;
    line-height:1!important;
}
body[data-current-view="private_recordings"] .podcasts-video-summary strong{
    color:var(--theme-deep,#733a49)!important;
    font-size:11px!important;
}
body[data-current-view="private_recordings"] .podcasts-video-card-labels{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    flex-wrap:wrap!important;
    gap:4px!important;
    min-width:0!important;
}
body[data-current-view="private_recordings"] .podcasts-video-source-badge,
body[data-current-view="private_recordings"] .podcasts-video-status-badge{
    display:inline-flex!important;
    align-items:center!important;
    min-height:21px!important;
    padding:3px 7px!important;
    border-radius:999px!important;
    font-size:8px!important;
    font-weight:950!important;
    line-height:1!important;
    white-space:nowrap!important;
}
body[data-current-view="private_recordings"] .podcasts-video-source-badge{
    background:var(--theme-soft,#f7e8ec)!important;
    color:var(--theme-deep,#733a49)!important;
}
body[data-current-view="private_recordings"] .podcasts-video-source-badge.book-club-feed{
    background:#f1edff!important;
    color:#55418a!important;
}
body[data-current-view="private_recordings"] .podcasts-video-status-badge{
    background:#fff4df!important;
    color:#8a5a11!important;
}
body[data-current-view="private_recordings"] .podcasts-video-status-badge.is-published{
    background:#e8f8ef!important;
    color:#1f7447!important;
}
body[data-current-view="private_recordings"] .podcasts-video-status-badge.admin-only{
    background:#f3f3f5!important;
    color:#55515e!important;
}
body[data-current-view="private_recordings"] .podcast-video-recording-preview > img{
    position:absolute!important;
    z-index:0!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
}
body[data-current-view="private_recordings"] .podcast-video-recording-preview::after{
    z-index:1!important;
    background:linear-gradient(180deg,rgba(20,12,17,.08),rgba(20,12,17,.44))!important;
}
body[data-current-view="private_recordings"] .podcast-video-recording-preview .private-video-recording-play-icon,
body[data-current-view="private_recordings"] .podcast-video-recording-preview > span:last-child{
    z-index:2!important;
}
body[data-current-view="private_recordings"] .podcast-recording-publish-form,
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-remove-form{
    display:flex!important;
    margin:0!important;
}
body[data-current-view="private_recordings"] .podcast-recording-publish-form button,
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-remove-form button{
    width:100%!important;
    min-height:31px!important;
    padding:4px 7px!important;
    border-radius:8px!important;
    font-size:9.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
}
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 58px!important;
    align-items:end!important;
    gap:5px!important;
    margin:0!important;
}
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-form label{
    display:grid!important;
    gap:3px!important;
    min-width:0!important;
}
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-form label > span{
    font-size:8.5px!important;
    font-weight:800!important;
    line-height:1.1!important;
}
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-form input[type="file"]{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    height:31px!important;
    min-height:31px!important;
    padding:4px!important;
    border:1px solid var(--line)!important;
    border-radius:8px!important;
    background:#fff!important;
    font-size:8px!important;
}
body[data-current-view="private_recordings"] .podcast-recording-thumbnail-form button{
    width:100%!important;
    height:31px!important;
    min-height:31px!important;
    padding:4px 6px!important;
    border-radius:8px!important;
    font-size:9px!important;
    line-height:1!important;
}
@media(max-width:620px){
    body[data-current-view="private_recordings"] .private-video-recordings-panel{
        padding:9px!important;
        gap:8px!important;
    }
    body[data-current-view="private_recordings"] .private-video-recordings-grid{
        grid-template-columns:1fr!important;
        gap:8px!important;
    }
    body[data-current-view="private_recordings"] .private-video-recording-preview{
        height:122px!important;
        min-height:122px!important;
        max-height:122px!important;
    }
    body[data-current-view="private_recordings"] .private-video-recording-title-form{
        grid-template-columns:minmax(0,1fr) 68px!important;
    }
    body[data-current-view="private_recordings"] .podcasts-video-summary{
        align-items:stretch!important;
    }
    body[data-current-view="private_recordings"] .podcasts-video-summary > span{
        flex:1 1 150px!important;
        justify-content:center!important;
    }
}


/* COURTREADZ 8.0.86 — Member desktop sidebar buttons match Admin exactly.
   Scope only the scrollable desktop/tablet navigation for Member accounts. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav{
        gap:5px!important;
        padding:2px 0 5px!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.nav-pressed,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav{
        box-sizing:border-box!important;
        width:100%!important;
        min-width:0!important;
        height:37px!important;
        min-height:37px!important;
        max-height:37px!important;
        margin:0!important;
        padding:5px 6px!important;
        display:flex!important;
        flex-wrap:nowrap!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:6px!important;
        border-radius:8px!important;
        text-align:left!important;
        line-height:1!important;
        overflow:hidden!important;
        transform:none!important;
    }

    /* Member unselected buttons use the exact same neutral treatment as Admin. */
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active),
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.subscription-nav-link.subscription-active:not(.active),
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav{
        border:1px solid rgba(211,126,151,.30)!important;
        background:linear-gradient(180deg,rgba(255,251,247,.98),rgba(255,241,244,.92))!important;
        color:#5f2639!important;
        box-shadow:0 1px 2px rgba(118,44,67,.04)!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active):hover,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active):focus-visible,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.nav-pressed:not(.active),
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.subscription-nav-link.subscription-active:not(.active):hover,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.subscription-nav-link.subscription-active:not(.active):focus-visible,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav:hover,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav:focus-visible{
        border-color:rgba(220,78,119,.54)!important;
        background:linear-gradient(180deg,#fff7f8,#fde8ee)!important;
        color:#a83055!important;
        box-shadow:0 3px 8px rgba(168,53,88,.08)!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:hover,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:focus,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:focus-visible,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:active{
        border:1px solid #c94d73!important;
        background:linear-gradient(180deg,#df6386 0%,#d34972 100%)!important;
        color:#fff!important;
        box-shadow:0 4px 9px rgba(161,45,79,.15),inset 0 1px rgba(255,255,255,.24)!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .nav-icon{
        flex:0 0 18px!important;
        width:18px!important;
        min-width:18px!important;
        height:18px!important;
        min-height:18px!important;
        margin:0!important;
        padding:0!important;
        align-self:center!important;
        border:0!important;
        border-radius:0!important;
        background:transparent!important;
        box-shadow:none!important;
        line-height:18px!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .nav-label{
        flex:1 1 auto!important;
        min-width:0!important;
        width:auto!important;
        margin:0!important;
        padding:0!important;
        display:block!important;
        align-self:center!important;
        font-size:11.5px!important;
        font-weight:720!important;
        line-height:18px!important;
        letter-spacing:0!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:clip!important;
        word-break:normal!important;
        overflow-wrap:normal!important;
        hyphens:none!important;
        text-align:left!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active) .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav:not(:hover):not(:focus-visible) .nav-icon{
        color:#8f6a76!important;
    }
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active):hover .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a:not(.active):focus-visible .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.nav-pressed:not(.active) .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav:hover .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav:focus-visible .nav-icon{
        color:#df3f75!important;
    }
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active .nav-icon{
        color:#ffd6e3!important;
    }

    /* Keep Member status badges from changing the Admin-like button geometry. */
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .announcement-unread-count{
        flex:0 0 auto!important;
        margin-left:auto!important;
        align-self:center!important;
    }
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .subscription-dot{
        position:absolute!important;
        left:19px!important;
        top:8px!important;
        width:6px!important;
        height:6px!important;
        margin:0!important;
        z-index:2!important;
    }
}


/* COURTREADZ 8.0.87 — Subscribe button cleanup.
   The old paid-status dot is no longer part of the Member navigation design. */
html body .app-shell > aside.sidebar .nav .subscription-nav-link .subscription-dot{
    display:none!important;
}


/* COURTREADZ 8.0.88 — Member scrollable sidebar buttons use the exact
   same fixed vertical size as the Admin navigation buttons. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.nav-pressed,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > button.member-stream-videos-nav,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.subscription-nav-link,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:hover,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:focus,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav > a.active:active{
        box-sizing:border-box!important;
        height:37px!important;
        min-height:37px!important;
        max-height:37px!important;
        padding-top:5px!important;
        padding-bottom:5px!important;
        align-items:center!important;
    }

    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .nav-icon,
    html body .app-shell > aside.sidebar[data-sidebar-role="member"] .nav.sidebar-scroll-nav .nav-label{
        align-self:center!important;
    }
}


/* COURTREADZ 8.0.90 — Account Online notification toggle.
   Notifications default to ON, but the Admin checkbox must stay fully interactive. */
html body[data-current-view="settings"] .online-notification-setting,
html body[data-current-view="settings"] .online-notification-setting .settings-inline-toggle{
    opacity:1!important;
    filter:none!important;
}
html body[data-current-view="settings"] .online-notification-setting .settings-inline-toggle{
    cursor:pointer!important;
    pointer-events:auto!important;
}
html body[data-current-view="settings"] #onlineNotificationsEnabled{
    opacity:1!important;
    filter:none!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    accent-color:var(--theme,#d86d83)!important;
}
html body[data-current-view="settings"] #onlineNotificationsEnabled + span{
    opacity:1!important;
    color:inherit!important;
}


/* COURTREADZ 8.0.91 — custom Club logo sizing inside the top-left frame.
   Frame height is controlled independently by the later border-height control. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .side-brand.has-custom-club-logo{
        box-sizing:border-box!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        flex:0 0 auto!important;
        overflow:visible!important;
        transition:height .12s ease,min-height .12s ease,max-height .12s ease!important;
    }

    html body .app-shell > aside.sidebar .side-brand.has-custom-club-logo .brand-mark.has-custom-logo{
        flex:0 0 var(--club-logo-size,66px)!important;
        width:var(--club-logo-size,66px)!important;
        height:var(--club-logo-size,66px)!important;
        min-width:var(--club-logo-size,66px)!important;
        min-height:var(--club-logo-size,66px)!important;
        max-width:160px!important;
        max-height:160px!important;
    }
}


/* COURTREADZ 8.0.94 — Club logo size and outer-border height are independent.
   Logo size changes only --club-logo-size. Border height changes only
   --club-logo-border-extra-height. The border never recalculates from logo size. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .side-brand.has-custom-club-logo{
        height:calc(126px + var(--club-logo-border-extra-height,30px))!important;
        min-height:calc(126px + var(--club-logo-border-extra-height,30px))!important;
        max-height:calc(126px + var(--club-logo-border-extra-height,30px))!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        overflow:visible!important;
    }
}

body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-control{
    display:grid!important;
    gap:4px!important;
    margin-top:6px!important;
    padding:6px!important;
    border:1px solid rgba(216,109,131,.22)!important;
    border-radius:8px!important;
    background:rgba(255,250,248,.82)!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-control > label{
    margin:0!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.02em!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-row{
    display:flex!important;
    align-items:center!important;
    gap:7px!important;
    min-width:0!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-row input[type="range"]{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    accent-color:#d86d83!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-row output{
    flex:0 0 48px!important;
    min-width:48px!important;
    text-align:right!important;
    font-size:9px!important;
    font-weight:800!important;
    color:#8d3853!important;
}
body .admin-settings-workspace .club-logo-setting-card .club-logo-border-size-control p{
    margin:0!important;
    font-size:9px!important;
    line-height:1.25!important;
}


/* COURTREADZ 8.0.95 — Members & Admins mobile layout hardening.
   Use one natural vertical flow on phones so Create Account, Registered Accounts,
   account identity, Account Type, subscription, password reset and Remove controls
   cannot overlap or push outside the viewport. Desktop/tablet remains unchanged. */
@media(max-width:760px){
    html body[data-current-view="members"],
    html body[data-current-view="members"] .app-shell,
    html body[data-current-view="members"] .workspace,
    html body[data-current-view="members"] .content{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        overflow-x:hidden!important;
        box-sizing:border-box!important;
    }

    html body[data-current-view="members"] .workspace{
        padding-left:max(8px,env(safe-area-inset-left))!important;
        padding-right:max(8px,env(safe-area-inset-right))!important;
        padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;
    }

    html body[data-current-view="members"] .members-grid.members-page-stack{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        align-items:start!important;
        align-content:start!important;
        gap:10px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        overflow:visible!important;
    }

    html body[data-current-view="members"] .members-page-stack > .panel,
    html body[data-current-view="members"] .create-account-panel,
    html body[data-current-view="members"] .registered-accounts-panel{
        position:relative!important;
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding:12px!important;
        overflow:visible!important;
        box-sizing:border-box!important;
    }

    html body[data-current-view="members"] .panel-head{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        margin:0 0 10px!important;
    }
    html body[data-current-view="members"] .panel-head > div{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .panel-head h2,
    html body[data-current-view="members"] .panel-head p{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        overflow-wrap:anywhere!important;
        word-break:normal!important;
    }

    html body[data-current-view="members"] .create-account-panel .form-grid{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:9px!important;
        width:100%!important;
        min-width:0!important;
    }
    html body[data-current-view="members"] .create-account-panel .form-grid .field,
    html body[data-current-view="members"] .create-account-panel .form-grid .span-2{
        grid-column:auto!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        margin:0!important;
    }
    html body[data-current-view="members"] .create-account-panel input,
    html body[data-current-view="members"] .create-account-panel select,
    html body[data-current-view="members"] .create-account-panel button{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:46px!important;
        box-sizing:border-box!important;
    }

    html body[data-current-view="members"] .account-search-box{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        margin:0 0 9px!important;
    }
    html body[data-current-view="members"] .account-search-box input{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:46px!important;
        padding-left:11px!important;
        padding-right:11px!important;
        font-size:16px!important;
        box-sizing:border-box!important;
    }

    /* Let the page itself scroll on mobile instead of trapping Registered Accounts
       inside a second short scroll box. This also prevents the last row being hidden. */
    html body[data-current-view="members"] .registered-accounts-panel .member-list{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:8px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        padding:0!important;
        overflow:visible!important;
        scrollbar-gutter:auto!important;
    }

    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        position:relative!important;
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        align-items:stretch!important;
        gap:10px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        height:auto!important;
        min-height:0!important;
        padding:10px!important;
        overflow:visible!important;
        contain:none!important;
        content-visibility:visible!important;
        box-sizing:border-box!important;
    }

    html body[data-current-view="members"] .registered-accounts-panel .account-identity{
        display:grid!important;
        grid-template-columns:42px minmax(0,1fr)!important;
        align-items:start!important;
        gap:9px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-identity .avatar{
        width:42px!important;
        height:42px!important;
        min-width:42px!important;
        min-height:42px!important;
        max-width:42px!important;
        max-height:42px!important;
        margin:0!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-summary{
        display:grid!important;
        gap:4px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-name-line{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        gap:5px 7px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-name-line > strong{
        flex:1 1 150px!important;
        width:auto!important;
        min-width:0!important;
        max-width:100%!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
        word-break:normal!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-presence{
        flex:0 0 auto!important;
        width:auto!important;
        max-width:100%!important;
        margin:0!important;
        white-space:nowrap!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-meta-line,
    html body[data-current-view="members"] .registered-accounts-panel .account-subscription-renewal{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
        overflow-wrap:anywhere!important;
        word-break:break-word!important;
    }

    /* Every account action gets its own full-width mobile row. */
    html body[data-current-view="members"] .registered-accounts-panel .member-actions{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        align-items:stretch!important;
        justify-items:stretch!important;
        gap:7px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > *,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > form,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > label{
        grid-column:auto!important;
        display:grid!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        margin:0!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control{
        grid-template-columns:minmax(0,1fr)!important;
        align-items:stretch!important;
        gap:4px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-control > span{
        width:100%!important;
        min-width:0!important;
        white-space:normal!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-select{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:46px!important;
        flex:none!important;
        font-size:16px!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .account-type-save-status{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:13px!important;
        margin:0!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }

    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:6px!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        flex:none!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form input,
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form button,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > form > button,
    html body[data-current-view="members"] .registered-accounts-panel .member-actions > button{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        min-height:44px!important;
        margin:0!important;
        box-sizing:border-box!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .password-reset-form input{
        min-height:46px!important;
        font-size:16px!important;
    }

    html body[data-current-view="members"] .account-search-empty{
        width:100%!important;
        min-width:0!important;
        max-width:100%!important;
        overflow-wrap:anywhere!important;
    }
}

@media(max-width:390px){
    html body[data-current-view="members"] .workspace{
        padding-left:max(6px,env(safe-area-inset-left))!important;
        padding-right:max(6px,env(safe-area-inset-right))!important;
    }
    html body[data-current-view="members"] .members-page-stack > .panel,
    html body[data-current-view="members"] .create-account-panel,
    html body[data-current-view="members"] .registered-accounts-panel{
        padding:10px!important;
    }
    html body[data-current-view="members"] .registered-accounts-panel .member-row{
        padding:9px!important;
    }
}


/* COURTREADZ 8.0.96 — Mobile All Categories: no post composer.
   feed.js already marks the public All Categories hub with hidden=true.
   This final mobile-only rule prevents the compact mobile grid rule from
   forcing that hidden composer back on screen. Specific categories and
   Private Chat remain unchanged. */
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer[hidden]{
        display:none!important;
        visibility:hidden!important;
        width:0!important;
        height:0!important;
        min-width:0!important;
        min-height:0!important;
        max-height:0!important;
        margin:0!important;
        padding:0!important;
        border:0!important;
        overflow:hidden!important;
        pointer-events:none!important;
    }
}


/* COURTREADZ 8.0.97 — prevent mobile browser focus zoom in Book Club Feed.
   iOS/Safari zooms focused form controls when their text is below 16px.
   Keep this scoped to Book Club Feed mobile controls so desktop/tablet styling
   and the rest of the app remain unchanged. */
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkInput,
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkCategorySelect,
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkCategoryInput{
        font-size:16px!important;
        -webkit-text-size-adjust:100%!important;
        text-size-adjust:100%!important;
    }
}

/* COURTREADZ 8.0.98 — Book Club Feed performance containment.
   Off-screen post/card contents can skip paint/layout work until they approach the
   Feed viewport. Unsupported browsers simply ignore content-visibility. */
body[data-current-view="book_talk"] .book-talk-feed-post,
body[data-current-view="book_talk"] .book-talk-category-card{
    content-visibility:auto;
}
body[data-current-view="book_talk"] .book-talk-feed-post{
    contain-intrinsic-size:auto 280px;
}
body[data-current-view="book_talk"] .book-talk-category-card{
    contain-intrinsic-size:auto 90px;
}

/* Keep mobile Feed animation/paint cost low while the keyboard is active. */
@media(max-width:760px){
    body[data-current-view="book_talk"] .book-talk-member.owner-account::before,
    body[data-current-view="book_talk"] .book-talk-account-type-badge.is-owner{
        animation-duration:6s!important;
    }
    body[data-current-view="book_talk"] .book-talk-member.has-unread .book-talk-member-copy strong{
        animation-duration:1.8s!important;
    }
}


/* COURTREADZ 8.0.102 — restore stable Book Club Feed loading/composer.
   All Categories is visible again and the public composer is always the simple
   input + Post layout. The internal category select remains available to JS but
   is never displayed, preventing the old dropdown layout from returning. */
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkCategorySelect.book-talk-category-select{
    display:none!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer:not([hidden]){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"message post"!important;
    align-items:stretch!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkInput{
    grid-area:message!important;
    min-width:0!important;
}
html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkSend{
    grid-area:post!important;
}
@media(max-width:760px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer:not([hidden]){
        display:grid!important;
        grid-template-columns:minmax(0,1fr) 72px!important;
        grid-template-areas:"message post"!important;
        width:100%!important;
        min-width:0!important;
        height:auto!important;
        min-height:0!important;
        max-height:none!important;
        margin:0!important;
        padding-top:10px!important;
        visibility:visible!important;
        overflow:visible!important;
        pointer-events:auto!important;
    }
}
@media(max-width:380px){
    html body[data-current-view="book_talk"] #bookClubTalkApp #bookTalkForm.book-talk-form.book-talk-feed-composer:not([hidden]){
        grid-template-columns:minmax(0,1fr) 66px!important;
    }
}


/* COURTREADZ 8.0.104 — restore Private Video Chat recording controls. */
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record[hidden]{display:none!important}
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record:not([hidden]){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:78px!important;
}
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record.is-recording{
    background:#b92f47!important;
    border-color:#b92f47!important;
    color:#fff!important;
}


/* COURTREADZ 8.0.105 — pink Private Video Chat Record button. */
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record:not([hidden]){
    background:#df3f75!important;
    border-color:#df3f75!important;
    color:#fff!important;
    box-shadow:0 4px 12px rgba(223,63,117,.24)!important;
}
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record:not([hidden]):hover,
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record:not([hidden]):focus-visible{
    background:#cf3368!important;
    border-color:#cf3368!important;
    color:#fff!important;
}
body[data-current-view="book_talk"] #bookTalkVideoRecord.book-talk-video-record.is-recording{
    background:#b92f47!important;
    border-color:#b92f47!important;
    color:#fff!important;
}


/* COURTREADZ 8.0.109 — Login/Register primary action labels stay white. */
html body .login-panel .login-box #authPaneLogin button.primary.wide[type="submit"],
html body .login-panel .login-box #authPaneLogin button.primary.wide[type="submit"]:hover,
html body .login-panel .login-box #authPaneLogin button.primary.wide[type="submit"]:focus,
html body .login-panel .login-box #authPaneLogin button.primary.wide[type="submit"]:active,
html body .login-panel .login-box #registrationSubmit,
html body .login-panel .login-box #registrationSubmit:hover,
html body .login-panel .login-box #registrationSubmit:focus,
html body .login-panel .login-box #registrationSubmit:active{
    color:#ffffff!important;
    -webkit-text-fill-color:#ffffff!important;
}


/* COURTREADZ 8.1.9 — Login has no separate install bar. Password Reset and
   Install APP share one equal-width secondary-action row and identical styling. */
html body.login-body{padding:0!important}
.login-secondary-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    width:100%;
    margin-top:9px;
}
.login-secondary-actions .password-reset-button{
    width:100%;
    min-width:0;
    margin-top:0;
    appearance:none;
    -webkit-appearance:none;
    font-family:inherit;
    cursor:pointer;
}

/* COURTREADZ 8.1.11 — remove the one-pixel Login backdrop line and lock the
   two secondary Login actions into one equal-width row at every viewport. */
html.login-document,
html.login-document body.login-body,
html.login-document body.login-body > .login-page,
html.login-document body.login-body > .login-page > .login-art{
    margin:0!important;
    border-top:0!important;
    padding-top:0!important;
    top:0!important;
}
html.login-document body.login-body > .login-page > .login-art:before{
    background-position:0 -1px,-1px 0!important;
}
html body .login-panel #authPaneLogin .login-secondary-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:column!important;
    align-items:stretch!important;
    gap:9px!important;
    width:100%!important;
    min-width:0!important;
    margin:9px 0 0!important;
}
html body .login-panel #authPaneLogin .login-secondary-actions > .password-reset-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    margin:0!important;
    padding:10px 8px!important;
    white-space:normal!important;
    text-align:center!important;
}

/* COURTREADZ 8.1.12 — paint the Login background on the document root as well
   as the Login section. This covers browser overscroll and Apple safe-area pixels
   above the layout instead of exposing the root page's former white background. */
html.login-document{
    min-height:100%!important;
    background-color:#f8cbd5!important;
    background-image:
        radial-gradient(circle at 14% 12%,rgba(255,194,207,.9),transparent 34%),
        radial-gradient(circle at 86% 84%,rgba(255,221,225,.92),transparent 36%),
        linear-gradient(145deg,#fff7f9 0%,#ffdfe6 48%,#f8cbd5 100%)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
}
html.login-document.has-login-shell-background{
    background-color:#8d4255!important;
    background-image:
        linear-gradient(135deg,rgba(91,30,48,.64),rgba(181,83,106,.42)),
        var(--login-shell-background-image)!important;
    background-size:cover,cover!important;
    background-position:center,center!important;
    background-repeat:no-repeat,no-repeat!important;
}
html.login-document body.login-body{
    background-color:transparent!important;
    background-image:inherit!important;
    background-size:inherit!important;
    background-position:inherit!important;
    background-repeat:inherit!important;
}

/* COURTREADZ 8.1.14 — hard viewport-safe Login logo positioning.
   The uploaded logo is positioned from its final, clamped top edge so no child
   transform can move the artwork above the page afterwards. */
html body.login-body .login-copy.has-title-image{
    top:var(--login-title-safe-y,max(8px,env(safe-area-inset-top,0px)))!important;
    bottom:auto!important;
    transform:translateX(-50%) scale(var(--login-fit-scale,1))!important;
    transform-origin:center top!important;
}
html body.login-body .login-copy.has-title-image .login-title-image{
    transform:none!important;
}

/* COURTREADZ 8.1.15 — remove the legacy install-bar layout completely and
   make the Login wallpaper paint every viewport, safe-area and edge pixel. */
html.login-document,
html.login-document body.login-body{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:100%!important;
    height:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
}
html.login-document body.login-body{
    position:fixed!important;
    inset:0!important;
    background-color:#f8cbd5!important;
    background-image:
        radial-gradient(circle at 14% 12%,rgba(255,194,207,.9),transparent 34%),
        radial-gradient(circle at 86% 84%,rgba(255,221,225,.92),transparent 36%),
        linear-gradient(145deg,#fff7f9 0%,#ffdfe6 48%,#f8cbd5 100%)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
}
html.login-document.has-login-shell-background body.login-body{
    background-color:#8d4255!important;
    background-image:
        linear-gradient(135deg,rgba(91,30,48,.64),rgba(181,83,106,.42)),
        var(--login-shell-background-image)!important;
    background-size:cover,cover!important;
    background-position:center,center!important;
    background-repeat:no-repeat,no-repeat!important;
}
html.login-document body.login-body > .login-page,
html.login-document body.login-body > .login-page > .login-art{
    box-sizing:border-box!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    height:100vh!important;
    min-height:100vh!important;
    max-height:100vh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
}
html.login-document body.login-body > .login-page{
    background:transparent!important;
}
html.login-document body.login-body > .login-page > .login-art{
    background-color:#f8cbd5!important;
    background-image:
        radial-gradient(circle at 14% 12%,rgba(255,194,207,.9),transparent 34%),
        radial-gradient(circle at 86% 84%,rgba(255,221,225,.92),transparent 36%),
        linear-gradient(145deg,#fff7f9 0%,#ffdfe6 48%,#f8cbd5 100%)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
}
html.login-document.has-login-shell-background body.login-body > .login-page > .login-art{
    background-color:#8d4255!important;
    background-image:
        linear-gradient(135deg,rgba(91,30,48,.64),rgba(181,83,106,.42)),
        var(--login-shell-background-image)!important;
    background-size:cover,cover!important;
    background-position:center,center!important;
    background-repeat:no-repeat,no-repeat!important;
}
@supports(height:100dvh){
    html.login-document body.login-body > .login-page,
    html.login-document body.login-body > .login-page > .login-art{
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
    }
}

/* COURTREADZ 8.1.16 — the Login title/logo and authentication panel are one
   measured vertical group. A larger logo moves the panel down; safe top and
   bottom limits prevent either element from leaving the visible page. */
html body.login-body .login-page .login-stack{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group{
    position:absolute!important;
    left:50%!important;
    top:var(--login-group-top,max(8px,env(safe-area-inset-top,0px)))!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:clamp(8px,1.4vh,14px)!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:translateX(-50%)!important;
    transform-origin:center top!important;
    overflow:visible!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-copy,
html body.login-body .login-page .login-fitted-group > .login-copy.has-title-image,
html body.login-body .login-page .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="password_reset"] .login-fitted-group > .login-panel{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin:0!important;
    transform:none!important;
    transform-origin:center top!important;
}
html body.login-body .login-page .login-fitted-group > .login-copy,
html body.login-body .login-page .login-fitted-group > .login-copy.has-title-image{
    z-index:1!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:6px!important;
    width:min(900px,calc(100% - 10px))!important;
    max-width:calc(100% - 10px)!important;
    height:auto!important;
    min-height:0!important;
    text-align:center!important;
    overflow:visible!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-copy.has-title-image .login-title-image{
    display:block!important;
    width:min(var(--login-title-image-width,420px),calc(100vw - 10px))!important;
    max-width:calc(100vw - 10px)!important;
    height:auto!important;
    max-height:min(42vh,var(--login-title-max-height,520px))!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:none!important;
    transform-origin:center bottom!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel{
    z-index:20!important;
    flex:0 0 auto!important;
    width:min(590px,calc(100% - 10px))!important;
    max-width:590px!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    background:transparent!important;
    overflow:visible!important;
    pointer-events:auto!important;
}
/* Sign in and Register panels always leave exactly 5px at both page edges. */
html body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel{
    width:calc(100% - 10px)!important;
    max-width:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    max-height:var(--login-panel-max-height,calc(100dvh - 32px))!important;
    margin:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    pointer-events:auto!important;
}
/* On wide screens the white panel spans the requested width while its forms
   remain comfortably centred instead of stretching across the whole display. */
html body.login-body .login-page[data-auth-mode="login"] .login-box > .auth-tabs,
html body.login-body .login-page[data-auth-mode="login"] .login-box > .flash,
html body.login-body .login-page[data-auth-mode="login"] .login-box > .auth-pane,
html body.login-body .login-page[data-auth-mode="register"] .login-box > .auth-tabs,
html body.login-body .login-page[data-auth-mode="register"] .login-box > .flash,
html body.login-body .login-page[data-auth-mode="register"] .login-box > .auth-pane{
    box-sizing:border-box!important;
    width:min(590px,100%)!important;
    max-width:590px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
@media(max-width:760px){
    html body.login-body .login-page .login-fitted-group{
        gap:10px!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-copy,
    html body.login-body .login-page .login-fitted-group > .login-copy.has-title-image{
        width:calc(100% - 10px)!important;
        max-width:calc(100% - 10px)!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-copy.has-title-image .login-title-image{
        width:min(var(--login-title-image-width,420px),calc(100vw - 10px))!important;
        max-width:calc(100vw - 10px)!important;
        max-height:min(30vh,var(--login-title-max-height,260px))!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel,
    html body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
    html body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel,
    html body.login-body .login-page[data-auth-mode="password_reset"] .login-fitted-group > .login-panel{
        width:calc(100% - 10px)!important;
        max-width:none!important;
    }
}

/* COURTREADZ 8.1.17 — the panel is never scaled and never has an internal
   scrollbar. It follows the logo in normal flow with a measured clear gap. */
html body.login-body .login-page .login-fitted-group{
    gap:var(--login-logo-panel-gap,20px)!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="password_reset"] .login-fitted-group > .login-panel{
    flex-grow:0!important;
    flex-shrink:0!important;
    margin-top:var(--login-panel-push-down,0px)!important;
    transform:none!important;
    scale:none!important;
    zoom:1!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    overscroll-behavior:none!important;
    scrollbar-gutter:auto!important;
    transform:none!important;
    scale:none!important;
    zoom:1!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box::-webkit-scrollbar{
    display:none!important;
    width:0!important;
    height:0!important;
}

/* Short viewports keep the whole pane visible by removing spare padding and
   gaps. Field controls remain unscaled and the outer panel keeps full width. */
html body.login-body .login-page[data-login-density="compact"] .login-box{
    padding:14px!important;
}
html body.login-body .login-page[data-login-density="compact"] .auth-tabs{
    gap:4px!important;
    margin:0 0 10px!important;
    padding:3px!important;
}
html body.login-body .login-page[data-login-density="compact"] .auth-tab{
    min-height:34px!important;
    padding:6px 9px!important;
}
html body.login-body .login-page[data-login-density="compact"] .field{
    gap:4px!important;
    margin-bottom:8px!important;
}
html body.login-body .login-page[data-login-density="compact"] .field input{
    min-height:40px!important;
    padding:8px 10px!important;
}
html body.login-body .login-page[data-login-density="compact"] .field small{
    margin-top:2px!important;
    font-size:10px!important;
    line-height:1.2!important;
}
html body.login-body .login-page[data-login-density="compact"] .registration-terms-agreement{
    margin:3px 0 5px!important;
    padding:5px 7px!important;
}
html body.login-body .login-page[data-login-density="compact"] .primary.wide,
html body.login-body .login-page[data-login-density="compact"] .password-reset-button{
    min-height:40px!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
}
html body.login-body .login-page[data-login-density="compact"] .login-secondary-actions{
    gap:6px!important;
    margin-top:5px!important;
}

html body.login-body .login-page[data-login-density="tight"] .login-box{
    padding:7px 8px!important;
    border-radius:16px!important;
}
html body.login-body .login-page[data-login-density="tight"] .auth-tabs{
    gap:3px!important;
    margin:0 0 5px!important;
    padding:2px!important;
}
html body.login-body .login-page[data-login-density="tight"] .auth-tab{
    min-height:29px!important;
    padding:4px 7px!important;
    font-size:11px!important;
}
html body.login-body .login-page[data-login-density="tight"] .field{
    gap:2px!important;
    margin-bottom:4px!important;
}
html body.login-body .login-page[data-login-density="tight"] .field label{
    font-size:9px!important;
    line-height:1.05!important;
}
html body.login-body .login-page[data-login-density="tight"] .field input{
    min-height:32px!important;
    padding:5px 8px!important;
    font-size:14px!important;
}
html body.login-body .login-page[data-login-density="tight"] .field small{
    display:block!important;
    margin-top:0!important;
    font-size:8px!important;
    line-height:1!important;
}
html body.login-body .login-page[data-login-density="tight"] .registration-terms-agreement{
    gap:4px!important;
    margin:2px 0 4px!important;
    padding:4px 6px!important;
    font-size:9px!important;
    line-height:1.1!important;
}
html body.login-body .login-page[data-login-density="tight"] .registration-terms-copy{
    font-size:9px!important;
    line-height:1.1!important;
}
html body.login-body .login-page[data-login-density="tight"] .primary.wide,
html body.login-body .login-page[data-login-density="tight"] .password-reset-button{
    min-height:34px!important;
    padding:5px 6px!important;
    font-size:11px!important;
}
html body.login-body .login-page[data-login-density="tight"] .login-secondary-actions{
    gap:5px!important;
    margin-top:4px!important;
}
html body.login-body .login-page[data-login-density="tight"] .flash,
html body.login-body .login-page[data-login-density="tight"] .email-auth-notice{
    margin:4px 0!important;
    padding:5px 7px!important;
    font-size:10px!important;
    line-height:1.2!important;
}
@media(max-width:760px){
    html body.login-body .login-page .login-fitted-group{
        gap:var(--login-logo-panel-gap,14px)!important;
    }
}

/* COURTREADZ 8.1.18 — Password Reset and Install APP are permanently locked
   into one equal-width row. No viewport or compact-density rule may stack it. */
html body.login-body .login-page #authPaneLogin form > .login-secondary-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    grid-template-areas:"reset install"!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(0,1fr)!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    gap:clamp(5px,1.5vw,9px)!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:clamp(4px,1.2vh,9px) 0 0!important;
    padding:0!important;
}
html body.login-body .login-page #authPaneLogin form > .login-secondary-actions > .password-reset-button:first-child{
    grid-area:reset!important;
}
html body.login-body .login-page #authPaneLogin form > .login-secondary-actions > #installAppButton{
    grid-area:install!important;
}
html body.login-body .login-page #authPaneLogin form > .login-secondary-actions > .password-reset-button{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:clamp(34px,5.4vh,44px)!important;
    margin:0!important;
    padding:6px clamp(4px,1.8vw,10px)!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-align:center!important;
    text-overflow:ellipsis!important;
    font-size:clamp(9px,2.8vw,12px)!important;
    line-height:1.1!important;
    transform:none!important;
}

/* COURTREADZ 8.1.20 — the Login title/logo is part of the white authentication
   panel. It occupies the first row of the card above the Sign in/Register tabs,
   so the branding and controls can never overlap or become detached. */
html body.login-body .login-page .login-fitted-group{
    gap:0!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel{
    display:block!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    display:block!important;
    box-sizing:border-box!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy,
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy.has-title-image{
    position:relative!important;
    inset:auto!important;
    z-index:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    box-sizing:border-box!important;
    width:min(900px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto clamp(10px,1.8vh,18px)!important;
    padding:0!important;
    color:var(--theme-deep,#733a49)!important;
    text-align:center!important;
    overflow:visible!important;
    transform:none!important;
    scale:none!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy h1{
    max-width:100%!important;
    margin:0!important;
    color:var(--theme-deep,#733a49)!important;
    font-size:clamp(30px,6vw,58px)!important;
    overflow-wrap:anywhere!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy p{
    max-width:590px!important;
    margin:0!important;
    color:var(--theme-muted,#82515f)!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy.has-title-image .login-title-image{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:min(var(--login-title-image-width,420px),100%)!important;
    max-width:100%!important;
    height:auto!important;
    max-height:var(--login-title-max-height,42vh)!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    transform-origin:center!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .auth-tabs{
    margin-top:0!important;
}
html body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
html body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel{
    width:calc(100% - 10px)!important;
    max-width:none!important;
}
@media(max-width:760px){
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy,
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy.has-title-image{
        margin-bottom:clamp(6px,1.2vh,11px)!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-copy.has-title-image .login-title-image{
        width:min(var(--login-title-image-width,420px),100%)!important;
        max-width:100%!important;
        max-height:var(--login-title-max-height,30vh)!important;
    }
}

/* COURTREADZ 8.1.21 — extend the white authentication panel above the tabs
   with a dedicated logo header. The header and form body are sibling rows in
   one card, so the logo can never overlap Sign in, Register or either pane. */
html body.login-body .login-page .login-fitted-group > .login-panel{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
    background:#fff!important;
    border:1px solid rgba(255,255,255,.98)!important;
    border-radius:28px!important;
    box-shadow:
        0 0 10px rgba(255,255,255,.98),
        0 0 28px rgba(255,255,255,.72),
        0 0 52px rgba(255,255,255,.46),
        0 24px 64px rgba(20,12,28,.26)!important;
    overflow:hidden!important;
    isolation:isolate!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header{
    position:relative!important;
    inset:auto!important;
    z-index:1!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:clamp(14px,2.4vh,30px) clamp(16px,4vw,54px) clamp(10px,1.6vh,18px)!important;
    background:#fff!important;
    overflow:hidden!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy,
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy.has-title-image{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    box-sizing:border-box!important;
    width:min(590px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    color:var(--theme-deep,#733a49)!important;
    text-align:center!important;
    overflow:hidden!important;
    transform:none!important;
    scale:none!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy h1{
    max-width:100%!important;
    margin:0!important;
    color:var(--theme-deep,#733a49)!important;
    font-size:clamp(30px,6vw,58px)!important;
    overflow-wrap:anywhere!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy p{
    max-width:590px!important;
    margin:0!important;
    color:var(--theme-muted,#82515f)!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy.has-title-image .login-title-image{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:min(var(--login-title-image-width,420px),100%)!important;
    max-width:100%!important;
    height:auto!important;
    max-height:var(--login-title-max-height,42vh)!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    transform-origin:center!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    position:relative!important;
    z-index:2!important;
    flex:0 0 auto!important;
    display:block!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding-top:0!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    transform:none!important;
    scale:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .auth-tabs{
    margin-top:0!important;
}
html body.login-body .login-page[data-login-density="compact"] .login-brand-header{
    padding:10px 14px 7px!important;
}
html body.login-body .login-page[data-login-density="tight"] .login-brand-header{
    padding:5px 8px 4px!important;
}
@media(max-width:760px){
    html body.login-body .login-page .login-fitted-group > .login-panel{
        border-radius:22px!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header{
        padding:clamp(9px,1.8vh,17px) clamp(10px,4vw,22px) clamp(6px,1vh,11px)!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-brand-header > .login-copy.has-title-image .login-title-image{
        width:min(var(--login-title-image-width,420px),100%)!important;
        max-width:100%!important;
        max-height:var(--login-title-max-height,30vh)!important;
    }
    html body.login-body .login-page[data-login-density="compact"] .login-brand-header{
        padding:7px 10px 5px!important;
    }
    html body.login-body .login-page[data-login-density="tight"] .login-brand-header{
        padding:3px 8px 2px!important;
    }
}

/* COURTREADZ 8.1.27 — the Login logo uses one viewport-fitted static size that
   does not change when Sign in/Register tabs switch. */
/* COURTREADZ 8.1.26 — the content-sized Login logo row has no bottom padding,
   placing the rendered logo directly above the Sign in/Register tabs. */
/* COURTREADZ 8.1.25 — compact Login logo spacing keeps the dedicated logo row
   above the tabs while removing excess space around the rendered logo. */
/* COURTREADZ 8.1.24 — Login card colour and white-glow brightness use protected
   Admin Settings variables while preserving the dedicated logo row. */
/* COURTREADZ 8.1.23 — the one white Login panel reserves a dedicated flexible
   top row for the full rendered logo before the tabs and form. Cache-safe
   copies of these decisive rules are also embedded in index.php. */
/* COURTREADZ 8.1.22 — one white Login panel. The logo is the first section
   inside .login-box and the Sign in/Register tabs are the next section below.
   Both remain in normal flex flow, making overlap structurally impossible. */
html body.login-body .login-page .login-fitted-group > .login-panel{
    display:block!important;
    box-sizing:border-box!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    isolation:auto!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    position:relative!important;
    z-index:21!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0 clamp(16px,4vw,54px) 16px!important;
    background:var(--login-card-color,#fff)!important;
    color:var(--login-card-text-color,#251d22)!important;
    border:1px solid var(--login-card-border-color,rgba(255,255,255,.98))!important;
    border-radius:28px!important;
    box-shadow:
        0 0 10px var(--login-card-glow-near,rgba(255,255,255,.98)),
        0 0 28px var(--login-card-glow-mid,rgba(255,255,255,.72)),
        0 0 52px var(--login-card-glow-far,rgba(255,255,255,.46)),
        0 24px 64px rgba(20,12,28,.26)!important;
    overflow:visible!important;
    overscroll-behavior:none!important;
    transform:none!important;
    scale:none!important;
    zoom:1!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo{
    position:relative!important;
    inset:auto!important;
    z-index:auto!important;
    order:0!important;
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:clamp(3px,.6vh,7px) 0 0!important;
    background:var(--login-card-color,#fff)!important;
    overflow:visible!important;
    transform:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy,
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy.has-title-image{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    box-sizing:border-box!important;
    width:min(590px,100%)!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    color:var(--theme-deep,#733a49)!important;
    text-align:center!important;
    overflow:hidden!important;
    transform:none!important;
    scale:none!important;
    pointer-events:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy h1{
    max-width:100%!important;
    margin:0!important;
    color:var(--theme-deep,#733a49)!important;
    font-size:clamp(30px,6vw,58px)!important;
    overflow-wrap:anywhere!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy p{
    max-width:590px!important;
    margin:0!important;
    color:var(--theme-muted,#82515f)!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy.has-title-image .login-title-image{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:var(--login-title-fixed-width,min(var(--login-title-image-width,420px),100%))!important;
    max-width:100%!important;
    height:var(--login-title-fixed-height,auto)!important;
    max-height:none!important;
    margin:0 auto!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    transform-origin:center!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .auth-tabs{
    position:relative!important;
    inset:auto!important;
    order:0!important;
    flex:0 0 auto!important;
    margin-top:0!important;
    transform:none!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy h1,
html body.login-body .login-page .login-box .password-reset-heading h2,
html body.login-body .login-page .login-box .field > label,
html body.login-body .login-page .login-box .registration-terms-copy{
    color:var(--login-card-text-color,#251d22)!important;
}
html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy p,
html body.login-body .login-page .login-box .password-reset-heading p,
html body.login-body .login-page .login-box .field small{
    color:var(--login-card-muted-color,#737373)!important;
}
html body.login-body .login-page[data-login-density="compact"] .login-box{
    padding:0 14px 16px!important;
}
html body.login-body .login-page[data-login-density="compact"] .login-panel-logo{
    min-height:0!important;
    padding:3px 0 0!important;
}
html body.login-body .login-page[data-login-density="tight"] .login-box{
    padding:0 8px 16px!important;
    border-radius:16px!important;
}
html body.login-body .login-page[data-login-density="tight"] .login-panel-logo{
    min-height:0!important;
    padding:2px 0 0!important;
}
@media(max-width:760px){
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
        padding:0 20px 16px!important;
        border-radius:22px!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo{
        min-height:0!important;
        padding:3px 0 0!important;
    }
    html body.login-body .login-page .login-fitted-group > .login-panel > .login-box > .login-panel-logo > .login-copy.has-title-image .login-title-image{
        width:var(--login-title-fixed-width,min(var(--login-title-image-width,420px),100%))!important;
        max-width:100%!important;
        height:var(--login-title-fixed-height,auto)!important;
        max-height:none!important;
    }
    html body.login-body .login-page[data-login-density="compact"] .login-box{
        padding:0 14px 16px!important;
    }
    html body.login-body .login-page[data-login-density="compact"] .login-panel-logo{
        min-height:0!important;
        padding:2px 0 0!important;
    }
    html body.login-body .login-page[data-login-density="tight"] .login-box{
        padding:0 8px 16px!important;
        border-radius:16px!important;
    }
    html body.login-body .login-page[data-login-density="tight"] .login-panel-logo{
        min-height:0!important;
        padding:1px 0 0!important;
    }
}

/* COURTREADZ 8.1.51 — input-to-input movement uses one JavaScript-controlled
   easing target. The rigid panel glides with the document and never receives
   competing CSS scrolling, transform transitions or delayed snap corrections. */
html.login-document.login-keyboard-open,
html.login-document.login-keyboard-open body.login-body,
html.login-document.login-keyboard-open body.login-body .login-fitted-group{
    scroll-behavior:auto!important;
}
html.login-document.login-keyboard-open body.login-body .login-fitted-group{
    transition:none!important;
    animation:none!important;
    will-change:auto!important;
}

/* COURTREADZ 8.1.54 — entering keypad layout preserves the panel's painted
   position before one easing target moves it to the selected field. On keypad
   close, a short transform glide returns the complete panel to centre without
   exposing the document-height reset as an instant jump. */
html.login-document.login-panel-returning body.login-body .login-page .login-fitted-group{
    transform:translate3d(-50%,var(--login-panel-return-y,0px),0)!important;
    transition:transform 360ms cubic-bezier(.22,.74,.24,1)!important;
    will-change:transform!important;
}
html.login-document.login-panel-returning.login-panel-return-primed body.login-body .login-page .login-fitted-group{
    transition:none!important;
}

/* COURTREADZ 8.1.50 — the first Login layout is committed before it is shown,
   and observer notifications caused by that same fit are ignored. This keeps
   the panel in its final viewport-safe position without two visible settling
   movements. Scroll anchoring is disabled so keypad close needs one reset. */
html.login-document body.login-body,
html.login-document body.login-body > .login-page,
html.login-document body.login-body > .login-page > .login-art,
html.login-document body.login-body .login-stack,
html.login-document body.login-body .login-fitted-group{
    overflow-anchor:none!important;
}

/* COURTREADZ 8.1.49 — a mobile virtual keypad must not collapse the logo or
   refit the card to the reduced visual viewport. The complete card becomes
   ordinary scrollable page content and may extend below the visible screen.
   Keypad-height travel above the rigid fitted group lets Register return to
   YOUR NAME; bounded absolute document scrolling slides the complete unchanged
   card to each selected input without cumulative upward movement. When the
   viewport recovers, the scrolling state and page offset are reset even if the
   browser leaves the last input focused after manually closing the keypad. */
@media(max-width:760px){
    html.login-document.login-keyboard-open{
        height:auto!important;
        min-height:100%!important;
        max-height:none!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior-y:auto!important;
        scroll-behavior:auto!important;
        scroll-padding-block:18px!important;
        -webkit-overflow-scrolling:touch!important;
        touch-action:pan-y!important;
    }
    html.login-document.login-keyboard-open body.login-body{
        position:relative!important;
        inset:auto!important;
        height:var(--login-document-height,100vh)!important;
        min-height:var(--login-document-height,100vh)!important;
        max-height:none!important;
        overflow:visible!important;
        overscroll-behavior-y:auto!important;
    }
    html.login-document.login-keyboard-open body.login-body > .login-page,
    html.login-document.login-keyboard-open body.login-body > .login-page > .login-art{
        height:var(--login-document-height,100vh)!important;
        min-height:var(--login-document-height,100vh)!important;
        max-height:none!important;
        overflow:visible!important;
    }
    html.login-document.login-keyboard-open body.login-body .login-page .login-stack{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:var(--login-document-height,100vh)!important;
        min-height:var(--login-document-height,100vh)!important;
        max-height:none!important;
        overflow:visible!important;
    }
    html.login-document.login-keyboard-open body.login-body .login-page .login-fitted-group{
        position:absolute!important;
        left:50%!important;
        top:calc(var(--login-group-top,max(5px,env(safe-area-inset-top,0px))) + var(--login-keyboard-top-room,0px))!important;
        width:100%!important;
        max-width:100%!important;
        margin:0!important;
        padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))!important;
        transform:translateX(-50%)!important;
        touch-action:pan-y!important;
    }
    html.login-document.login-keyboard-open body.login-body .login-page,
    html.login-document.login-keyboard-open body.login-body .login-art,
    html.login-document.login-keyboard-open body.login-body .login-stack,
    html.login-document.login-keyboard-open body.login-body .login-panel,
    html.login-document.login-keyboard-open body.login-body .login-box,
    html.login-document.login-keyboard-open body.login-body .auth-pane{
        touch-action:pan-y!important;
    }
}

/* COURTREADZ 8.1.55 — mobile keypad recovery keeps one stable pixel width for
   the stack, fitted group and card. Percentage width can briefly resolve from
   a collapsing Android containing block as the visual viewport expands; this
   invariant prevents the card becoming a narrow vertical line. Horizontal
   geometry is fixed while only the complete card's vertical position moves. */
html.login-document:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group{
    top:50vh!important;
    top:var(--login-idle-center-y,50dvh)!important;
    transform:translate3d(-50%,-50%,0)!important;
    transition:none!important;
}
html.login-document.login-layout-ready:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group{
    transition:top 280ms cubic-bezier(.22,.74,.24,1)!important;
}
html.login-document:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group > .login-panel > .login-box{
    max-height:calc(100vh - 56px)!important;
    max-height:var(--login-panel-max-height,calc(100dvh - 56px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}
html.login-document:not(.login-position-measured):not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
    top:5px!important;
    top:max(5px,env(safe-area-inset-top,0px))!important;
    bottom:5px!important;
    bottom:max(5px,env(safe-area-inset-bottom,0px))!important;
    transform:translate3d(-50%,0,0)!important;
    transition:none!important;
    overflow:hidden!important;
}
html.login-document.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
    top:var(--login-group-top,max(5px,env(safe-area-inset-top,0px)))!important;
    bottom:auto!important;
    transform:translate3d(-50%,0,0)!important;
    overflow:visible!important;
}
html.login-document:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel > .login-box{
    max-height:none!important;
    overflow:visible!important;
    overscroll-behavior:none!important;
    scrollbar-gutter:auto!important;
}
/* COURTREADZ 8.1.68 — centre the complete authentication card on the desktop
   webpage. Register keeps its separate bottom-safe behaviour only on mobile. */
@media(min-width:761px){
    html.login-document:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,
    html.login-document:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group,
    html.login-document:not(.login-position-measured):not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group,
    html.login-document.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        top:50vh!important;
        top:var(--login-idle-center-y,50dvh)!important;
        bottom:auto!important;
        transform:translate3d(-50%,-50%,0)!important;
        overflow:visible!important;
    }
    html.login-document:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel > .login-box{
        max-height:var(--login-panel-max-height,calc(100dvh - 56px))!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior:contain!important;
    }
}
@media(max-width:760px){
    html.login-document body.login-body .login-page .login-stack{
        box-sizing:border-box!important;
        width:var(--login-mobile-layout-width,100vw)!important;
        min-width:var(--login-mobile-layout-width,100vw)!important;
        max-width:var(--login-mobile-layout-width,100vw)!important;
    }
    html.login-document body.login-body .login-page .login-fitted-group,
    html.login-document.login-keyboard-open body.login-body .login-page .login-fitted-group{
        box-sizing:border-box!important;
        left:0!important;
        right:auto!important;
        width:var(--login-mobile-layout-width,100vw)!important;
        min-width:var(--login-mobile-layout-width,100vw)!important;
        max-width:var(--login-mobile-layout-width,100vw)!important;
        transform:translate3d(0,0,0)!important;
    }
    /* COURTREADZ 8.1.58 — the closed mobile layout is rooted directly in the
       visible viewport. This prevents Chrome/Samsung Internet from applying a
       restored keypad scroll offset to the card during the first page paint. */
    html.login-document:not(.login-keyboard-open) body.login-body .login-page .login-stack{
        position:fixed!important;
        inset:0!important;
        height:100dvh!important;
        min-height:100dvh!important;
        max-height:100dvh!important;
        overflow:hidden!important;
    }
    html.login-document:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group{
        position:fixed!important;
        top:var(--login-group-top,max(5px,env(safe-area-inset-top,0px)))!important;
        bottom:auto!important;
    }
    html.login-document:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group{
        top:50vh!important;
        top:var(--login-idle-center-y,50dvh)!important;
        transform:translate3d(0,-50%,0)!important;
    }
    html.login-document:not(.login-position-measured):not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        top:5px!important;
        top:max(5px,env(safe-area-inset-top,0px))!important;
        bottom:5px!important;
        bottom:max(5px,env(safe-area-inset-bottom,0px))!important;
        transform:translate3d(0,0,0)!important;
        overflow:hidden!important;
    }
    html.login-document.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        top:var(--login-group-top,max(5px,env(safe-area-inset-top,0px)))!important;
        bottom:auto!important;
        transform:translate3d(0,0,0) scale(var(--login-register-fit-scale,1))!important;
        transform-origin:center top!important;
        overflow:visible!important;
    }
    /* COURTREADZ 8.1.62 — every closed Login/Register mode uses the same
       JavaScript-measured centre coordinate. There is no mode-specific resting
       override that can leave either card above or below the visible page. */
    html.login-document body.login-body .login-page .login-fitted-group > .login-panel,
    html.login-document body.login-body .login-page[data-auth-mode="login"] .login-fitted-group > .login-panel,
    html.login-document body.login-body .login-page[data-auth-mode="register"] .login-fitted-group > .login-panel,
    html.login-document body.login-body .login-page[data-auth-mode="password_reset"] .login-fitted-group > .login-panel{
        position:relative!important;
        inset:auto!important;
        left:auto!important;
        top:auto!important;
        right:auto!important;
        bottom:auto!important;
        box-sizing:border-box!important;
        flex:0 0 auto!important;
        width:calc(var(--login-mobile-layout-width,100vw) - 10px)!important;
        min-width:calc(var(--login-mobile-layout-width,100vw) - 10px)!important;
        max-width:calc(var(--login-mobile-layout-width,100vw) - 10px)!important;
        height:auto!important;
        min-height:0!important;
        margin:0!important;
        transform:none!important;
        transform-origin:center top!important;
        pointer-events:auto!important;
    }
    html.login-document.login-panel-returning body.login-body .login-page .login-fitted-group{
        transform:translate3d(0,var(--login-panel-return-y,0px),0)!important;
    }
    html.login-document.login-panel-returning body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{
        transform:translate3d(0,var(--login-panel-return-y,0px),0) scale(var(--login-register-fit-scale,1))!important;
        transform-origin:center top!important;
    }
}

/* COURTREADZ 8.1.44 — compact Member renewal status card. The dedicated
   content column keeps the live tabular countdown aligned without crowding
   the Sign Out control or changing the sidebar's pinned geometry. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        box-sizing:border-box!important;
        display:grid!important;
        grid-template-columns:30px minmax(0,1fr)!important;
        align-items:center!important;
        justify-content:stretch!important;
        gap:8px!important;
        width:100%!important;
        min-height:58px!important;
        max-height:none!important;
        margin:0 0 8px!important;
        padding:9px 8px!important;
        overflow:hidden!important;
        border:1px solid rgba(204,77,112,.24)!important;
        border-radius:12px!important;
        background:linear-gradient(145deg,#fffaf7 0%,#fdebef 100%)!important;
        color:#682238!important;
        text-align:left!important;
        line-height:1.15!important;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 5px 13px rgba(130,45,69,.07)!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark{
        position:relative!important;
        display:block!important;
        width:30px!important;
        min-width:30px!important;
        height:30px!important;
        border:1px solid rgba(204,77,112,.25)!important;
        border-radius:50%!important;
        background:rgba(255,255,255,.75)!important;
        box-shadow:inset 0 0 0 3px rgba(221,91,127,.07)!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark::before{
        content:""!important;
        position:absolute!important;
        left:14px!important;
        top:6px!important;
        width:2px!important;
        height:9px!important;
        border-radius:2px!important;
        background:#ca4b70!important;
        transform-origin:1px 9px!important;
        transform:rotate(-8deg)!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark::after{
        content:""!important;
        position:absolute!important;
        left:14px!important;
        top:14px!important;
        width:7px!important;
        height:2px!important;
        border-radius:2px!important;
        background:#ca4b70!important;
        transform-origin:1px 1px!important;
        transform:rotate(24deg)!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-content{
        display:grid!important;
        min-width:0!important;
        gap:3px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-label{
        display:block!important;
        color:#713048!important;
        font-size:10px!important;
        font-weight:800!important;
        line-height:1.1!important;
        letter-spacing:.055em!important;
        text-transform:uppercase!important;
        white-space:nowrap!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-countdown{
        display:block!important;
        min-width:0!important;
        color:#9b6072!important;
        font-size:10px!important;
        font-weight:700!important;
        white-space:nowrap!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-countdown b{
        display:inline-block!important;
        min-width:0!important;
        margin:0!important;
        color:#c53e66!important;
        font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace!important;
        font-size:11px!important;
        font-weight:850!important;
        font-variant-numeric:tabular-nums!important;
        font-feature-settings:"tnum" 1!important;
        line-height:1.1!important;
        letter-spacing:-.025em!important;
        text-align:left!important;
        white-space:nowrap!important;
    }
}
@media(min-width:761px) and (max-height:760px){
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        grid-template-columns:28px minmax(0,1fr)!important;
        min-height:52px!important;
        margin-bottom:6px!important;
        padding:7px 8px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark{
        width:28px!important;
        min-width:28px!important;
        height:28px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark::before{
        left:13px!important;
        top:6px!important;
        height:8px!important;
        transform-origin:1px 8px!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-mark::after{
        left:13px!important;
        top:13px!important;
    }
}

/* COURTREADZ 8.1.45 — the Member renewal status is one low, left-aligned line. */
@media(min-width:761px){
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        box-sizing:border-box!important;
        display:flex!important;
        grid-template-columns:none!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:3px!important;
        width:100%!important;
        min-width:0!important;
        min-height:34px!important;
        max-height:34px!important;
        margin:0 0 7px!important;
        padding:5px 7px!important;
        overflow:hidden!important;
        border:1px solid rgba(204,77,112,.24)!important;
        border-radius:9px!important;
        background:linear-gradient(180deg,#fff9f7 0%,#fdecef 100%)!important;
        color:#713048!important;
        font-family:"Arial Narrow","Aptos Narrow","Roboto Condensed",Arial,sans-serif!important;
        font-size:clamp(8.75px,calc(7.1px + .12vw),9.5px)!important;
        font-weight:720!important;
        font-stretch:condensed!important;
        font-variant-numeric:tabular-nums!important;
        font-feature-settings:"tnum" 1!important;
        line-height:1!important;
        letter-spacing:-.015em!important;
        text-align:left!important;
        white-space:nowrap!important;
        box-shadow:inset 0 1px 0 rgba(255,255,255,.90)!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal .subscription-renewal-prefix{
        display:inline!important;
        flex:0 1 auto!important;
        min-width:0!important;
        color:#713048!important;
        white-space:nowrap!important;
    }
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal > b{
        display:inline!important;
        flex:0 0 auto!important;
        min-width:0!important;
        margin:0!important;
        color:#c53e66!important;
        font:inherit!important;
        font-weight:850!important;
        font-variant-numeric:tabular-nums!important;
        font-feature-settings:"tnum" 1!important;
        letter-spacing:-.02em!important;
        line-height:1!important;
        text-align:left!important;
        white-space:nowrap!important;
    }
}
@media(min-width:761px) and (max-height:760px){
    html body .app-shell > aside.sidebar .sidebar-subscription-renewal{
        min-height:31px!important;
        max-height:31px!important;
        margin-bottom:5px!important;
        padding-top:4px!important;
        padding-bottom:4px!important;
    }
}

/* COURTREADZ 8.1.69 ultimate desktop Login position — intentionally last. */
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{position:fixed!important;inset:0!important;width:100vw!important;min-width:100vw!important;max-width:100vw!important;height:100vh!important;min-height:100vh!important;max-height:100vh!important;overflow:hidden!important}
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{position:fixed!important;inset:auto!important;left:50vw!important;right:auto!important;top:50vh!important;bottom:auto!important;width:100vw!important;min-width:100vw!important;max-width:100vw!important;height:auto!important;margin:0!important;transform:translate3d(-50%,-50%,0)!important;transform-origin:center center!important;overflow:visible!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel{position:relative!important;inset:auto!important;width:calc(100vw - 10px)!important;min-width:0!important;max-width:calc(100vw - 10px)!important;height:auto!important;max-height:calc(100vh - 16px)!important;margin:0 auto!important;overflow:hidden!important;transform:none!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{width:100%!important;max-width:none!important;height:auto!important;max-height:calc(100vh - 16px)!important;margin:0!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important}
@supports(height:100dvh){html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-stack{height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important}html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group,html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group{top:50dvh!important}html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{max-height:calc(100dvh - 16px)!important}}

/* COURTREADZ 8.1.71 narrow curved desktop card — final cascade rule. */
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel{width:calc(100vw - 32px)!important;min-width:0!important;max-width:620px!important;border-radius:34px!important;overflow:hidden!important}
html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page .login-fitted-group>.login-panel>.login-box,html.login-document.login-desktop-device:not(.login-keyboard-open) body.login-body .login-page[data-auth-mode="register"] .login-fitted-group>.login-panel>.login-box{border-radius:34px!important}

/* COURTREADZ 8.1.268 — each mobile authentication mode owns one immutable
   card height. The one-time JavaScript measurement supplies these variables;
   later resize/keypad events cannot compact, scale or auto-size the card. */
@media(max-width:760px){
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-sizes-locked[data-auth-mode="login"]{--login-mobile-active-panel-height:var(--login-mobile-signin-panel-height)}
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-sizes-locked[data-auth-mode="register"]{--login-mobile-active-panel-height:var(--login-mobile-register-panel-height)}
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-sizes-locked[data-auth-mode="password_reset"]{--login-mobile-active-panel-height:var(--login-mobile-password-reset-panel-height)}
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-sizes-locked .login-fitted-group>.login-panel,
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-sizes-locked .login-fitted-group>.login-panel>.login-box{
    box-sizing:border-box!important;
    height:var(--login-mobile-active-panel-height)!important;
    min-height:var(--login-mobile-active-panel-height)!important;
    max-height:var(--login-mobile-active-panel-height)!important;
    transition:none!important;
    animation:none!important;
}
html.login-document.login-mobile-device:not(.login-keyboard-open) body.login-body .login-page.login-mobile-mode-sizes-locked .login-fitted-group>.login-panel,
html.login-document.login-mobile-device:not(.login-keyboard-open) body.login-body .login-page.login-mobile-mode-sizes-locked .login-fitted-group>.login-panel>.login-box{
    overflow:visible!important;
}
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-size-measuring .login-fitted-group>.login-panel,
html.login-document.login-mobile-device body.login-body .login-page.login-mobile-mode-size-measuring .login-fitted-group>.login-panel>.login-box{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
}
}

/* COURTREADZ 8.1.270 — mobile authentication keeps the existing page layout,
   uses tighter vertical spacing and lifts only the complete card for an input. */
@media(max-width:760px){
html.login-document.login-mobile-device body.login-body .login-page .login-fitted-group>.login-panel>.login-box{padding:0 16px 10px!important}
html.login-document.login-mobile-device body.login-body .login-page .login-panel-logo{padding:1px 0 0!important}
html.login-document.login-mobile-device body.login-body .login-page .auth-tabs{gap:4px!important;margin:0 0 7px!important;padding:3px!important}
html.login-document.login-mobile-device body.login-body .login-page .auth-tab{min-height:32px!important;padding:5px 8px!important}
html.login-document.login-mobile-device body.login-body .login-page .field{gap:3px!important;margin-bottom:6px!important}
html.login-document.login-mobile-device body.login-body .login-page .field input{min-height:38px!important;padding:7px 10px!important}
html.login-document.login-mobile-device body.login-body .login-page .field small{margin-top:1px!important;line-height:1.15!important}
html.login-document.login-mobile-device body.login-body .login-page .registration-terms-agreement{margin:3px 0 5px!important;padding:5px 7px!important}
html.login-document.login-mobile-device body.login-body .login-page .primary.wide,
html.login-document.login-mobile-device body.login-body .login-page .password-reset-button{min-height:38px!important;padding-top:6px!important;padding-bottom:6px!important}
html.login-document.login-mobile-device body.login-body .login-page .login-secondary-actions{gap:5px!important;margin-top:3px!important}
html.login-document.login-mobile-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode] .login-fitted-group,
html.login-document.login-mobile-device.login-position-measured:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode] .login-fitted-group{position:fixed!important;top:max(5px,env(safe-area-inset-top,0px))!important;bottom:auto!important;transform:translate3d(0,0,0)!important;transform-origin:center top!important;transition:none!important}
html.login-document.login-mobile-device.login-position-measured.login-mobile-input-lift-active:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode] .login-fitted-group{transform:translate3d(0,var(--login-mobile-input-lift,0px),0)!important;transition:transform 180ms cubic-bezier(.22,.74,.24,1)!important;will-change:transform!important}
@media(min-width:761px){
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page .login-fitted-group>.login-panel,
html.login-document.login-desktop-device:not(.login-keyboard-open):not(.login-panel-returning) body.login-body .login-page[data-auth-mode] .login-fitted-group>.login-panel{width:calc(100vw - 32px)!important;min-width:0!important;max-width:500px!important}
}
}

/* COURTREADZ 8.1.82 final permanent Raffle control — intentionally last. */
html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link,
html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"],
html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link{
    box-sizing:border-box!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    text-decoration:none!important;
}
@media(min-width:761px){
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"]{
        flex:0 0 42px!important;
        width:100%!important;
        min-width:0!important;
        height:42px!important;
        min-height:42px!important;
        max-height:42px!important;
        margin:0!important;
        padding:6px 7px!important;
        gap:7px!important;
        align-items:center!important;
        overflow:hidden!important;
        border:2px solid #e2a82f!important;
        border-radius:9px!important;
        background:linear-gradient(135deg,#fff8cf 0%,#ffe69a 52%,#ffd477 100%)!important;
        color:#6b3d00!important;
        box-shadow:0 4px 10px rgba(128,79,0,.16)!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.announcements-nav-link + a.raffle-nav-link.active,
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link[data-raffle-ready="1"].active{
        border-color:#a43b5d!important;
        background:linear-gradient(180deg,#df6386 0%,#c93e69 100%)!important;
        color:#fff!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .raffle-ticket-icon{
        display:inline-grid!important;
        place-items:center!important;
        flex:0 0 22px!important;
        width:22px!important;
        min-width:22px!important;
        height:22px!important;
        min-height:22px!important;
        margin:0!important;
        padding:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:17px!important;
        line-height:22px!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .nav-label{
        display:block!important;
        flex:1 1 auto!important;
        min-width:0!important;
        overflow:visible!important;
        color:inherit!important;
        font-size:12px!important;
        font-weight:950!important;
        line-height:20px!important;
        white-space:nowrap!important;
    }
    html body .app-shell > aside.sidebar .nav.sidebar-scroll-nav > a.raffle-nav-link .raffle-nav-badge{
        display:inline-grid!important;
        visibility:visible!important;
        opacity:1!important;
    }
}
@media(max-width:760px){
    html body .app-shell > aside.sidebar .member-mobile-dropdown.is-open{
        max-height:calc(100dvh - 82px - env(safe-area-inset-top,0px))!important;
        overflow-x:hidden!important;
        overflow-y:auto!important;
        overscroll-behavior:contain!important;
        -webkit-overflow-scrolling:touch!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link{
        grid-column:1/-1!important;
        justify-content:flex-start!important;
        min-height:48px!important;
        padding:10px 12px!important;
        gap:8px!important;
        border:2px solid #ffd87b!important;
        border-radius:10px!important;
        background:linear-gradient(135deg,#b64d69 0%,#8f344f 100%)!important;
        color:#fff!important;
        font-size:13px!important;
        font-weight:950!important;
        box-shadow:0 5px 14px rgba(73,20,38,.24)!important;
    }
    html body .app-shell > aside.sidebar .member-mobile-dropdown .mobile-menu > a.raffle-nav-link .raffle-nav-badge{
        margin-left:auto!important;
    }
}
