.support-page-menu { margin:1rem; }
.support-page-menu summary { cursor:pointer; font-weight:700; }
.android-app-support { --app-support-height:calc(48px + env(safe-area-inset-bottom, 0px)); }
.app-session-bar {
    --app-support-height:calc(48px + env(safe-area-inset-bottom, 0px));
    position:fixed;
    inset:auto 0 0;
    min-height:var(--app-support-height);
    padding:4px 12px calc(4px + env(safe-area-inset-bottom, 0px));
    z-index:49;
    display:flex;
    align-items:center;
    justify-content:space-between;
    box-sizing:border-box;
    border-top:1px solid #c8dfd6;
    background:#fff;
    color:#08665b;
    font-weight:700;
}
.app-session-bar form { margin:0; }
.app-session-bar .app-session-logout {
    min-height:40px;
    padding:6px 18px;
    border:1px solid #a62135;
    border-radius:10px;
    background:#a62135;
    color:#fff;
    font:inherit;
    cursor:pointer;
}
.app-session-menu { position:relative; }
.app-session-menu summary { min-height:40px; padding:8px; cursor:pointer; }
.app-session-menu button {
    position:absolute;
    bottom:calc(100% + 8px);
    left:0;
    width:max-content;
    max-width:calc(100vw - 24px);
    padding:10px 14px;
    background:#fff;
    border:1px solid #96b9ae;
    border-radius:10px;
    color:#173d39;
    font:inherit;
    cursor:pointer;
}
.android-app-support .bottom-nav { bottom:var(--app-support-height); padding-bottom:6px; }
.android-app-support .app-main { padding-bottom:calc(120px + var(--app-support-height)); }
.android-app-support .app-back { bottom:calc(72px + var(--app-support-height)); }
body.android-app-support:not(:has(.bottom-nav)) .app-back { bottom:calc(12px + var(--app-support-height)); }
.app-board.android-app-support .board-screen { height:calc(100% - var(--app-support-height)); }
@media screen {
    body:not(.android-app):has(> .app-session-bar) { padding-bottom:calc(48px + env(safe-area-inset-bottom, 0px)); }
    body:not(.android-app):has(> .app-session-bar) .back-button,
    body:not(.android-app):has(> .app-session-bar) #back-to-top { bottom:calc(58px + env(safe-area-inset-bottom, 0px)); }
}
.support-dialog { width:min(94vw,660px); max-height:86vh; padding:1.25rem; overflow:auto; border:1px solid #96b9ae; border-radius:14px; background:#fff; color:#173d39; }
.support-dialog::backdrop { background:#163e38aa; }
.support-dialog label,.support-detail label { display:block; margin:.65rem 0; }
.support-dialog textarea,.support-detail textarea { width:100%; box-sizing:border-box; }
.support-detail p,.support-item { overflow-wrap:anywhere; }
.support-item { border-bottom:1px solid #c8dbd5; padding:.45rem 0; }
.support-reminder { background:#fff2d8; color:#663d12; border-radius:8px; padding:.7rem; font-weight:700; }
.support-dialog [hidden] { display:none!important; }
@media print { .support-page-menu,.support-dialog { display:none!important; } }
