/* hearnfamily.org css Fri, 05 Jun 2026 22:58:16 +0100 */

/* modules/amAction/css/amAction.css */


#action_update {
    padding:5px;
    height:50px;
    width:98%;
}

#action_text_counter {
    position:relative;
    float:left;
    font-size:12px;
    left:146px;
    bottom:24px;
    font-style:italic;
}

#asi {
    display:none;
    vertical-align:middle;
    margin:6px 4px 0 4px;
    border:0;
}

#action_submit {
    margin-top:9px;
}

.action_warning {
    color:var(--am-danger);
}

.action_exceeded {
    color:var(--am-danger);
}

.action_detail {
    padding:1em;
}

.action_item {
    font-size:16px;
    overflow:auto;
}

.action_item_media {
    vertical-align:top;
    padding:0 16px 0 12px;
    cursor:pointer;
}

.action_item_desc {
    font-size:14px;
}

.action_item_title {
    font-size:14px;
    font-weight:bold;
}

.action_item_actions {
    display:inline-block;
    color:var(--am-text-tertiary);
    font-size:12px;
    text-transform:lowercase;
    margin-bottom:12px;
}

.action_item_text {
    font-size:15px;
}

.action_item_shared {
    width:100%;
    background:var(--am-bg-elevated);
    padding:12px 0 12px 0;
    margin-top:6px;
}

.action_item_user_img {
    margin:1px;
    float:left;
}

.action_item_holder {
    width:100%;
    border-bottom:1px solid var(--am-border-subtle);
    padding:12px 0;
}

.action_item_holder:hover {
    background:var(--am-bg-sunken);
}

.action_item_mention {
    background:var(--am-bg-sunken);
    padding:6px;
    border-radius:3px;
    margin-top:6px;
}

.action_item_link {
    display:inline-block;
    width:100%;
    height:100%;
    padding-right:10px;
    box-sizing:border-box;
}

.action_media_thumb {
    display:inline-block;
}

.action_item_content {
    width:100%;
    color:var(--am-text-primary);
}

.action_item_content a:hover {
    text-decoration:underline;
}

.action_item_delete {
    position:absolute;
    top:0;
    right:0;
    display:none;
    padding-right:12px;
}

.action_item_share {
    display:inline-block;
    color:var(--am-text-tertiary);
    font-size:12px;
    margin:6px 16px 0 0;
}

.action_item_share:hover {
    color:var(--am-text-primary);
}

.action_item_comments {
    display:inline-block;
    font-style:italic;
    padding-left:3px;
    color:var(--am-text-secondary);
    font-size:12px;
}

.action_item_comments:hover {
    color:var(--am-text-primary);
}

.hash_link {
    text-decoration:none;
}

.mention_item {
    margin:0 !important;
    padding:3px !important;
}

#timeline_text_counter {
    font-size:12px;
    font-style:italic;
    padding:1em;
    display:inline-block;
}

/* ─── Loading skeleton ──────────────────────────────────────── */
.am-modal-loading {
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:120px;
    padding:24px;
}

.am-modal-spinner {
    width:36px;
    height:36px;
    border:3px solid var(--am-border-subtle,#ddd);
    border-top-color:var(--am-primary,#3b82f6);
    border-radius:50%;
    animation:am-spin 0.7s linear infinite;
}

@keyframes am-spin {
    to { transform:rotate(360deg); }
}

/* ─── Modal shared header ───────────────────────────────────── */
.am-modal-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 14px 10px;
    border-bottom:1px solid var(--am-border-subtle,#eee);
    background:var(--am-bg-elevated,#f5f5f5);
    border-radius:8px 8px 0 0;
}

.am-modal-title {
    font-size:14px;
    font-weight:600;
    color:var(--am-text-primary);
    letter-spacing:0.02em;
}

.am-modal-close-btn {
    background:none;
    border:none;
    cursor:pointer;
    font-size:20px;
    line-height:1;
    color:var(--am-text-secondary,#666);
    padding:0 2px;
    transition:color 0.15s,transform 0.15s;
}

.am-modal-close-btn:hover {
    color:var(--am-text-primary,#111);
    transform:scale(1.15);
}

/* ─── Share modal footer ────────────────────────────────────── */
.am-modal-footer {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:6px 0 0;
    gap:8px;
}

.am-char-counter {
    font-size:11px;
    font-style:italic;
    color:var(--am-text-secondary);
    flex-shrink:0;
}

.am-share-actions {
    display:flex;
    align-items:center;
    gap:8px;
}

.am-share-submit {
    padding:5px 16px;
    font-size:13px;
}

.am-share-textarea {
    height:54px !important;
    resize:none;
    font-size:13px;
    padding:7px;
    box-sizing:border-box;
    border-radius:4px;
    width:100%;
}

/* Share / detail timeline modals:amCore/css/amCore.actionModal.css + amCore.openModal */

/* Legacy SimpleModal placeholder (page); timeline inject uses #amaction_share_panel — never display:none there. */
#share_modal {
    display:none;
    z-index:100000;
    box-sizing:border-box;
    min-width:0;
}

#amaction_share_panel {
    box-sizing:border-box;
    min-width:0;
}

#share_networks {
    position:relative;
    float:right;
    font-size:14px;
    right:0;
    bottom:0;
    font-style:italic;
}

#share_networks img {
    margin:0 3px;
}

#share_submit_indicator,
#amaction_share_submit_indicator {
    display:none;
    vertical-align:middle;
    margin:9px 9px 0 3px;
    border:0;
}

#share_submit,
#amaction_share_submit {
    margin-top:8px;
}

.share_warning {
    color:var(--am-danger) !important;
}

.share_exceeded {
    color:var(--am-danger) !important;
}

.share_item {
    font-size:16px;
    overflow:visible;
}

.share_item_media {
    vertical-align:top;
    padding:0 16px 0 12px;
    cursor:pointer;
}

.share_item_title {
    font-size:13px;
    font-weight:bold;
}

.share_item_actions {
    color:var(--am-text-tertiary);
    font-size:12px;
    font-style:italic;
    text-transform:lowercase;
}

.share_item_user_img {
    margin:1px;
    float:left;
}

.share_item_holder {
    width:100%;
    border-bottom:1px solid var(--am-border-subtle);
    padding:12px 0 12px 0;
}

.share_item_holder:hover {
    background:var(--am-bg-sunken);
}

.share_item_holder_shared {
    width:100%;
    border-bottom:1px solid var(--am-border-subtle);
    background:var(--am-bg-elevated);
    padding:12px 0 12px 0;
}

.share_item_desc {
    vertical-align:top;
    font-size:14px;
}

.share_item_desc a {
    color:var(--am-text-primary);
}

.share_item_link {
    display:inline-block;
    width:100%;
    height:100%;
    cursor:pointer;
}

.share_media_thumb {
    display:inline-block;
}

.share_item_content {
    width:100%;
    color:var(--am-text-primary);
}

.share_item_content a:hover {
    text-decoration:underline;
}

.share_item_delete {
    position:absolute;
    top:0;
    right:0;
    display:none;
    padding-right:12px;
}

.share_item_share {
    display:inline-block;
    color:var(--am-text-tertiary);
    font-size:12px;
    margin:6px 16px 0 0;
}

.share_item_action:hover {
    color:var(--am-text-primary);
}

.share_item_comments {
    display:inline-block;
    font-style:italic;
    padding-left:3px;
    color:var(--am-text-secondary);
    font-size:12px;
}

.share_item_comments:hover {
    color:var(--am-text-primary);
}

#quick_action_box {
    position:relative;
}

#quick_action_tab_box {
    padding:0 2px 6px 2px;
    overflow:hidden;
}

.quick_action_tab {
    margin:4px 2px;
    float:left;
    cursor:pointer;
}

#quick_action_title {
    float:right;
    margin-top:22px;
    text-transform:capitalize;
}

#share_item_box,
#amaction_share_item_box {
    padding:1px;
    max-height:min(52vh,480px);
    overflow-x:hidden;
    overflow-y:auto;
    -ms-overflow-style:-ms-autohiding-scrollbar;
    border:1px solid var(--am-border-subtle);
    border-radius:4px;
    margin-bottom:10px;
    background:var(--am-bg-sunken,#f8f8f8);
}

#shared_item_status {
    position:relative;
    padding:10px 20px;
    vertical-align:middle;
}

#shared_item_status span {
    display:inline-block;
    margin-top:6px;
}

#shared_item_view_button {
    float:right;
}

#action_modal .media_panel .action_info {
    display:none;
}

#action_modal .col8 .action {
    width:100%;
}

#action_modal .action_wrap,#action_modal .amaction-comment-wrap {
    padding:0 12px;
}

#action_modal.media .action_wrap {
    padding:12px 12px 0;
}

#action_modal .action_wrap > .action {
    margin:0;
}

#action_modal .item_media.action_text.clearfix .urlscan_card {
    font-size:12px;
}

#action_modal .item_media.action_text.clearfix {
    padding:1em;
    font-size:20px;
}

#action_modal .action {
    margin:0;
    box-shadow:none;
    background:none;
    max-width:none;
}

#action_modal .block {
    position:relative;
    left:0;
    right:0;
    top:0;
    bottom:0;
    min-width:0;
    padding:12px 0;
}

/* Text / comment modals:normal flow so height follows content (SimpleModal measures outerHeight). */
#action_modal:not(.media) .block {
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
}

#action_modal.media .item_media {
    box-shadow:none;
}

#action_modal .modal_paging {
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
}

#action_modal .action_user_image {
    position:relative;
    top:-10px;
}

#action_modal.media .action_user_image {
    top:0;
}

#action_modal #comment_form_section .item {
    box-shadow:none;
    margin:0;
    border:none;
}

#action_modal.media #comment_form_section .item {
    padding:0;
}

#action_modal #comment_form_section .item.error {
    padding:10px;
}

#action_modal .comment_page_section .item {
    margin:0;
    box-shadow:none;
}

#action_modal .modal_paging .prev {
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    right:50%;
    background:url('https://hearnfamily.org/image/img/module/jrCore/lightbox2-prev.png') left 48% no-repeat;
    opacity:0;
    transition:opacity 1s ease 0s;
    height:auto;
    width:auto;
}

#action_modal .modal_paging .next {
    position:absolute;
    left:50%;
    top:0;
    bottom:0;
    right:0;
    background:url('https://hearnfamily.org/image/img/module/jrCore/lightbox2-next.png') right 48% no-repeat;
    opacity:0;
    transition:opacity 1s ease 0s;
    height:auto;
    width:auto;
}

#action_modal #gallery_box .close {
    position:absolute;
    right:15px;
    top:15px;
    width:30px;
    height:30px;
    background:url('https://hearnfamily.org/image/img/module/jrCore/lightbox2-close.png') 0 0 no-repeat;
    z-index:20;
    cursor:pointer;
}

#action_modal .modal_paging .next:hover,#action_modal .modal_paging .prev:hover {
    opacity:1;
}

#action_modal #gallery_box {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
}

#action_modal #comment_box {
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    height:100%;
    transition:top 1s ease 0s;
    z-index:21;
}

#action_modal #comment_box.closed {
    top:100%;
    display:block;
}

#action_modal #comment_box .comment_page_section {

}

#action_modal .comment_close {
    right:10px;
    top:10px;
    position:absolute;
    z-index:20
}

#action_modal #gallery_box .title {
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    background:color-mix(in srgb,var(--am-text-primary) 50%,transparent);
    box-shadow:none !important;
}

#action_modal .title {
    box-shadow:none !important;
    font-size:14px;
    font-weight:normal;
}

#action_modal #gallery_box .title a {
    color:white;
}

#action_modal .comment_page_section .col2 {
    width:10%;
}

#action_modal .comment_page_section .col10 {
    width:90%;
}

#action_modal.media .comment_page_section .col2 {
    width:16.66%;
}

#action_modal.media .comment_page_section .col10 {
    width:83.34%;
}

#action_modal.media .comment_page_section {
    font-size:13px;
}

#action_modal.media {
    height:min(86vh,600px);
    max-height:min(86vh,600px);
    width:100%;
    max-width:960px;
    overflow:hidden;
}

#action_modal.media .block {
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    padding:12px;
}

#action_modal .item_media {
    padding:0;
}

#action_modal {
    box-sizing:border-box;
    position:relative;
    min-width:0;
}

/* Force all content inside comment modal to respect the container width */
#action_modal .block *,
#action_modal .comment_panel * {
    max-width:100% !important;
    box-sizing:border-box !important;
}
#action_modal .block .row,
#action_modal .block [class^="col"],
#action_modal .block [class*=" col"],
#action_modal .block .item,
#action_modal .block .box,
#action_modal .block .wrap {
    width:100% !important;
    float:none !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
#action_modal audio,
#action_modal .block video,
#action_modal .block iframe,
#action_modal .block img {
    max-width:100% !important;
    width:auto !important;
    height:auto !important;
}
#action_modal .list_buttons { display:none !important; }

#action_modal .comment_page_section {
    width:auto;
    display:block;
    max-height:none;
    background:none;
}

#action_modal .amaction-comment-wrap {

}

#action_modal #comment_form_holder {
    position:static;
    bottom:auto;
    left:auto;
    right:auto;
    padding:0 12px;
}

#action_modal.media #comment_form_holder {
    position:static;
    bottom:auto;
    left:auto;
    right:auto;
    padding:0 12px;
}

#action_modal .media_panel {
    width:66%;
    float:left;
}

#action_modal .comment_panel {
    width:34%;
    position:absolute;
    top:12px;
    bottom:1em;
    right:0;
}

@media handheld,only screen and (max-width:767px) {
    #action_modal {
        overflow:auto;
        position:absolute;
        left:0;
        right:0;
        top:0;
        bottom:0;
        padding:0;
        margin:0;
        width:auto;
    }

    #action_modal .comment_page_section .col2 {
        float:left;
        width:16.66%;
    }

    #action_modal .comment_page_section .col10 {
        float:left;
        width:83.34%;
    }

    #action_modal #comment_form_section > .item {
        margin:0;
    }

    #action_modal .modal_paging .next,.modal_paging .prev {
        opacity:1;
    }

    #action_modal.media {
        height:100vh;
        width:auto;
        max-width:100%;
    }

    #action_modal #comment_box {
        background:white;
    }

    #action_modal.media .block {
        padding:0;
    }
}

#action_modal .action_info {
    min-height:60px;
    padding:0;
}

/* Scale any oversized media inside the comment/detail modal */
#action_modal img,#action_modal video {
    max-width:100%;
    height:auto;
}
#action_modal .action_item_media {
    width:60px;
    padding:0 8px 0 4px;
}
#action_modal .action_item_media img {
    width:48px;
    height:48px;
    object-fit:cover;
    border-radius:4px;
}

/* Text/comment modals:grow with content; SimpleModal wrap scrolls if taller than viewport. */
#action_modal:not(.media) .amaction-modal-scroller {
    height:auto;
    max-height:none;
    overflow-x:hidden;
    overflow-y:visible;
    width:100%;
}

#action_modal.media .amaction-modal-scroller {
    overflow-x:hidden;
    overflow-y:auto;
    height:calc(100% - 121px);
    width:100%;
}

#action_modal.media .amaction-modal-scroller::-webkit-scrollbar {
    display:none;
}

#action_modal.media .amaction-modal-scroller {
    scrollbar-width:none;
}

/* Modal close control */
.amaction-modal-close-corner {
    position:absolute;
    top:6px;
    right:8px;
    z-index:10;
}

.amaction-modal-close-corner a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:28px;
    height:28px;
    border-radius:50%;
    background:var(--am-bg-elevated,rgba(0,0,0,.08));
    color:var(--am-text-secondary,#555);
    transition:background 0.15s,color 0.15s;
    text-decoration:none;
}

.amaction-modal-close-corner a:hover {
    background:var(--am-bg-sunken,rgba(0,0,0,.15));
    color:var(--am-text-primary,#111);
}

.amaction-modal-close-corner--alt {
    z-index:5;
}

/* Profile timeline index (was inline on form / wrapper) */
.amaction-item-index-search-form {
    margin-bottom:0;
}

.amaction-item-index-timeline-wrap {
    padding:0;
    border-bottom:none;
}

.amaction-item-list-relative {
    position:relative;
}

.amaction-pad-below-text {
    padding:0 0 1em;
}

.amaction-original-html-wrap--no-top-pad {
    padding-top:0;
}

.amaction-action-no-margin {
    margin:0;
}

.amaction-box-body-rounded {
    border-radius:4px;
}

.amaction-title-row-pad {
    padding:12px 1em;
}

.amaction-float-right {
    float:right;
}

.amaction-float-left {
    float:left;
}

.amaction-media-title-line {
    padding:12px 0;
    font-weight:bold;
}

.amaction-item-flush {
    margin:0;
    padding:0;
}

.amaction-clear {
    clear:both;
}

.amaction-hidden {
    display:none;
}

.amaction-sr-only {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

.am-empty-state {
    text-align:center;
    padding:2rem 1rem;
    color:var(--am-text-secondary);
}

.am-empty-state__title {
    font-size:1.1rem;
    font-weight:600;
    margin:0 0 0.5rem;
}

.am-empty-state__desc {
    margin:0;
    font-size:0.95rem;
}

@media (min-width:768px) {
    .amaction-item-grid-wrap {
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:1rem;
    }
}

/* Timeline modal chrome:modules/amCore/css/amCore.actionModal.css */


/* modules/amComment/css/amComment.css */


/* @title Main Comment Indent */
/* @help This controls how far the MAIN LEVEL comments on an item is indented */
.comment-level-0 {
    margin-left:0;
}

/* @title Comment Level 1 */
/* @help This controls how far FIRST LEVEL comment replies on an item are indented */
.comment-level-1 {
    margin-left:25px !important;
}

/* @title Comment Level 2 */
/* @help This controls how far SECOND LEVEL comment replies on an item are indented */
.comment-level-2 {
    margin-left:50px !important;
}

/* @title Comment Level 3 */
/* @help This controls how far THIRD LEVEL comment replies on an item are indented */
.comment-level-3 {
    margin-left:75px !important;
}

/* @title Comment Level 4 */
/* @help This controls how far FOURTH LEVEL comment replies on an item are indented */
.comment-level-4 {
    margin-left:100px !important;
}

/* @title Comment Level 5 */
/* @help This controls how far FIFTH LEVEL comment replies on an item are indented */
.comment-level-5 {
    margin-left:125px !important;
}

/* @title Comment Level 6 */
/* @help This controls how far SIXTH LEVEL comment replies on an item are indented */
.comment-level-6 {
    margin-left:150px !important;
}

/* @title Comment Level 7 */
/* @help This controls how far SEVENTH LEVEL comment replies on an item are indented */
.comment-level-7 {
    margin-left:175px !important;
}

/* @title Comment Level 8 */
/* @help This controls how far EIGHTH LEVEL and HIGHER comment replies on an item are indented */
.comment-level-last {
    margin-left:200px !important;
}

/* @title Comment Reply Tag */
/* @help Controls the text of the &quot;Reply&quot; text shown on a comment when threading is enabled */
.comment-reply {
    display:inline-block;
    margin-top:6px;
    font-size:11px;
    text-transform:uppercase;
}

.amComment_upload_attachment {
    margin-top:-32px;
    text-align:right;
    width:100%;
}

.amComment_upload_attachment li.qq-upload-success {
    text-align:left;
}

.amComment_upload_attachment .qq-uploader {
    float:right;
}

.amComment-form-footer {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2,8px);
    margin-top:var(--am-space-2,8px);
    width:100%;
    box-sizing:border-box;
}

.amComment-form-footer__actions {
    display:inline-flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-1,4px);
    margin-left:auto;
}

/*
 * Optional layout:pass detail_stack_footer="1" from {amComment_form …}.
 * Footer sits below the avatar + textarea row,inset to the body column (col10).
 */
#comment_form_section .amComment-comment-form--stack-footer .amComment-stack-footer-row {
    margin-top:0;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-stack-footer__gutter {
    padding-top:0;
    padding-bottom:0;
    min-height:0;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-stack-footer__main {
    min-width:0;
}
#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:var(--am-space-2,8px);
    width:100%;
    margin-top:var(--am-space-1,4px);
    margin-left:0;
    padding-top:0;
    border-top:none;
    box-sizing:border-box;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment-form-footer__attach {
    order:1;
    flex:1 1 auto;
    min-width:0;
    width:auto;
    max-width:min(100%,28rem);
    margin-left:0;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment_upload_attachment {
    margin-top:0;
    text-align:left;
    width:auto;
    max-width:100%;
    float:none;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment_upload_attachment .qq-uploader {
    float:none;
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment-form-footer__actions {
    order:2;
    flex:0 0 auto;
    margin-left:auto;
    margin-top:0;
    width:auto;
    max-width:100%;
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:flex-end;
    align-items:center;
    gap:var(--am-space-2,8px);
}

#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment-form-footer__actions input[type="submit"].am-btn,
#comment_form_section .amComment-comment-form--stack-footer .amComment-form-footer--stack-below .amComment-form-footer__actions .am-btn--primary {
    flex:none;
    width:auto;
    max-width:100%;
    min-width:0;
    margin-top:0;
    margin-left:0;
    box-sizing:border-box;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:var(--am-space-2,8px);
    padding:var(--am-space-2) var(--am-space-4);
    font-size:var(--am-font-sm);
    font-weight:500;
    line-height:1;
    min-height:0;
    white-space:nowrap;
}

.amComment-form-footer .amComment_upload_attachment {
    margin-top:0;
    text-align:left;
    width:auto;
    flex:0 1 auto;
    min-width:0;
}

.amComment-form-footer .amComment_upload_attachment .qq-uploader {
    float:none;
}

#comment_form_holder {
    margin:0 0 var(--am-space-2);
    padding:0;
}

#comment_form_holder .form_editor_holder {
    width:100%;
}

#comment_form_section {
    margin:0;
    padding:0;
}

/* Composer shell — flush layout; field chrome lives on the textarea/editor only */
#comment_form_section .amComment-form-table.item {
    margin:0;
    padding:0;
    border:none;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    box-sizing:border-box;
}

#comment_form_section #comment_reply_to.item.success {
    margin:0 0 var(--am-space-2);
    padding:var(--am-space-2) var(--am-space-3);
    border:none;
    border-radius:var(--am-radius-md);
    background:var(--am-bg-subtle);
    font-size:var(--am-font-sm);
}

#comment_form_section .item.error {
    margin:0 0 var(--am-space-2);
    padding:var(--am-space-2) var(--am-space-3);
    border-radius:var(--am-radius-md);
    font-size:var(--am-font-sm);
}

/* Override skin .form_textarea min-height for a comfortable composer */
#comment_text,
.amComment-comment-form textarea#comment_text.form_textarea {
    box-sizing:border-box;
    min-height:var(--am-touch-min,44px);
    height:auto;
    max-height:160px;
    width:100%;
    font-family:var(--am-font-sans);
    font-size:var(--am-font-sm);
    line-height:var(--am-line-height-normal,1.45);
    padding:var(--am-space-2) var(--am-space-3);
    border:1px solid var(--am-border-default);
    border-radius:var(--am-radius-md);
    background:var(--am-bg-base);
    color:var(--am-text-primary);
    resize:vertical;
    transition:border-color var(--am-trans-fast),box-shadow var(--am-trans-fast);
}

#comment_text:focus,
.amComment-comment-form textarea#comment_text.form_textarea:focus {
    outline:none;
    border-color:var(--am-primary);
    box-shadow:0 0 0 3px var(--am-primary-light);
}

#comment_text::placeholder,
.amComment-comment-form textarea#comment_text.form_textarea::placeholder {
    color:var(--am-text-disabled);
}

/* Compact composer + list avatars (jrImage xxsmall + display cap) */
.amComment-avatar-wrap {
    padding:2px;
    border:none;
    background:transparent;
    box-sizing:border-box;
}

.amComment-avatar-img {
    max-width:28px;
    max-height:28px;
    width:auto;
    height:auto;
    vertical-align:middle;
    border-radius:50%;
}

.amComment-thread-body-col {
    position:relative;
}

/*
 * Skin 1140 grid gives .col2/.col1 a percentage width,so a 28px avatar leaves a huge dead gap.
 * Flex row:avatar column shrink-wraps; body takes the rest.
 */
.amComment-form-table .row,
.amComment-comment-block .row,
.amComment-thread-row {
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:var(--am-space-2,8px);
    width:100%;
    max-width:100%;
    margin-left:0;
    margin-right:0;
    overflow:visible;
}

/* Footer row under composer:align to top so blank avatar gutter does not vertically center the bar */
.amComment-comment-form--stack-footer .amComment-stack-footer-row.amComment-thread-row {
    align-items:flex-start;
}

.amComment-form-table .row::after,
.amComment-comment-block .row::after,
.amComment-thread-row::after {
    display:none;
}

.amComment-form-table .row > [class*="col"],
.amComment-comment-block .row > [class*="col"],
.amComment-thread-row > [class*="col"] {
    float:none;
    width:auto;
    margin-right:0;
    margin-left:0;
}

.amComment-form-table .row > .col10,
.amComment-form-table .row > .col11,
.amComment-comment-block .row > .col10,
.amComment-comment-block .row > .col11,
.amComment-thread-row > .col10,
.amComment-thread-row > .col11 {
    flex:1 1 auto;
    min-width:0;
}

.amComment-form-table .row > .col2,
.amComment-form-table .row > .col1,
.amComment-comment-block .row > .col2,
.amComment-comment-block .row > .col1,
.amComment-thread-row > .col2,
.amComment-thread-row > .col1 {
    flex:0 0 auto;
    max-width:40px;
}

/* Vertically center avatar relative to the comment/composer body column */
.amComment-thread-avatar-col {
    display:flex;
    align-items:center;
    justify-content:flex-start;
}

.amComment-comment-block.item {
    margin:6px 0;
    padding:var(--am-space-2,8px) var(--am-space-2,8px);
}

/*
 * Skins (arcitech,MIS,…) use `.comment_page_section > div { display:table }` for legacy
 * jrComment rows. amComment uses flex (`.amComment-thread-row`); `display:table` on each
 * `.item.amComment-comment-block` breaks that layout and keeps action clusters from behaving.
 */
.comment_page_section > .amComment-comment-block {
    display:block;
    width:100%;
    box-sizing:border-box;
}

.amComment-item-inner,
.amComment-itemlist-inner {
    margin-left:0;
    padding:0;
    clear:both;
}

.amComment-item-meta {
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:var(--am-space-1,4px);
    margin-bottom:var(--am-space-1,4px);
    font-size:var(--am-font-xs,12px);
    line-height:1.35;
}

.amComment-meta-time {
    text-transform:lowercase;
    color:var(--am-text-tertiary,#a3a3a3);
}

.amComment-meta-sep::before {
    content:"\00b7";
    margin:0 0.2em;
    color:var(--am-text-tertiary,#a3a3a3);
}

.amComment-item-text {
    font-size:var(--am-font-sm,0.9375rem);
    line-height:1.45;
    margin:0;
}

.amComment-comment-block .comment-reply {
    margin-top:0;
    font-size:var(--am-font-xs,11px);
}

.amComment-thread-expand {
    margin-top:var(--am-space-1,4px);
    font-size:var(--am-font-xs,12px);
}

.amComment-form-main-compact {
    padding:0;
    margin:0;
}

#comment_form_section .amComment-form-cell-main {
    padding:0;
}

#comment_form_section .amComment-comment-form .amComment-form-footer__actions {
    margin-top:0;
}

#comment_form_section .amComment-comment-form .am-btn--primary,
#comment_form_section .amComment-comment-form input[type="submit"] {
    margin-top:0;
    padding:var(--am-space-2) var(--am-space-4);
    font-size:var(--am-font-sm);
    line-height:1;
    min-height:var(--am-touch-min,44px);
    border-radius:var(--am-radius-md);
}

#comment_form_section .amComment-comment-form textarea + br {
    display:none;
}

#comment_form_holder .form_editor_holder,
#comment_form_section .form_editor_holder {
    min-height:0;
}

#comment_form_section .mce-tinymce,
#comment_form_section .tox-tinymce {
    border:1px solid var(--am-border-default) !important;
    border-radius:var(--am-radius-md) !important;
    overflow:hidden;
    box-sizing:border-box;
}

/* Scoped:TinyMCE sets iframe height inline; this caps default chrome for a short composer */
#comment_form_section .mce-edit-area iframe,
#comment_form_section .tox-edit-area iframe {
    min-height:96px;
    max-height:200px;
}

/* Icon-only attach / submit controls (detail_stack_footer + amCore_icon params) */
#comment_form_section .attachment_upload_button .qq-upload-button {
    box-sizing:border-box;
    min-width:var(--am-touch-min,44px);
    min-height:var(--am-touch-min,44px);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:var(--am-space-1);
    line-height:0;
    border:none;
    border-radius:var(--am-radius-md);
    background:transparent;
    box-shadow:none;
    cursor:pointer;
    transition:background var(--am-trans-fast),color var(--am-trans-fast);
}

#comment_form_section .attachment_upload_button .qq-upload-button:hover,
#comment_form_section .attachment_upload_button .qq-upload-button:active {
    border:none;
    box-shadow:none;
    background:var(--am-bg-subtle);
}

#comment_form_section .attachment_upload_button .qq-upload-button:focus-visible {
    outline:none;
    box-shadow:0 0 0 3px var(--am-primary-light);
}

#comment_form_section .attachment_upload_button .qq-upload-button img.am-icon {
    display:block;
    width:22px;
    height:22px;
}

.amComment-submit--amcore-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0;
    min-width:var(--am-touch-min,44px);
    min-height:var(--am-touch-min,44px);
    padding:var(--am-space-1);
    line-height:0;
    border-radius:var(--am-radius-md);
    box-sizing:border-box;
}

.amComment-submit--amcore-icon.am-btn--primary {
    background:transparent !important;
    background-color:transparent !important;
    border:none !important;
    box-shadow:none !important;
    color:var(--am-text-secondary);
}

.amComment-submit--amcore-icon.am-btn--primary:hover,
.amComment-submit--amcore-icon.am-btn--primary:focus-visible {
    background:var(--am-bg-subtle) !important;
    background-color:var(--am-bg-subtle) !important;
    color:var(--am-primary);
    outline:none;
    box-shadow:0 0 0 3px var(--am-primary-light);
}

.amComment-submit--amcore-icon img.am-icon {
    display:block;
    width:22px;
    height:22px;
}

/* Reactions:compact inline icons,no pill/box background */
.amComment-reaction-bar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
    margin:0 0 var(--am-space-1,4px);
}

.amComment-react-btn {
    margin:0;
    padding:2px;
    border:0;
    background:transparent;
    line-height:0;
    cursor:pointer;
    border-radius:var(--am-radius-sm,4px);
    min-width:0;
    min-height:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
}

.amComment-react-btn:hover {
    background:transparent;
    opacity:0.8;
}

.amComment-react-btn:focus-visible {
    outline:2px solid var(--am-primary,#0369a1);
    outline-offset:2px;
    opacity:1;
}

.amComment-react-icon {
    width:var(--am-icon-sm,16px);
    height:var(--am-icon-sm,16px);
    display:block;
    object-fit:contain;
    object-position:center;
    -webkit-user-drag:none;
    image-rendering:-webkit-optimize-contrast;
}

/* Action modal:less dead space above the composer (overrides jrAction #action_modal.media .action_wrap) */
#action_modal #comment_wrap {
    padding-top:4px;
    margin-top:0;
}

#action_modal.media #scroller .action_wrap {
    padding:8px 12px 2px;
}

/* Layout:match comment list — skin grid .container > .row > .col2 + .col10 (avatar left,form right) */
.amComment-form-table {
    width:100%;
}

.amComment-form-table .container {
    width:100%;
}

.amComment-form-cell-main {
    min-width:0;
}

.amComment-form-submit-row {
    vertical-align:middle;
}

.amComment-form-footer--modal .amComment-form-footer__actions.amComment-form-submit-btn-modal input.form_button {
    margin-top:0;
}

.amComment-index-meta {
    margin-left:24px;
}

.amComment-index-info {
    display:inline-block;
}

.amComment-thread-row .amComment-itemlist-avatar-wrap {
    margin-right:0;
}

.amComment-itemlist-col {
    position:relative;
}

.amComment-itemlist-head {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--am-space-2,8px);
    width:100%;
    box-sizing:border-box;
    margin-bottom:var(--am-space-1,4px);
    position:relative;
    z-index:1;
    isolation:isolate;
}

.amComment-itemlist-head__start {
    flex:1 1 auto;
    min-width:0;
}

.amComment-itemlist-head__start .amComment-reaction-bar {
    margin-bottom:var(--am-space-1,4px);
}

.amComment-itemlist-head__start .amComment-itemlist-info {
    display:block;
}

.amComment-itemlist-info {
    display:inline-block;
}

.amComment-at-lower {
    text-transform:lowercase;
}

.amComment-itemlist-blockcfg {
    position:static;
    float:none;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    align-self:flex-start;
    gap:var(--am-space-1,4px);
    flex:0 0 auto;
    margin:0;
    max-width:min(100%,14rem);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

/* Per-comment edit/delete/quote:always visible (skins may float .block_config or other rules). */
.comment_page_section .amComment-comment-block .amComment-itemlist-blockcfg.block_config {
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
}

@media (min-width:480px) {
    .amComment-itemlist-blockcfg {
        max-width:min(100%,18rem);
    }
}

/* amCore M-01:flex thread rows + responsive tweak */
@media (max-width:768px) {
    .amComment-thread-row {
        gap:var(--am-space-1,6px);
    }
}


/* modules/amCore/css/amCore.tokens.css */


/* amCore.tokens.css — canonical --am-* tokens. */
:root {
  /* Brand � light blue */
  --am-primary:         #2D96EB;
  --am-primary-hover:   #1F86DC;
  --am-primary-active:  #1274CC;
  --am-primary-light:   #EBF5FE;
  --am-primary-text:    #FFFFFF;

  /* Surface layers */
  --am-bg-base:         #FFFFFF;
  --am-bg-elevated:     #F5F6F8;
  --am-bg-sunken:       #EAECF0;
  --am-bg-overlay:      rgba(0,0,0,0.04);

  /* Text scale */
  --am-text-primary:    #111118;
  --am-text-secondary:  #5A5A72;
  --am-text-tertiary:   #8585A8;  /* darkened from #9898B2:2.79:1 → 3.46:1 on white (WCAG AA UI component) */
  --am-text-disabled:   #C4C4D6;
  --am-text-inverse:    #FFFFFF;

  /* Borders */
  --am-border-subtle:   rgba(0,0,0,0.06);
  --am-border-default:  rgba(0,0,0,0.12);
  --am-border-strong:   rgba(0,0,0,0.22);
  --am-border-focus:    var(--am-primary);

  /* Container / Breakpoint Tokens (canonical widths for max-width containers) */
  --am-container-sm: 640px;
  --am-container-md: 768px;
  --am-container-lg: 1024px;
  --am-container-xl: 1280px;
  --am-container-2xl:1536px;

  /* Semantic colors */
  --am-success:         #12A060;
  --am-success-bg:      #EDFAF4;
  --am-warning:         #D97706;
  --am-warning-bg:      #FFF8EC;
  --am-danger:          #DC2626;
  --am-danger-bg:       #FEF2F2;
  --am-info:            #2563EB;
  --am-info-bg:         #EFF6FF;

  /* Chart series colors (for advanced content analytics — multi-metric line/bar charts,distinct + accessible) */
  --am-chart-series-1:#2D96EB; /* primary blue */
  --am-chart-series-2:#10B981; /* emerald */
  --am-chart-series-3:#F59E0B; /* amber */
  --am-chart-series-4:#EF4444; /* red */
  --am-chart-series-5:#8B5CF6; /* violet */
  --am-chart-series-6:#EC4899; /* pink */
  --am-chart-series-7:#14B8A6; /* teal */
  --am-chart-series-8:#F97316; /* orange */

  /* Badge / status colors (earned,in-progress,locked,award states) */
  --am-badge-earned:    #10B981;
  --am-badge-progress:  #F59E0B;
  --am-badge-locked:    #94A3B8;
  --am-badge-award:     #8B5CF6;
  --am-badge-bg:        #F1F5F9;
  --am-badge-text:      #0F172A;

  /* Spacing � 4px base unit */
  --am-space-1: 4px;
  --am-space-2: 8px;
  --am-space-3: 12px;
  --am-space-4: 16px;
  --am-space-5: 20px;
  --am-space-6: 24px;
  --am-space-8: 32px;
  --am-space-10:40px;
  --am-space-12:48px;
  --am-space-16:64px;

  /* Border radius */
  --am-radius-sm:  6px;
  --am-radius-md:  10px;
  --am-radius-lg:  16px;
  --am-radius-xl:  24px;
  --am-radius-full:9999px;

  /* Shadows */
  --am-shadow-xs:0 1px 2px rgba(0,0,0,0.05);
  --am-shadow-sm:0 1px 3px rgba(0,0,0,0.08),0 1px 2px rgba(0,0,0,0.04);
  --am-shadow-md:0 4px 6px -1px rgba(0,0,0,0.08),0 2px 4px -1px rgba(0,0,0,0.04);
  --am-shadow-lg:0 10px 15px -3px rgba(0,0,0,0.08),0 4px 6px -2px rgba(0,0,0,0.04);

  /* Typography */
  --am-font-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --am-font-mono:'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;
  --am-font-xs:  11px;
  --am-font-sm:  13px;
  --am-font-base:15px;
  --am-font-lg:  17px;
  --am-font-xl:  20px;
  --am-font-2xl: 24px;
  --am-font-3xl: 30px;

  /* Fluid typography — clamp(min,preferred,max) for responsive scaling without media queries */
  --am-font-xs-fluid:  clamp(0.6875rem,1vw + 5px,0.6875rem);  /* 11px fixed — no fluid scaling needed */
  --am-font-sm-fluid:  clamp(0.75rem,1.2vw + 6px,0.8125rem);  /* 12–13px */
  --am-font-base-fluid:clamp(0.8125rem,1.5vw + 8px,0.9375rem); /* 13–15px */
  --am-font-lg-fluid:  clamp(0.9375rem,2vw + 9px,1.0625rem);   /* 15–17px */
  --am-font-xl-fluid:  clamp(1.0625rem,2.5vw + 10px,1.25rem);  /* 17–20px */
  --am-font-2xl-fluid: clamp(1.25rem,3vw + 12px,1.5rem);       /* 20–24px */
  --am-font-3xl-fluid: clamp(1.5rem,4vw + 14px,1.875rem);      /* 24–30px */

  /* Typography — rem scale (accessible; respects browser base font size) */
  --am-font-xs-rem:  0.6875rem;  /* 11px at 16px base */
  --am-font-sm-rem:  0.8125rem;  /* 13px at 16px base */
  --am-font-base-rem:0.9375rem;  /* 15px at 16px base */
  --am-font-lg-rem:  1.0625rem;  /* 17px at 16px base */
  --am-font-xl-rem:  1.25rem;    /* 20px at 16px base */
  --am-font-2xl-rem: 1.5rem;     /* 24px at 16px base */
  --am-font-3xl-rem: 1.875rem;   /* 30px at 16px base */

  /* Accessible link color — contrast ratio 5.6:1 on --am-bg-base (#FFF); passes WCAG AA text */
  --am-link-color:      #1A5FA8;
  --am-link-color-hover:#154D8A;

  /* Fluid spacing — clamp() for layout gaps that breathe on mobile */
  --am-space-fluid-sm: clamp(12px,2vw + 4px,20px);
  --am-space-fluid-md: clamp(20px,3vw + 8px,32px);
  --am-space-fluid-lg: clamp(32px,5vw + 12px,64px);

  /* Motion — duration tokens (use these in new code; --am-trans-* retained for backward compat) */
  --am-duration-instant: 50ms;
  --am-duration-fast:    120ms;
  --am-duration-base:    200ms;
  --am-duration-slow:    350ms;
  --am-duration-slower:  500ms;

  /* Motion — easing tokens (Material 3 / Apple HIG naming) */
  --am-easing-standard:   cubic-bezier(0.2,0,0,1);
  --am-easing-emphasized: cubic-bezier(0.2,0,0,1.4);
  --am-easing-decelerated:cubic-bezier(0,0,0,1);
  --am-easing-accelerated:cubic-bezier(0.3,0,1,1);
  --am-easing-spring:     cubic-bezier(0.34,1.56,0.64,1);

  /* Transitions — composite shorthand (backward compat; prefer separate tokens above in new code) */
  --am-trans-fast:  var(--am-duration-fast)  var(--am-easing-standard);
  --am-trans-base:  var(--am-duration-base)  var(--am-easing-standard);
  --am-trans-slow:  var(--am-duration-slow)  var(--am-easing-standard);

  /* Z-index scale */
  --am-z-dropdown: 100;
  --am-z-sticky:   200;
  --am-z-overlay:  300;
  --am-z-modal:    400;
  --am-z-toast:    500;

  /* Safe-area insets — notch/island/home-bar on iOS + Android */
  --am-safe-area-top:   env(safe-area-inset-top,0px);
  --am-safe-area-right: env(safe-area-inset-right,0px);
  --am-safe-area-bottom:env(safe-area-inset-bottom,0px);
  --am-safe-area-left:  env(safe-area-inset-left,0px);

  /* Touch targets — WCAG 2.2 SC 2.5.5 minimum interactive element sizes */
  --am-touch-min:44px;   /* minimum for all interactive controls */
  --am-touch-md: 48px;   /* preferred for icon buttons and compact controls */

  /* Icon sizes */
  --am-icon-xs:14px;
  --am-icon-sm:16px;
  --am-icon-md:20px;
  --am-icon-lg:24px;
  --am-icon-xl:32px;

  /* Shell flyout + site-menu alignment (am-only tokens; skins may override --am-shell-* on :root) */
  --am-shell-bg-surface:#ffffff;
  --am-shell-bg-muted:#f8fafc;
  --am-shell-border:#e2e8f0;
  --am-shell-border-strong:#cbd5e1;
  --am-shell-text:#0f172a;
  --am-shell-text-secondary:#334155;
  --am-shell-text-secondary-soft:#475569;
  --am-shell-text-muted:#64748b;
  --am-shell-text-tertiary:#94a3b8;
  --am-shell-shadow-menu:0 4px 20px rgba(15,23,42,0.07);
}

/* === DARK MODE � prefers-color-scheme:dark ================================ */
@media (prefers-color-scheme:dark) {
  :root {
    /* Surface layers */
    --am-bg-base:         #0f172a;
    --am-bg-elevated:     #1e293b;
    --am-bg-sunken:       #0d1526;
    --am-bg-overlay:      rgba(255,255,255,0.04);

    /* Text scale */
    --am-text-primary:    #f1f5f9;
    --am-text-secondary:  #94a3b8;
    --am-text-tertiary:   #64748b;
    --am-text-disabled:   #475569;

    /* Borders */
    --am-border-subtle:   rgba(255,255,255,0.06);
    --am-border-default:  rgba(255,255,255,0.12);
    --am-border-strong:   rgba(255,255,255,0.22);

    /* Shell */
    --am-shell-bg-surface:#1e293b;
    --am-shell-bg-muted:  #0f172a;
    --am-shell-border:    #334155;
    --am-shell-text:      #f1f5f9;

    /* Semantic background adjustments */
    --am-success-bg:      #052e16;
    --am-warning-bg:      #1c0a00;
    --am-danger-bg:       #450a0a;
    --am-info-bg:         #0c1a3a;

    /* Chart series (darker for dark mode contrast) */
    --am-chart-series-1:#60A5FA;
    --am-chart-series-2:#34D399;
    --am-chart-series-3:#FBBF24;
    --am-chart-series-4:#F87171;
    --am-chart-series-5:#A78BFA;
    --am-chart-series-6:#F472B6;

    /* Badge / status (dark) */
    --am-badge-earned:    #34D399;
    --am-badge-progress:  #FBBF24;
    --am-badge-locked:    #64748B;
    --am-badge-award:     #A78BFA;
    --am-badge-bg:        #1E293B;
    --am-badge-text:      #F1F5F9;
  }
}

/* === HIGH-CONTRAST MODE — prefers-contrast:more ========================== */
/* Overrides color tokens to ensure WCAG 2.2 AA compliance for users who     */
/* need additional contrast (screen readers,low-vision,high-contrast OS).  */
/* Text pairs:≥4.5:1 normal text,≥3:1 large text / UI components.          */
@media (prefers-contrast:more) {
  :root {
    /* Primary button:darken from #3B9EF0 (2.85:1) to #0F5BB5 (5.3:1 on white) */
    --am-primary:         #0F5BB5;
    --am-primary-hover:   #0A4A96;
    --am-primary-active:  #083D80;
    --am-primary-light:   #D6E8FB;

    /* Accessible link — ensure 7:1 in high-contrast mode */
    --am-link-color:      #0D4A8F;
    --am-link-color-hover:#092F5C;

    /* Text — increase contrast from muted colors */
    --am-text-secondary:  #3A3A55;   /* was #5A5A72 (5.8:1) → bump for forced-colors compat */
    --am-text-tertiary:   #5A5A72;   /* was #9898B2 (2.9:1) → now matches old secondary */
    --am-text-disabled:   #767690;   /* was #C4C4D6 (falls below 3:1) */

    /* Borders — make visible under forced-colors */
    --am-border-subtle:   rgba(0,0,0,0.20);
    --am-border-default:  rgba(0,0,0,0.35);
    --am-border-strong:   rgba(0,0,0,0.55);

    /* Semantic — ensure semantic colors have sufficient contrast */
    --am-success:         #0A6B40;   /* was #12A060 (4.5:1 minimum) → 5.2:1 */
    --am-warning:         #9A5100;   /* was #D97706 (2.2:1 on white) → 5.7:1 */
    --am-danger:          #B91C1C;   /* was #DC2626 (4.5:1) → 5.1:1 */
    --am-info:            #1D4ED8;   /* was #2563EB (4.5:1) → 4.8:1 */

    /* Chart series (high contrast,distinct) */
    --am-chart-series-1:#0F5BB5;
    --am-chart-series-2:#0A6B40;
    --am-chart-series-3:#9A5100;
    --am-chart-series-4:#B91C1C;
    --am-chart-series-5:#5B21B6;
    --am-chart-series-6:#9D174D;

    /* Badge / status (high contrast) */
    --am-badge-earned:    #0A6B40;
    --am-badge-progress:  #9A5100;
    --am-badge-locked:    #374151;
    --am-badge-award:     #5B21B6;
    --am-badge-bg:        #F3F4F6;
    --am-badge-text:      #111827;
  }
}

/* === FORCED COLORS (Windows High Contrast) ================================ */
@media (forced-colors:active) {
  :root {
    --am-primary:      ButtonText;
    --am-primary-text: ButtonFace;
    --am-text-primary: CanvasText;
    --am-bg-base:      Canvas;
    --am-border-default:ButtonBorder;
    --am-link-color:   LinkText;
  }
}

/* === EXPLICIT THEME OVERRIDE:[data-theme="light"] ========================= */
/* Allows JavaScript to force light mode regardless of OS preference.         */
[data-theme="light"] {
  --am-bg-base:         #FFFFFF;
  --am-bg-elevated:     #F5F6F8;
  --am-bg-sunken:       #EAECF0;
  --am-bg-overlay:      rgba(0,0,0,0.04);
  --am-text-primary:    #111118;
  --am-text-secondary:  #5A5A72;
  --am-text-tertiary:   #8585A8;  /* darkened from #9898B2:2.79:1 → 3.46:1 on white (WCAG AA UI component) */
  --am-text-disabled:   #C4C4D6;
  --am-text-inverse:    #FFFFFF;
  --am-border-subtle:   rgba(0,0,0,0.06);
  --am-border-default:  rgba(0,0,0,0.12);
  --am-border-strong:   rgba(0,0,0,0.22);
  --am-shell-bg-surface:#ffffff;
  --am-shell-bg-muted:  #f8fafc;
  --am-shell-border:    #e2e8f0;
  --am-shell-text:      #0f172a;
  --am-shell-text-secondary:#334155;
  --am-success-bg:      #EDFAF4;
  --am-warning-bg:      #FFF8EC;
  --am-danger-bg:       #FEF2F2;
  --am-info-bg:         #EFF6FF;
}

/* === EXPLICIT THEME OVERRIDE:[data-theme="dark"] ========================== */
/* Allows JavaScript to force dark mode regardless of OS preference.          */
[data-theme="dark"] {
  --am-bg-base:         #0f172a;
  --am-bg-elevated:     #1e293b;
  --am-bg-sunken:       #0d1526;
  --am-bg-overlay:      rgba(255,255,255,0.04);
  --am-text-primary:    #f1f5f9;
  --am-text-secondary:  #94a3b8;
  --am-text-tertiary:   #64748b;
  --am-text-disabled:   #475569;
  --am-text-inverse:    #111118;
  --am-border-subtle:   rgba(255,255,255,0.06);
  --am-border-default:  rgba(255,255,255,0.12);
  --am-border-strong:   rgba(255,255,255,0.22);
  --am-shell-bg-surface:#1e293b;
  --am-shell-bg-muted:  #0f172a;
  --am-shell-border:    #334155;
  --am-shell-text:      #f1f5f9;
  --am-shell-text-secondary:#94a3b8;
  --am-success-bg:      #052e16;
  --am-warning-bg:      #1c0a00;
  --am-danger-bg:       #450a0a;
  --am-info-bg:         #0c1a3a;
}


/* modules/amCore/css/amCore.layout.css */


/* amCore.layout.css — structure grids & error shells. Depends on amCore.tokens.css (--am-*). */

/* === MODULE SHELL ========================================================== */
.am-module {
  max-width:1280px;
  margin:0 auto;
  padding:var(--am-space-6);
  font-family:var(--am-font-sans);
  color:var(--am-text-primary);
}

/* === PAGE HEADER =========================================================== */
.am-page-header {
  margin-bottom:var(--am-space-8);
}
.am-page-header__inner {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--am-space-4);
  flex-wrap:wrap;
}
.am-page-header__title {
  font-size:var(--am-font-2xl);
  font-weight:700;
  color:var(--am-text-primary);
  letter-spacing:-0.02em;
  margin:0;
  line-height:1.2;
}
.am-page-header__subtitle {
  color:var(--am-text-secondary);
  margin:var(--am-space-1) 0 0;
  font-size:var(--am-font-base);
}
.am-page-header__actions {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  flex-shrink:0;
}

/* === BREADCRUMB ============================================================ */
.am-breadcrumb {
  margin-top:var(--am-space-3);
}
.am-breadcrumb__list {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  list-style:none;
  margin:0;
  padding:0;
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
}
.am-breadcrumb__list li:not(:last-child)::after {
  content:'/';
  margin-left:var(--am-space-2);
  opacity:0.5;
}
.am-breadcrumb__list a {
  color:var(--am-text-secondary);
  text-decoration:none;
}
.am-breadcrumb__list a:hover { color:var(--am-primary); }

/* === CARD GRID ============================================================= */
.am-grid {
  display:grid;
  gap:var(--am-space-6);
  grid-template-columns:repeat(var(--am-grid-cols,3),1fr);
}
.am-grid--1 { --am-grid-cols:1; }
.am-grid--2 { --am-grid-cols:2; }
.am-grid--3 { --am-grid-cols:3; }
.am-grid--4 { --am-grid-cols:4; }
.am-grid--auto { grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); }

/* Grid responsive breakpoints extracted to amCore.responsive.css (mobile-first). */

/* Card */
.am-card {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  overflow:hidden;
  box-shadow:var(--am-shadow-sm);
  display:flex;
  flex-direction:column;
  transition:box-shadow var(--am-trans-base),transform var(--am-trans-base);
}
.am-card:hover { box-shadow:var(--am-shadow-md); transform:translateY(-2px); }
.am-card:focus-within { outline:2px solid var(--am-border-focus); outline-offset:2px; }

.am-card__media {
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:var(--am-bg-sunken);
}
.am-card__img {
  width:100%; height:100%;
  object-fit:cover;
  transition:transform var(--am-trans-slow);
}
.am-card:hover .am-card__img { transform:scale(1.04); }

.am-card__overlay {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--am-space-2);
  opacity:0;
  transition:opacity var(--am-trans-base);
}
.am-card:hover .am-card__overlay,
.am-card:focus-within .am-card__overlay { opacity:1; }

.am-card__badge {
  position:absolute;
  top:var(--am-space-2);
  right:var(--am-space-2);
}

.am-card__body {
  padding:var(--am-space-5);
  flex:1;
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
}
.am-card__title {
  font-size:var(--am-font-lg);
  font-weight:600;
  margin:0;
  line-height:1.4;
}
.am-card__title-link { color:var(--am-text-primary); text-decoration:none; }
.am-card__title-link:hover { color:var(--am-primary); }
.am-card__description {
  color:var(--am-text-secondary);
  font-size:var(--am-font-sm);
  margin:0;
  line-height:1.6;
}
.am-card__meta {
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  flex-wrap:wrap;
  margin-top:auto;
}
.am-card__footer {
  padding:var(--am-space-3) var(--am-space-5);
  border-top:1px solid var(--am-border-subtle);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-3);
}
.am-card__actions { display:flex; align-items:center; gap:var(--am-space-1); }

/* Module card variant */
.am-module-card {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-5);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
  transition:box-shadow var(--am-trans-base),border-color var(--am-trans-fast);
}
.am-module-card:hover { box-shadow:var(--am-shadow-md); border-color:var(--am-primary); }
.am-module-card__icon {
  width:40px; height:40px;
  border-radius:var(--am-radius-md);
  background:var(--am-primary-light);
  color:var(--am-primary);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.am-module-card__icon img,
.am-module-card__icon svg { width:22px; height:22px; }

/* === DETAIL LAYOUT ========================================================= */
.am-detail__layout {
  display:grid;
  grid-template-columns:1fr 340px;
  gap:var(--am-space-10);
  align-items:start;
}
/* Detail layout responsive extracted to amCore.responsive.css. */

.am-detail__hero { margin-bottom:var(--am-space-8); }
.am-detail__hero-media {
  border-radius:var(--am-radius-lg);
  overflow:hidden;
  margin-bottom:var(--am-space-6);
}
.am-detail__hero-img { width:100%; max-height:400px; object-fit:cover; display:block; }
.am-detail__title {
  font-size:var(--am-font-3xl);
  font-weight:700;
  margin:0 0 var(--am-space-3);
  letter-spacing:-0.02em;
}
.am-detail__meta-row {
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  flex-wrap:wrap;
  margin-bottom:var(--am-space-5);
}
.am-detail__actions {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  flex-wrap:wrap;
}
.am-detail__section { margin-bottom:var(--am-space-8); }
.am-section-title {
  font-size:var(--am-font-xl);
  font-weight:600;
  margin:0 0 var(--am-space-4);
  padding-bottom:var(--am-space-3);
  border-bottom:1px solid var(--am-border-subtle);
}

/* Rich content */
.am-rich-content { line-height:1.7; color:var(--am-text-primary); }
.am-rich-content h2 { font-size:var(--am-font-xl); font-weight:600; margin:var(--am-space-6) 0 var(--am-space-3); }
.am-rich-content h3 { font-size:var(--am-font-lg); font-weight:600; margin:var(--am-space-5) 0 var(--am-space-2); }
.am-rich-content p  { margin:0 0 var(--am-space-4); }
.am-rich-content pre { background:var(--am-bg-sunken); border-radius:var(--am-radius-md); padding:var(--am-space-4); overflow-x:auto; font-family:var(--am-font-mono); font-size:var(--am-font-sm); }
.am-rich-content code { font-family:var(--am-font-mono); font-size:0.9em; background:var(--am-bg-sunken); padding:1px 5px; border-radius:var(--am-radius-sm); }
.am-rich-content pre code { background:none; padding:0; }

/* === SIDEBAR CARDS ========================================================= */
.am-sidebar-card {
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-5);
  margin-bottom:var(--am-space-4);
}
.am-sidebar-card__title {
  font-size:var(--am-font-xs);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.06em;
  color:var(--am-text-tertiary);
  margin:0 0 var(--am-space-4);
}

/* Definition list */
.am-definition-list { display:grid; grid-template-columns:auto 1fr; gap:var(--am-space-2) var(--am-space-4); }
.am-definition-list dt { font-size:var(--am-font-sm); color:var(--am-text-secondary); font-weight:500; }
.am-definition-list dd { font-size:var(--am-font-sm); color:var(--am-text-primary); margin:0; }

/* Stat grid */
.am-stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--am-space-4); text-align:center; }
.am-stat__value { display:block; font-size:var(--am-font-2xl); font-weight:700; color:var(--am-text-primary); }
.am-stat__label { font-size:var(--am-font-xs); color:var(--am-text-tertiary); text-transform:uppercase; letter-spacing:0.04em; }

/* === FORM PAGE ============================================================= */
.am-form-page__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-4);
  margin-bottom:var(--am-space-8);
  padding-bottom:var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
}
.am-form-nav {
  display:flex;
  gap:var(--am-space-1);
  margin-bottom:var(--am-space-8);
  border-bottom:1px solid var(--am-border-subtle);
  overflow-x:auto;
}
.am-form-nav__link {
  padding:var(--am-space-2) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--am-trans-fast),border-color var(--am-trans-fast);
}
.am-form-nav__link:hover { color:var(--am-text-primary); }
.am-form-nav__link.is-active { color:var(--am-primary); border-bottom-color:var(--am-primary); }

.am-form-section {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-6);
  margin-bottom:var(--am-space-6);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-5);
}
.am-form-section--admin { border-color:var(--am-danger-bg); background:var(--am-danger-bg); }
.am-form-section__title {
  display:flex;
  align-items:center;
  gap:var(--am-space-3);
  font-size:var(--am-font-lg);
  font-weight:600;
  color:var(--am-text-primary);
  margin:0 0 var(--am-space-2);
}
.am-form-section__number {
  width:28px; height:28px;
  border-radius:50%;
  background:var(--am-primary-light);
  color:var(--am-primary);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:var(--am-font-sm);
  font-weight:700;
  flex-shrink:0;
}

.am-form-footer {
  position:sticky;
  bottom:0;
  background:var(--am-bg-base);
  border-top:1px solid var(--am-border-subtle);
  padding:var(--am-space-4) var(--am-space-6);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-3);
  z-index:var(--am-z-sticky);
  margin:0 calc(-1 * var(--am-space-6)) calc(-1 * var(--am-space-6));
}
.am-form-footer__right { display:flex; gap:var(--am-space-2); }

/* === LIST VIEW (alternate to grid) ======================================== */
.am-list-view .am-card {
  flex-direction:row;
  align-items:stretch;
}
.am-list-view .am-card__media {
  width:120px;
  aspect-ratio:unset;
  flex-shrink:0;
}
.am-list-view .am-card__body { padding:var(--am-space-4); }
/* List-view card responsive extracted to amCore.responsive.css. */

/* === SEPARATOR ============================================================= */
.am-separator {
  border:none;
  border-top:1px solid var(--am-border-subtle);
  margin:var(--am-space-4) 0;
}
/* === FATAL / DB / NOTICE ERROR PAGES (fatal_error,db_error,error_notice) === */
/* Inline SVG uses viewBox 0 0 512 512 with no width/height attributes; without
   rules here it can grow to fill the entire viewport in some browsers. */
body.am-core-fatal-page {
  box-sizing:border-box;
}

.am-core-fatal-wrap {
  max-width:36rem;
  margin-left:auto;
  margin-right:auto;
  padding:var(--am-space-8,2rem) var(--am-space-4,1rem);
  text-align:center;
}

.am-core-fatal-svg {
  width:10rem;
  height:auto;
  max-width:min(12rem,50vw);
  max-height:min(12rem,40vh);
  aspect-ratio:1 / 1;
  display:block;
  margin-left:auto;
  margin-right:auto;
  flex-shrink:0;
}

.am-core-fatal-wrap svg:not(.am-core-fatal-svg) {
  max-width:min(8rem,45vw);
  max-height:min(8rem,35vh);
}

/* Error page log excerpts (Activity Log + data/logs/error_log tail) */
.am-core-log-excerpts {
  margin-top:var(--am-space-5,1.25rem);
  text-align:left;
}

.am-core-log-excerpts__title {
  font-size:1rem;
  margin:0 0 0.35rem;
}

.am-core-log-excerpts__hint {
  font-size:0.8125rem;
  color:var(--am-color-muted,#64748b);
  margin:0 0 0.75rem;
}

.am-core-log-inline-err {
  font-size:0.875rem;
  color:var(--am-color-danger,#b91c1c);
  margin:0.5rem 0;
}

.am-core-log-row__meta {
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem;
  align-items:baseline;
  margin-bottom:0.25rem;
}

.am-core-log-pri {
  font-size:0.75rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-color-muted,#64748b);
}

.am-core-log-time {
  font-size:0.75rem;
  color:var(--am-color-muted,#64748b);
}

.am-core-log-msg {
  margin:0 0 0.75rem;
  padding:0.5rem 0.65rem;
  font-size:0.8125rem;
  white-space:pre-wrap;
  word-break:break-word;
  background:rgba(15,23,42,0.06);
  border-radius:var(--am-radius-sm,6px);
  border:1px solid rgba(15,23,42,0.08);
}

.am-core-log-pre {
  margin:0;
  max-height:280px;
  overflow:auto;
  padding:0.65rem 0.75rem;
  font-size:0.75rem;
  line-height:1.45;
  white-space:pre-wrap;
  word-break:break-word;
  background:#0f172a;
  color:#e2e8f0;
  border-radius:var(--am-radius-sm,6px);
}

.am-core-log-pre--acp {
  max-height:70vh;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}


/* modules/amCore/css/amCore.components.css */


/* amCore.components.css — UI components after layout. Depends on amCore.tokens.css */

/* === BUTTONS =============================================================== */
.am-btn {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-2);
  padding:var(--am-space-2) var(--am-space-4);
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  font-weight:500;
  cursor:pointer;
  border:1px solid transparent;
  text-decoration:none;
  line-height:1;
  height:36px;
  white-space:nowrap;
  transition:all var(--am-trans-fast);
  font-family:var(--am-font-sans);
  box-sizing:border-box;
}
.am-btn:focus-visible {
  outline:2px solid var(--am-border-focus);
  outline-offset:2px;
}
.am-btn:disabled,.am-btn[aria-disabled="true"] {
  opacity:0.5;
  cursor:not-allowed;
  pointer-events:none;
}

.am-btn--primary {
  background:var(--am-primary);
  color:var(--am-primary-text);
  border-color:var(--am-primary);
}
.am-btn--primary:hover { background:var(--am-primary-hover); border-color:var(--am-primary-hover); }
.am-btn--primary:active { background:var(--am-primary-active); }

.am-btn--secondary {
  background:var(--am-bg-elevated);
  color:var(--am-text-primary);
  border-color:var(--am-border-default);
}
.am-btn--secondary:hover { background:var(--am-bg-sunken); }

.am-btn--ghost {
  background:transparent;
  color:var(--am-text-secondary);
  border-color:transparent;
}
.am-btn--ghost:hover {
  background:var(--am-bg-overlay);
  color:var(--am-text-primary);
}

.am-btn--outline {
  background:transparent;
  color:var(--am-primary);
  border-color:var(--am-primary);
}
.am-btn--outline:hover { background:var(--am-primary-light); }

.am-btn--danger {
  background:var(--am-danger);
  color:#fff;
  border-color:var(--am-danger);
}
.am-btn--danger:hover { background:#C41E1E; }

.am-btn--danger-ghost {
  background:transparent;
  color:var(--am-danger);
  border-color:transparent;
}
.am-btn--danger-ghost:hover { background:var(--am-danger-bg); }

.am-btn--success {
  background:var(--am-success);
  color:#fff;
  border-color:var(--am-success);
}

/* Sizes */
.am-btn--sm  { height:28px; padding:var(--am-space-1) var(--am-space-3); font-size:var(--am-font-xs); position:relative; }
.am-btn--lg  { height:44px; padding:var(--am-space-3) var(--am-space-6); font-size:var(--am-font-base); }
.am-btn--xl  { height:52px; padding:var(--am-space-4) var(--am-space-8); font-size:var(--am-font-lg); }
.am-btn--icon     { width:36px; padding:0; justify-content:center; position:relative; }
.am-btn--icon.am-btn--sm { width:28px; }
.am-btn--icon.am-btn--lg { width:44px; }

/* Touch-target extension for visually small buttons (WCAG 2.2 SC 2.5.5 / APCA).
   Transparent ::after pseudo-element expands the hit area to 44px on touch devices
   without changing visual layout — the button stays visually compact. */
.am-btn--sm::after,
.am-btn--icon::after {
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  min-width:var(--am-touch-min);
  min-height:var(--am-touch-min);
  pointer-events:none; /* allow parent to receive clicks normally */
}
@media (pointer:fine) {
  /* Desktop/mouse users:remove the extended hit area (precise pointer,no need) */
  .am-btn--sm::after,
  .am-btn--icon::after { display:none; }
}

/* Inline SVG/PNG in buttons:avoid fluid layout stretching icons to the full button width */
.am-btn > img {
  flex-shrink:0;
  object-fit:contain;
  max-width:2rem;
  max-height:2rem;
}

/* === ICONS ================================================================= */
.am-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.am-icon svg { display:block; }
img.am-icon {
  display:inline-block;
  object-fit:contain;
  vertical-align:middle;
}
.am-icon--xs  { width:var(--am-icon-xs);  height:var(--am-icon-xs); }
.am-icon--sm  { width:var(--am-icon-sm);  height:var(--am-icon-sm); }
.am-icon--md  { width:var(--am-icon-md);  height:var(--am-icon-md); }
.am-icon--lg  { width:var(--am-icon-lg);  height:var(--am-icon-lg); }
.am-icon--xl  { width:var(--am-icon-xl);  height:var(--am-icon-xl); }

/* Icon color helpers */
.am-icon--primary   { color:var(--am-primary); }
.am-icon--success   { color:var(--am-success); }
.am-icon--warning   { color:var(--am-warning); }
.am-icon--danger    { color:var(--am-danger); }
.am-icon--info      { color:var(--am-info); }
.am-icon--muted     { color:var(--am-text-tertiary); }

/* === FORM ELEMENTS ========================================================= */
.am-field {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
}

.am-label {
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-primary);
}
.am-label--inline { display:inline; }
.am-label__required { color:var(--am-danger); margin-left:2px; }

.am-input,
.am-select,
.am-textarea {
  width:100%;
  background:var(--am-bg-base);
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-md);
  padding:var(--am-space-2) var(--am-space-3);
  font-size:var(--am-font-base);
  color:var(--am-text-primary);
  transition:border-color var(--am-trans-fast),box-shadow var(--am-trans-fast);
  font-family:var(--am-font-sans);
  box-sizing:border-box;
}
.am-input:focus,
.am-select:focus,
.am-textarea:focus {
  outline:none;
  border-color:var(--am-primary);
  box-shadow:0 0 0 3px var(--am-primary-light);
}
.am-input::placeholder,
.am-textarea::placeholder { color:var(--am-text-disabled); }
.am-input.is-invalid,
.am-select.is-invalid,
.am-textarea.is-invalid { border-color:var(--am-danger); }
.am-textarea { min-height:100px; resize:vertical; }
.am-select { appearance:none; cursor:pointer; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A5A72' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 10px center; background-size:16px; padding-right:36px; }

.am-field__hint  { font-size:var(--am-font-sm); color:var(--am-text-secondary); margin:0; }
.am-field__error { font-size:var(--am-font-sm); color:var(--am-danger); margin:0; }

/* Input group (prefix/suffix) */
.am-input-group {
  display:flex;
  align-items:stretch;
}
.am-input-group .am-input {
  border-radius:0 var(--am-radius-md) var(--am-radius-md) 0;
  flex:1;
}
.am-input-group__prefix,
.am-input-group__suffix {
  display:flex;
  align-items:center;
  padding:0 var(--am-space-3);
  background:var(--am-bg-sunken);
  border:1px solid var(--am-border-default);
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
  white-space:nowrap;
}
.am-input-group__prefix { border-right:0; border-radius:var(--am-radius-md) 0 0 var(--am-radius-md); }
.am-input-group__suffix { border-left:0; border-radius:0 var(--am-radius-md) var(--am-radius-md) 0; }

/* === TOGGLE SWITCH ========================================================= */
.am-toggle {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-2);
  cursor:pointer;
}
.am-toggle input[type="checkbox"] { position:absolute; opacity:0; width:0; height:0; }
.am-toggle__track {
  width:40px;
  height:22px;
  border-radius:var(--am-radius-full);
  background:var(--am-border-default);
  position:relative;
  transition:background var(--am-trans-base);
  flex-shrink:0;
}
.am-toggle input:checked + .am-toggle__track { background:var(--am-primary); }
.am-toggle__thumb {
  position:absolute;
  top:3px;
  left:3px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:white;
  box-shadow:var(--am-shadow-sm);
  transition:transform var(--am-trans-base);
}
.am-toggle input:checked + .am-toggle__track .am-toggle__thumb { transform:translateX(18px); }
.am-toggle:focus-within .am-toggle__track { box-shadow:0 0 0 3px var(--am-primary-light); }

/* Toggle field row */
.am-toggle-field {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--am-space-6);
  padding:var(--am-space-4);
  border-radius:var(--am-radius-md);
  background:var(--am-bg-elevated);
}
.am-toggle-field__info { flex:1; }

/* === RADIO GROUP =========================================================== */
.am-radio-group { display:flex; flex-direction:column; gap:var(--am-space-2); }
.am-radio {
  display:flex;
  align-items:flex-start;
  gap:var(--am-space-3);
  padding:var(--am-space-3) var(--am-space-4);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-md);
  cursor:pointer;
  transition:border-color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-radio:hover { border-color:var(--am-border-strong); background:var(--am-bg-elevated); }
.am-radio:has(input:checked) { border-color:var(--am-primary); background:var(--am-primary-light); }
.am-radio input { position:absolute; opacity:0; }
.am-radio__indicator {
  width:18px; height:18px;
  border-radius:50%;
  border:2px solid var(--am-border-default);
  flex-shrink:0;
  margin-top:2px;
  transition:border-color var(--am-trans-fast);
}
.am-radio:has(input:checked) .am-radio__indicator {
  border-color:var(--am-primary);
  background:radial-gradient(circle at center,var(--am-primary) 40%,transparent 40%);
}
.am-radio__label { display:flex; flex-direction:column; gap:2px; }
.am-radio__label strong { font-size:var(--am-font-base); color:var(--am-text-primary); }
.am-radio__hint { font-size:var(--am-font-sm); color:var(--am-text-secondary); }

/* === FILTER BAR ============================================================ */
.am-filter-bar {
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-4) var(--am-space-5);
  margin-bottom:var(--am-space-6);
}
.am-filter-bar__inner {
  display:flex;
  align-items:center;
  gap:var(--am-space-3);
  flex-wrap:wrap;
}
.am-filter-bar__summary {
  margin-top:var(--am-space-3);
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
}

/* Search field */
.am-search-field {
  position:relative;
  display:flex;
  align-items:center;
  flex:1;
  min-width:200px;
}
.am-search-field__icon {
  position:absolute;
  left:10px;
  width:16px;
  height:16px;
  color:var(--am-text-tertiary);
  pointer-events:none;
}
.am-search-field .am-input {
  padding-left:34px;
  padding-right:32px;
}
.am-search-field__clear {
  position:absolute;
  right:8px;
  background:none;
  border:none;
  cursor:pointer;
  color:var(--am-text-tertiary);
  font-size:16px;
  line-height:1;
  padding:2px;
  border-radius:var(--am-radius-sm);
}
.am-search-field__clear:hover { color:var(--am-text-primary); }

/* === CHIPS & BADGES ======================================================== */
.am-chip {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-1);
  padding:2px var(--am-space-2);
  border-radius:var(--am-radius-full);
  font-size:var(--am-font-xs);
  font-weight:500;
  line-height:1.6;
}
.am-chip--primary  { background:var(--am-primary-light);  color:var(--am-primary); }
.am-chip--category { background:var(--am-primary-light);  color:var(--am-primary); }
.am-chip--tag      { background:var(--am-bg-sunken);       color:var(--am-text-secondary); }
.am-chip--filter   { background:var(--am-info-bg);         color:var(--am-info); }
.am-chip--success  { background:var(--am-success-bg);      color:var(--am-success); }
.am-chip--warning  { background:var(--am-warning-bg);      color:var(--am-warning); }
.am-chip--danger   { background:var(--am-danger-bg);       color:var(--am-danger); }
.am-chip__remove {
  background:none;
  border:none;
  cursor:pointer;
  padding:0;
  color:inherit;
  opacity:0.7;
  line-height:1;
}
.am-chip__remove:hover { opacity:1; }

.am-badge {
  display:inline-flex;
  align-items:center;
  padding:2px 6px;
  border-radius:var(--am-radius-sm);
  font-size:var(--am-font-xs);
  font-weight:600;
  line-height:1.6;
}
.am-badge--active   { background:var(--am-success-bg);  color:var(--am-success); }
.am-badge--inactive { background:var(--am-bg-sunken);    color:var(--am-text-tertiary); }
.am-badge--pending  { background:var(--am-warning-bg);  color:var(--am-warning); }
.am-badge--danger   { background:var(--am-danger-bg);   color:var(--am-danger); }
.am-badge--info     { background:var(--am-info-bg);     color:var(--am-info); }
.am-badge--admin    { background:var(--am-danger-bg);   color:var(--am-danger); }
.am-badge--count    { background:var(--am-bg-sunken);   color:var(--am-text-secondary); min-width:22px; text-align:center; }

/* === UPLOAD ZONE =========================================================== */
.am-upload-zone {
  border:2px dashed var(--am-border-default);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-8);
  text-align:center;
  cursor:pointer;
  transition:border-color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-upload-zone:hover,
.am-upload-zone.is-dragover { border-color:var(--am-primary); background:var(--am-primary-light); }
.am-upload-zone:focus-visible { outline:2px solid var(--am-primary); outline-offset:2px; }
.am-upload-zone__icon { width:40px; height:40px; color:var(--am-text-tertiary); margin:0 auto var(--am-space-3); }
.am-upload-zone__text { font-size:var(--am-font-base); color:var(--am-text-secondary); }
.am-upload-zone__browse { color:var(--am-primary); cursor:pointer; }
.am-upload-zone__hint { font-size:var(--am-font-sm); color:var(--am-text-tertiary); }

/* === TAG INPUT ============================================================= */
.am-tag-input {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
}
.am-tag-input__chips {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-1);
}

/* === PAGINATION ============================================================ */
.am-pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--am-space-1);
  margin-top:var(--am-space-10);
}
.am-pagination__item {
  min-width:var(--am-touch-min); min-height:var(--am-touch-min);
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  transition:all var(--am-trans-fast);
  border:1px solid transparent;
}
.am-pagination__item:hover { background:var(--am-bg-elevated); color:var(--am-text-primary); }
.am-pagination__item.is-active { background:var(--am-primary); color:white; border-color:var(--am-primary); }
.am-pagination__item:focus-visible { outline:2px solid var(--am-primary); outline-offset:2px; }
.am-pagination__ellipsis { color:var(--am-text-tertiary); padding:0 var(--am-space-1); }

/* === EMPTY STATE =========================================================== */
.am-empty-state {
  text-align:center;
  padding:var(--am-space-16) var(--am-space-8);
  color:var(--am-text-secondary);
}
.am-empty-state__icon { width:64px; height:64px; color:var(--am-text-tertiary); margin:0 auto var(--am-space-6); }
.am-empty-state__title { font-size:var(--am-font-xl); font-weight:600; color:var(--am-text-primary); margin:0 0 var(--am-space-2); }
.am-empty-state__description { font-size:var(--am-font-base); margin:0 0 var(--am-space-6); max-width:400px; margin-left:auto; margin-right:auto; }

/* === NOTICE / ALERT BANNERS ================================================ */
.am-notice {
  display:flex;
  align-items:flex-start;
  gap:var(--am-space-3);
  padding:var(--am-space-4);
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  line-height:1.5;
}
.am-notice__icon { flex-shrink:0; margin-top:1px; width:18px; height:18px; }
.am-notice--success { background:var(--am-success-bg); color:var(--am-success); border:1px solid rgba(18,160,96,0.2); }
.am-notice--warning { background:var(--am-warning-bg); color:var(--am-warning); border:1px solid rgba(217,119,6,0.2); }
.am-notice--danger  { background:var(--am-danger-bg);  color:var(--am-danger);  border:1px solid rgba(220,38,38,0.2); }
.am-notice--info    { background:var(--am-info-bg);    color:var(--am-info);    border:1px solid rgba(37,99,235,0.2); }

/* === META ROW ============================================================== */
.am-meta-item {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-1);
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
}
.am-meta-icon { width:14px; height:14px; flex-shrink:0; }
.am-meta-link { color:var(--am-text-secondary); text-decoration:none; }
.am-meta-link:hover { color:var(--am-primary); }

/* === TABLE ================================================================= */
.am-table-wrapper { overflow-x:auto; }
.am-table {
  width:100%;
  border-collapse:collapse;
  font-size:var(--am-font-sm);
}
.am-table th {
  text-align:left;
  font-weight:600;
  font-size:var(--am-font-xs);
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-text-tertiary);
  padding:var(--am-space-3) var(--am-space-4);
  border-bottom:1px solid var(--am-border-default);
  background:var(--am-bg-elevated);
}
.am-table th:first-child { border-radius:var(--am-radius-md) 0 0 0; }
.am-table th:last-child  { border-radius:0 var(--am-radius-md) 0 0; }
.am-table td {
  padding:var(--am-space-3) var(--am-space-4);
  border-bottom:1px solid var(--am-border-subtle);
  color:var(--am-text-primary);
  vertical-align:middle;
}
.am-table tr:last-child td { border-bottom:none; }
.am-table tr:hover td { background:var(--am-bg-elevated); }
.am-table--compact td,.am-table--compact th { padding:var(--am-space-2) var(--am-space-3); }

/* Table with checkbox col */
.am-table__check-col { width:40px; text-align:center; }
.am-table input[type="checkbox"] { cursor:pointer; width:16px; height:16px; accent-color:var(--am-primary); }

/* === CONTAINER QUERIES — am-card adapts to available width ================
   Cards in narrow sidebars collapse to a compact layout without JS.
   Parent container must have container-type:inline-size.
   ========================================================================== */
.am-card-container { container-type:inline-size; container-name:card; }

@container card (max-width:320px) {
  .am-card { padding:var(--am-space-3); }
  .am-card__header { flex-direction:column; gap:var(--am-space-2); }
  .am-card__actions { width:100%; }
  .am-card__actions .am-btn { width:100%; justify-content:center; }
}

@container card (min-width:640px) {
  .am-card { padding:var(--am-space-8); }
  .am-card--grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--am-space-6); }
}

/* === :HAS() PARENT-STATE PATTERNS =========================================
   Remove JS glue code for common form and table interaction states.
   ========================================================================== */

/* Form field error state — no JS needed to add --error class */
.am-form-field:has(.am-input:invalid) .am-form-field__label {
  color:var(--am-danger);
}
.am-form-field:has(.am-input:invalid) .am-input {
  border-color:var(--am-danger);
  box-shadow:0 0 0 3px rgba(220,38,38,.1);
}

/* Submit disabled while required fields empty */
.am-form:has(.am-input[required]:placeholder-shown) .am-btn--primary {
  opacity:0.5;
  pointer-events:none;
}

/* Table row highlight when checkbox is checked */
.am-table tr:has(input[type="checkbox"]:checked) td {
  background:var(--am-primary-light);
}

/* Tab panel visibility driven by tab active state */
.am-tab-panel { display:none; }
.am-tabs:has([aria-selected="true"][data-panel]) + .am-tab-panels .am-tab-panel { display:none; }

/* Card with an active/selected badge gets a left accent border */
.am-card:has(.am-badge--active) {
  border-left:3px solid var(--am-success);
}
.am-card:has(.am-badge--error) {
  border-left:3px solid var(--am-danger);
}

/* === MODAL DIALOG ========================================================== */
.am-modal {
  position:fixed;
  inset:0;
  z-index:var(--am-z-modal);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:var(--am-space-4);
}
.am-modal[hidden] { display:none; }
.am-modal__backdrop {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  cursor:pointer;
}
.am-modal__panel {
  position:relative;
  background:var(--am-bg-base);
  border-radius:var(--am-radius-lg);
  box-shadow:var(--am-shadow-lg);
  width:100%;
  max-width:520px;
  max-height:90dvh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.am-modal__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--am-space-5) var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
  flex-shrink:0;
}
.am-modal__title { font-size:var(--am-font-lg); font-weight:700; margin:0; }
.am-modal__close {
  background:none;
  border:none;
  cursor:pointer;
  color:var(--am-text-secondary);
  padding:var(--am-space-1);
  border-radius:var(--am-radius-sm);
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  font-size:20px;
  transition:background var(--am-trans-fast);
}
.am-modal__close:hover { background:var(--am-bg-elevated); color:var(--am-text-primary); }
.am-modal__body { padding:var(--am-space-6); overflow-y:auto; flex:1 1 auto; }
.am-modal__footer {
  padding:var(--am-space-4) var(--am-space-6);
  border-top:1px solid var(--am-border-subtle);
  display:flex;
  gap:var(--am-space-3);
  justify-content:flex-end;
  flex-shrink:0;
}

/* === DRAWER PANEL ========================================================== */
.am-drawer {
  position:fixed;
  inset:0;
  z-index:var(--am-z-overlay);
  display:flex;
}
.am-drawer--right { justify-content:flex-end; }
.am-drawer--left  { justify-content:flex-start; }
.am-drawer[hidden] { display:none; }
.am-drawer__backdrop {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  cursor:pointer;
}
.am-drawer__panel {
  position:relative;
  background:var(--am-bg-base);
  box-shadow:var(--am-shadow-lg);
  width:min(420px,100vw);
  max-height:100dvh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.am-drawer__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--am-space-5) var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
  flex-shrink:0;
}
.am-drawer__title { font-size:var(--am-font-lg); font-weight:700; margin:0; }
.am-drawer__close {
  background:none; border:none; cursor:pointer;
  color:var(--am-text-secondary); font-size:20px;
  width:44px; height:44px; border-radius:var(--am-radius-sm);
  display:flex; align-items:center; justify-content:center;
  transition:background var(--am-trans-fast);
  flex-shrink:0;
}
.am-drawer__close:hover { background:var(--am-bg-elevated); }
/* pan-y allows vertical content scrolling inside the drawer without conflicting
   with the browser's pull-to-refresh or native scroll hijacking on iOS. */
.am-drawer__body { padding:var(--am-space-6); overflow-y:auto; flex:1 1 auto; touch-action:pan-y; }

/* === BOTTOM SHEET (mobile action sheet) ==================================== */
/* .am-sheet slides up from the bottom on mobile. On desktop it can render
   as a centered modal or inline panel. Conforms to WCAG 2.2 SC 2.5.5:
   all interactive targets inside the sheet must be ≥ 44px.
   Use:<div class="am-sheet" hidden role="dialog" aria-modal="true">
          <div class="am-sheet__backdrop"></div>
          <div class="am-sheet__panel">
            <div class="am-sheet__handle-bar"></div>
            <div class="am-sheet__header">...</div>
            <div class="am-sheet__body">...</div>
          </div>
        </div>                                                                 */
.am-sheet {
  position:fixed;
  inset:0;
  z-index:var(--am-z-overlay);
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.am-sheet[hidden] { display:none; }
.am-sheet__backdrop {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  cursor:pointer;
}
.am-sheet__panel {
  position:relative;
  background:var(--am-bg-base);
  border-radius:var(--am-radius-xl) var(--am-radius-xl) 0 0;
  box-shadow:var(--am-shadow-lg);
  width:100%;
  max-width:640px;
  max-height:85dvh;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  /* Snap to safe area on notched phones */
  padding-bottom:env(safe-area-inset-bottom,0px);
}
.am-sheet__handle-bar {
  width:36px;
  height:4px;
  border-radius:2px;
  background:var(--am-border-default);
  margin:var(--am-space-3) auto var(--am-space-1);
  flex-shrink:0;
}
.am-sheet__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--am-space-4) var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
  flex-shrink:0;
}
.am-sheet__title { font-size:var(--am-font-lg); font-weight:700; margin:0; }
.am-sheet__close {
  background:none; border:none; cursor:pointer;
  color:var(--am-text-secondary); font-size:20px;
  width:44px; height:44px; border-radius:var(--am-radius-sm);
  display:flex; align-items:center; justify-content:center;
  transition:background var(--am-trans-fast);
  flex-shrink:0;
}
.am-sheet__close:hover { background:var(--am-bg-elevated); }
.am-sheet__body {
  padding:var(--am-space-6);
  overflow-y:auto;
  flex:1 1 auto;
  touch-action:pan-y;
  overscroll-behavior:contain;
}
/* Sheet action row:stacked full-width buttons on mobile */
.am-sheet__actions {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
  padding:var(--am-space-4) var(--am-space-6);
  border-top:1px solid var(--am-border-subtle);
  flex-shrink:0;
}
.am-sheet__actions .am-btn {
  width:100%;
  justify-content:center;
  min-height:var(--am-touch-min);
}
/* On wider screens,show as a horizontal row instead */
@media (min-width:480px) {
  .am-sheet__actions { flex-direction:row; justify-content:flex-end; }
  .am-sheet__actions .am-btn { width:auto; }
}

/* === SKELETON LOADER ======================================================= */
@keyframes am-skeleton-shimmer {
  0%   { transform:translateX(-100%); }
  100% { transform:translateX(100%); }
}
.am-skeleton {
  display:flex;
  gap:var(--am-space-4);
  align-items:flex-start;
}
.am-skeleton__avatar {
  width:48px;
  height:48px;
  border-radius:var(--am-radius-full);
  background:var(--am-bg-sunken);
  flex-shrink:0;
  position:relative;
  overflow:hidden;
}
.am-skeleton__lines {
  flex:1;
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
}
.am-skeleton__line {
  height:14px;
  border-radius:var(--am-radius-sm);
  background:var(--am-bg-sunken);
  position:relative;
  overflow:hidden;
  width:100%;
}
.am-skeleton__line--title { height:20px; width:60%; }
.am-skeleton__line--short { width:40%; }

.am-skeleton__line::after,
.am-skeleton__avatar::after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0.4) 50%,transparent 100%);
  animation:am-skeleton-shimmer 1.4s ease-in-out infinite;
}

/* === DATA LIST ============================================================= */
.am-data-list { margin:0; }
.am-data-list__row {
  display:grid;
  grid-template-columns:minmax(120px,1fr) 2fr;
  gap:var(--am-space-4);
  padding:var(--am-space-3) 0;
  border-bottom:1px solid var(--am-border-subtle);
  align-items:baseline;
}
.am-data-list__row:last-child { border-bottom:none; }
.am-data-list__term { font-weight:500; color:var(--am-text-secondary); font-size:var(--am-font-sm); }
.am-data-list__def  { color:var(--am-text-primary); font-size:var(--am-font-sm); margin:0; }
.am-data-list--compact .am-data-list__row { padding:var(--am-space-2) 0; }

/* === KPI CARD ============================================================== */
.am-kpi-card {
  background:var(--am-bg-base);
  border-radius:var(--am-radius-lg);
  box-shadow:var(--am-shadow-sm);
  padding:var(--am-space-5) var(--am-space-6);
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  container-type:inline-size;
}
.am-kpi-card__icon {
  width:44px;
  height:44px;
  background:var(--am-primary-light);
  border-radius:var(--am-radius-md);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  color:var(--am-primary);
}
.am-kpi-card__body { flex:1; min-width:0; }
.am-kpi-card__label {
  display:block;
  font-size:var(--am-font-xs);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.06em;
  color:var(--am-text-tertiary);
  margin-bottom:var(--am-space-1);
}
.am-kpi-card__value {
  display:block;
  font-size:var(--am-font-2xl);
  font-weight:700;
  color:var(--am-text-primary);
  line-height:1.1;
}
.am-kpi-card__delta {
  display:inline-block;
  font-size:var(--am-font-xs);
  font-weight:600;
  margin-top:var(--am-space-1);
  padding:2px 6px;
  border-radius:var(--am-radius-full);
}
.am-kpi-card__delta--up   { color:var(--am-success); background:var(--am-success-bg); }
.am-kpi-card__delta--down { color:var(--am-danger);  background:var(--am-danger-bg); }
.am-kpi-card__delta--neutral { color:var(--am-text-secondary); background:var(--am-bg-elevated); }
.am-kpi-card__link {
  font-size:var(--am-font-xs);
  color:var(--am-primary);
  text-decoration:none;
  white-space:nowrap;
}
.am-kpi-card__link:hover { text-decoration:underline; }

/* === TOOLBAR =============================================================== */
.am-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-4);
  padding:var(--am-space-3) var(--am-space-4);
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-md);
  flex-wrap:wrap;
}
.am-toolbar__left  { display:flex; align-items:center; gap:var(--am-space-3); }
.am-toolbar__right { display:flex; align-items:center; gap:var(--am-space-2); flex-wrap:wrap; }
.am-toolbar__title { font-size:var(--am-font-sm); font-weight:600; }
.am-toolbar__bulk  { display:flex; align-items:center; gap:var(--am-space-2); }

/* === FILTER BAR ============================================================ */
.am-filter-bar { display:flex; align-items:center; gap:var(--am-space-3); flex-wrap:wrap; margin-bottom:var(--am-space-5); }
.am-filter-bar__form { display:flex; align-items:center; gap:var(--am-space-2); flex-wrap:wrap; flex:1; }
.am-filter-bar__search { position:relative; flex:1; min-width:180px; }
.am-filter-bar__search-icon { position:absolute; left:10px; top:50%; transform:translateY(-50%); color:var(--am-text-tertiary); pointer-events:none; }
.am-filter-bar__input { padding-left:32px !important; }
.am-filter-bar__select { min-width:140px; }
.am-filter-bar__count { font-size:var(--am-font-sm); color:var(--am-text-secondary); margin-left:auto; white-space:nowrap; }

/* === PAGINATION ============================================================ */
.am-pagination { display:flex; align-items:center; gap:var(--am-space-1); flex-wrap:wrap; }
.am-pagination__btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:var(--am-touch-min);
  min-height:var(--am-touch-min);
  padding:0 var(--am-space-2);
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  transition:all var(--am-trans-fast);
  background:transparent;
  border:1px solid transparent;
  cursor:pointer;
}
.am-pagination__btn:hover { background:var(--am-bg-elevated); color:var(--am-text-primary); }
.am-pagination__btn--current {
  background:var(--am-primary);
  color:#fff;
  border-color:var(--am-primary);
  pointer-events:none;
}
.am-pagination__btn--disabled { opacity:0.4; pointer-events:none; }

/* === TABLE WRAP (scrollable) =============================================== */
.am-table-wrap { background:var(--am-bg-base); border-radius:var(--am-radius-lg); box-shadow:var(--am-shadow-sm); overflow:hidden; }
.am-table-wrap__header { display:flex; align-items:center; padding:var(--am-space-4) var(--am-space-5); border-bottom:1px solid var(--am-border-subtle); }
.am-table-wrap__caption { font-weight:600; font-size:var(--am-font-base); }
.am-table-scroll { overflow-x:auto; }

/* === TABS COUNT BADGE ====================================================== */
.am-tabs__count {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:var(--am-radius-full);
  font-size:10px;
  font-weight:700;
  background:var(--am-bg-sunken);
  color:var(--am-text-secondary);
  margin-left:var(--am-space-1);
}
.am-tabs__tab--active .am-tabs__count {
  background:var(--am-primary);
  color:#fff;
}

/* === FORM FIELD — new tokens =============================================== */
.am-form-field { display:flex; flex-direction:column; gap:var(--am-space-1); }
.am-form-field__label { font-size:var(--am-font-sm); font-weight:500; color:var(--am-text-primary); }
.am-form-field__required { color:var(--am-danger); margin-left:2px; }
.am-form-field__hint { font-size:var(--am-font-xs); color:var(--am-text-tertiary); }
.am-form-field__error { font-size:var(--am-font-xs); color:var(--am-danger); font-weight:500; }
.am-input--textarea { resize:vertical; height:auto; min-height:96px; }
.am-input--invalid { border-color:var(--am-danger); }
.am-input--invalid:focus { box-shadow:0 0 0 3px rgba(220,38,38,.12); }


/* === COMMAND PALETTE ======================================================= */
.am-command-palette {
  border:none;
  padding:0;
  border-radius:var(--am-radius-lg);
  box-shadow:var(--am-shadow-lg),0 0 0 1px var(--am-border-default);
  max-width:600px;
  width:calc(100vw - 32px);
  background:var(--am-bg-base);
  overflow:hidden;
  position:fixed;
  top:15vh;
}
.am-command-palette::backdrop {
  background:rgba(0,0,0,0.4);
  backdrop-filter:blur(2px);
}
.am-command-palette__search-wrap {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  padding:var(--am-space-3) var(--am-space-4);
  border-bottom:1px solid var(--am-border-subtle);
}
.am-command-palette__icon {
  color:var(--am-text-tertiary);
  font-size:var(--am-font-base);
  line-height:1;
}
.am-command-palette__input {
  flex:1;
  border:none;
  outline:none;
  background:transparent;
  font-size:var(--am-font-base);
  color:var(--am-text-primary);
}
.am-command-palette__esc {
  font-size:var(--am-font-xs);
  padding:2px 6px;
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-sm);
  color:var(--am-text-tertiary);
}
.am-command-palette__list {
  list-style:none;
  padding:var(--am-space-1) 0;
  margin:0;
  max-height:360px;
  overflow-y:auto;
}
.am-command-palette__group {
  padding:var(--am-space-1) var(--am-space-4);
  font-size:var(--am-font-xs);
  color:var(--am-text-tertiary);
  text-transform:uppercase;
  letter-spacing:0.06em;
  font-weight:600;
  cursor:default;
}
.am-command-palette__item {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  padding:var(--am-space-2) var(--am-space-4);
  cursor:pointer;
  transition:background var(--am-duration-fast) var(--am-easing-standard);
}
.am-command-palette__item.is-active,
.am-command-palette__item:hover {
  background:var(--am-primary-light);
}
.am-command-palette__label {
  flex:1;
  font-size:var(--am-font-sm);
  color:var(--am-text-primary);
}
.am-command-palette__kbd {
  font-size:var(--am-font-xs);
  padding:2px 5px;
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-sm);
  color:var(--am-text-secondary);
}
.am-command-palette__empty {
  padding:var(--am-space-6) var(--am-space-4);
  text-align:center;
  color:var(--am-text-tertiary);
  font-size:var(--am-font-sm);
}
.am-command-palette__footer {
  display:flex;
  gap:var(--am-space-4);
  padding:var(--am-space-2) var(--am-space-4);
  border-top:1px solid var(--am-border-subtle);
  background:var(--am-bg-elevated);
}
.am-command-palette__footer span {
  display:flex;
  align-items:center;
  gap:4px;
  font-size:var(--am-font-xs);
  color:var(--am-text-tertiary);
}
.am-command-palette__footer kbd {
  padding:1px 5px;
  background:var(--am-bg-base);
  border:1px solid var(--am-border-default);
  border-radius:4px;
  font-size:11px;
}

/* === TOUCH TARGET SIZING (WCAG 2.2 SC 2.5.5 / 2.5.8) ======================
   On coarse-pointer (touch) devices raise minimum interactive target to 44px.
   Visually compact elements (am-btn--sm,am-btn--icon) use the ::after
   transparent hit-area extension defined near the button section above.
   All other interactive components get min-height/min-width overrides here. */
@media (pointer:coarse) {
  .am-btn                { min-height:var(--am-touch-min); }
  .am-pagination__item   { min-height:var(--am-touch-min); min-width:var(--am-touch-min); }
  .am-view-toggle__btn   { min-height:var(--am-touch-min); min-width:var(--am-touch-min); }
  .am-drawer__close      { min-width:var(--am-touch-min); min-height:var(--am-touch-min); }
  .am-tab                { min-height:var(--am-touch-min); }
  .am-chip               { min-height:var(--am-touch-min); }
  .am-select             { min-height:var(--am-touch-min); }
}

/* === Detail page shared:meta strip + related grid (suites embed) ============= */
.am-detail-meta-strip {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-2);
  margin:var(--am-space-3) 0;
}
.am-detail-meta-strip__chip {
  max-width:100%;
}
.am-detail-related-grid {
  margin-top:var(--am-space-6);
  padding-top:var(--am-space-4);
  border-top:1px solid var(--am-border-subtle);
}
.am-detail-related-grid__title {
  font-size:var(--am-font-lg);
  margin:0 0 var(--am-space-3);
  color:var(--am-text-primary);
}
.am-detail-related-grid__body {
  display:grid;
  gap:var(--am-space-4);
}


/* modules/amCore/css/amCore.media-placeholder.css */


/* Shared default media placeholders — gradient tile + icon badge (amCore design system). */
.am-media-placeholder {
    --am-media-ph-icon:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    min-height:0;
    position:relative;
    overflow:hidden;
    box-sizing:border-box;
    background:
        radial-gradient(120% 90% at 100% 0%,var(--am-primary-light) 0%,transparent 58%),
        linear-gradient(165deg,var(--am-bg-elevated) 0%,var(--am-bg-sunken) 100%);
}

.am-media-placeholder::before {
    content:"";
    position:absolute;
    inset:var(--am-space-2);
    border:1px dashed var(--am-border-default);
    border-radius:var(--am-radius-sm);
    pointer-events:none;
}

.am-media-placeholder__glyph {
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:1;
    width:calc(var(--am-media-ph-icon) + var(--am-space-6));
    height:calc(var(--am-media-ph-icon) + var(--am-space-6));
    border-radius:var(--am-radius-full);
    background:var(--am-bg-base);
    box-shadow:var(--am-shadow-xs);
}

.am-media-placeholder__icon {
    width:var(--am-media-ph-icon);
    height:var(--am-media-ph-icon);
    opacity:0.88;
}

.am-media-placeholder--xs {
    --am-media-ph-icon:24px;
}

.am-media-placeholder--sm {
    --am-media-ph-icon:28px;
}

.am-media-placeholder--md {
    --am-media-ph-icon:36px;
}

.am-media-placeholder--lg {
    --am-media-ph-icon:48px;
}


/* modules/amCore/css/amCore.utilities.css */


/* amCore.utilities.css — a11y,tables/modals/toast,responsive. Load last. */

/* === ACCESSIBILITY ========================================================= */
.am-sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
}

.am-skip-link {
  position:absolute;
  top:-100px;
  left:var(--am-space-4);
  padding:var(--am-space-2) var(--am-space-4);
  background:var(--am-primary);
  color:white;
  border-radius:0 0 var(--am-radius-md) var(--am-radius-md);
  font-weight:500;
  z-index:var(--am-z-modal);
  transition:top var(--am-trans-fast);
  text-decoration:none;
}
.am-skip-link:focus { top:0; }

*:focus-visible {
  outline:2px solid var(--am-border-focus);
  outline-offset:2px;
}

.am-modal-overlay {
  background:rgba(0,0,0,0.5);
  z-index:var(--am-z-modal);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:var(--am-space-4);
}
/* .am-modal shell + .am-modal__panel:see amCore.components.css (avoid duplicating card
 * sizing on the root — it capped the fullscreen overlay to 520px). */
.am-modal__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--am-space-5) var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
}
.am-modal__title { font-size:var(--am-font-lg); font-weight:600; margin:0; }
.am-modal__body  { padding:var(--am-space-6); flex:1; }
.am-modal__footer {
  display:flex;
  justify-content:flex-end;
  gap:var(--am-space-2);
  padding:var(--am-space-4) var(--am-space-6);
  border-top:1px solid var(--am-border-subtle);
}

/* === TABS ================================================================== */
.am-tabs { border-bottom:1px solid var(--am-border-subtle); margin-bottom:var(--am-space-6); display:flex; gap:var(--am-space-1); overflow-x:auto; }
.am-tab {
  padding:var(--am-space-2) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--am-trans-fast),border-color var(--am-trans-fast);
  cursor:pointer;
  background:none;
  border-top:none;
  border-left:none;
  border-right:none;
}
.am-tab:hover { color:var(--am-text-primary); }
.am-tab.is-active,.am-tab[aria-selected="true"] { color:var(--am-primary); border-bottom-color:var(--am-primary); }

/* === PROGRESS BAR ========================================================== */
.am-progress { height:8px; background:var(--am-bg-sunken); border-radius:var(--am-radius-full); overflow:hidden; }
.am-progress__bar { height:100%; background:var(--am-primary); border-radius:var(--am-radius-full); transition:width var(--am-trans-slow); }
.am-progress__bar--success { background:var(--am-success); }
.am-progress__bar--warning { background:var(--am-warning); }
.am-progress__bar--danger  { background:var(--am-danger); }

/* === SPINNER =============================================================== */
.am-spinner {
  display:inline-block;
  width:20px;
  height:20px;
  border:2px solid var(--am-border-default);
  border-top-color:var(--am-primary);
  border-radius:50%;
  animation:am-spin 0.7s linear infinite;
}
.am-spinner--sm { width:14px; height:14px; }
.am-spinner--lg { width:32px; height:32px; border-width:3px; }
@keyframes am-spin { to { transform:rotate(360deg); } }

/* === TOAST (JS-injected) =================================================== */
.am-toast-container {
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:var(--am-z-toast);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
  pointer-events:none;
  max-width:360px;
}
.am-toast {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-default);
  border-left:4px solid var(--am-info);
  border-radius:var(--am-radius-md);
  padding:var(--am-space-3) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-primary);
  box-shadow:var(--am-shadow-lg);
  pointer-events:auto;
  animation:am-toast-in 0.25s ease;
}
.am-toast--success { border-left-color:var(--am-success); }
.am-toast--error   { border-left-color:var(--am-danger); }
.am-toast--warning { border-left-color:var(--am-warning); }
.am-toast--info    { border-left-color:var(--am-info); }
@keyframes am-toast-in  { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@keyframes am-toast-out { from { opacity:1; } to { opacity:0; transform:translateY(8px); } }

/* === VIEW TOGGLE =========================================================== */
.am-view-toggle {
  display:flex;
  align-items:center;
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-md);
  overflow:hidden;
}
.am-view-toggle__btn {
  width:44px; height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:none;
  cursor:pointer;
  color:var(--am-text-tertiary);
  transition:color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-view-toggle__btn:hover { color:var(--am-text-primary); background:var(--am-bg-elevated); }
.am-view-toggle__btn.is-active { color:var(--am-primary); background:var(--am-primary-light); }
.am-view-toggle__btn svg { width:16px; height:16px; }


/* === ACP STATUS BADGES (from original amCore.css) ========================= */
.amcore-search-mod-active {
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--am-success);
  font-weight:600;
  font-size:var(--am-font-xs);
}
.amcore-search-mod-inactive {
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--am-warning);
  font-weight:600;
  font-size:var(--am-font-xs);
}

/* === SKELETON LOADING PRIMITIVES =========================================== */
@keyframes am-shimmer {
  0%   { background-position:-400px 0; }
  100% { background-position:400px 0; }
}

.am-skeleton {
  background:linear-gradient(90deg,
    var(--am-surface-2,#e2e8f0) 25%,
    var(--am-surface-3,#f1f5f9) 50%,
    var(--am-surface-2,#e2e8f0) 75%
  );
  background-size:800px 100%;
  animation:am-shimmer 1.4s ease-in-out infinite;
  border-radius:var(--am-radius-sm,4px);
}

.am-skeleton--text {
  height:1em;
  width:100%;
  border-radius:var(--am-radius-sm,4px);
}

.am-skeleton--text-sm { height:0.75em; }
.am-skeleton--text-lg { height:1.25em; }

.am-skeleton--card {
  height:120px;
  width:100%;
  border-radius:var(--am-radius-md,8px);
}

.am-skeleton--circle {
  border-radius:50%;
}

.am-skeleton--avatar {
  width:40px;
  height:40px;
  border-radius:50%;
  flex-shrink:0;
}

.am-skeleton--kpi {
  height:80px;
  border-radius:var(--am-radius-md,8px);
}

.am-skeleton-row {
  display:flex;
  align-items:center;
  gap:var(--am-space-3,0.75rem);
}

.am-skeleton-block {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2,0.5rem);
  flex:1;
}

@media (prefers-reduced-motion:reduce) {
  .am-skeleton { animation:none; }
}


/* === RESPONSIVE UTILITIES ================================================== */
@media (max-width:640px) {
  .am-module { padding:var(--am-space-4); }
  .am-form-footer { flex-direction:column; }
  .am-form-footer__right { width:100%; }
  .am-form-footer__right .am-btn { flex:1; justify-content:center; }
  .am-detail__actions { flex-wrap:wrap; }
  .am-stat-grid { grid-template-columns:repeat(2,1fr); }
  .am-modal__panel { border-radius:var(--am-radius-md); }
}


/* modules/amCore/css/amCore.base.css */


/* amCore.base — layout + responsive (after components). */
@view-transition {
  navigation:auto;
}

/* Default cross-fade for all elements */
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration:var(--am-duration-base);
  animation-timing-function:var(--am-easing-standard);
}

/* Slide-in for new page content */
::view-transition-new(root) {
  animation-name:am-vt-slide-in;
}
::view-transition-old(root) {
  animation-name:am-vt-slide-out;
}

@keyframes am-vt-slide-in {
  from { opacity:0; transform:translateY(6px); }
  to   { opacity:1; transform:translateY(0); }
}
@keyframes am-vt-slide-out {
  from { opacity:1; transform:translateY(0); }
  to   { opacity:0; transform:translateY(-4px); }
}

/* Named transition for modal/drawer same-document transitions */
.am-vt-modal {
  view-transition-name:am-modal;
}
.am-vt-card {
  view-transition-name:am-card;
}

/* Reduced motion:see amCore.responsive.css (centralized). */
/* === TOGGLE SWITCH ========================================================= */
.am-toggle {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-2);
  cursor:pointer;
}
.am-toggle input[type="checkbox"] { position:absolute; opacity:0; width:0; height:0; }
.am-toggle__track {
  width:40px;
  height:22px;
  border-radius:var(--am-radius-full);
  background:var(--am-border-default);
  position:relative;
  transition:background var(--am-trans-base);
  flex-shrink:0;
}
.am-toggle input:checked + .am-toggle__track { background:var(--am-primary); }
.am-toggle__thumb {
  position:absolute;
  top:3px;
  left:3px;
  width:16px;
  height:16px;
  border-radius:50%;
  background:white;
  box-shadow:var(--am-shadow-sm);
  transition:transform var(--am-trans-base);
}
.am-toggle input:checked + .am-toggle__track .am-toggle__thumb { transform:translateX(18px); }
.am-toggle:focus-within .am-toggle__track { box-shadow:0 0 0 3px var(--am-primary-light); }

/* Toggle field row */
.am-toggle-field {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:var(--am-space-6);
  padding:var(--am-space-4);
  border-radius:var(--am-radius-md);
  background:var(--am-bg-elevated);
}
.am-toggle-field__info { flex:1; }

/* === RADIO GROUP =========================================================== */
.am-radio-group { display:flex; flex-direction:column; gap:var(--am-space-2); }
.am-radio {
  display:flex;
  align-items:flex-start;
  gap:var(--am-space-3);
  padding:var(--am-space-3) var(--am-space-4);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-md);
  cursor:pointer;
  transition:border-color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-radio:hover { border-color:var(--am-border-strong); background:var(--am-bg-elevated); }
.am-radio:has(input:checked) { border-color:var(--am-primary); background:var(--am-primary-light); }
.am-radio input { position:absolute; opacity:0; }
.am-radio__indicator {
  width:18px; height:18px;
  border-radius:50%;
  border:2px solid var(--am-border-default);
  flex-shrink:0;
  margin-top:2px;
  transition:border-color var(--am-trans-fast);
}
.am-radio:has(input:checked) .am-radio__indicator {
  border-color:var(--am-primary);
  background:radial-gradient(circle at center,var(--am-primary) 40%,transparent 40%);
}
.am-radio__label { display:flex; flex-direction:column; gap:2px; }
.am-radio__label strong { font-size:var(--am-font-base); color:var(--am-text-primary); }
.am-radio__hint { font-size:var(--am-font-sm); color:var(--am-text-secondary); }

/* === FILTER BAR ============================================================ */
.am-filter-bar {
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-4) var(--am-space-5);
  margin-bottom:var(--am-space-6);
}
.am-chrome .am-filter-bar,
.am-app-shell .am-filter-bar {
  background:var(--am-shell-bg-surface);
  border:1px solid var(--am-shell-border);
  border-radius:var(--am-radius-md);
  box-shadow:var(--am-shadow-xs);
}
.am-filter-bar__inner {
  display:flex;
  align-items:flex-end;
  gap:var(--am-space-3);
  flex-wrap:wrap;
}

/* Search is a single control — keep vertically centered vs label+select stacks */
.am-filter-bar__inner > .am-search-field {
  align-self:center;
}

/* Toolbar selects:not full-width (global .am-select { width:100% } is for forms). */
.am-filter-bar__control {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px;
  flex:0 1 auto;
  min-width:min(12rem,100%);
  max-width:100%;
}
.am-filter-bar__label {
  font-size:0.6875rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.05em;
  color:var(--am-text-tertiary);
  line-height:1.2;
  padding-left:2px;
  white-space:nowrap;
}
.am-chrome .am-filter-bar__label,
.am-app-shell .am-filter-bar__label {
  color:var(--am-shell-text-muted);
}
.am-filter-bar__control .am-select {
  width:100%;
  min-width:0;
}
.am-filter-bar__summary {
  margin-top:var(--am-space-3);
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
}
/* Live filter result count — wraps on small widths,aligns end on wide */
.am-filter-bar__status {
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
  flex-basis:100%;
  margin-top:2px;
}
/* Filter bar status responsive:see amCore.responsive.css. */

/* Pill browse filters (+ toolbar row pairs with .am-browse-toolbar--pills) */
.am-browse-toolbar--pills {
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  gap:var(--am-space-3) var(--am-space-4);
  margin-bottom:var(--am-space-6);
  width:100%;
}
.am-browse-toolbar--pills .am-filter-pill-bar {
  flex:1 1 auto;
  width:100%;
  min-width:0;
  margin-bottom:0;
}
.am-browse-toolbar--pills .am-browse-toolbar__views {
  flex:0 0 auto;
  align-self:center;
}

.am-filter-pill-bar {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
  width:100%;
  container-type:inline-size;
  container-name:am-filter-pill;
}
.am-filter-pill-bar__row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  column-gap:var(--am-space-3);
  width:100%;
}
.am-filter-pill-bar__row:has(.am-filter-pill-bar__views) {
  grid-template-columns:minmax(0,1fr) auto auto;
}
.am-filter-pill-bar__start {
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:var(--am-space-2);
  grid-column:1;
  min-width:0;
}
.am-filter-pill-bar__end {
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  gap:var(--am-space-3);
  grid-column:2;
  min-width:0;
}
.am-filter-pill-bar__views {
  display:flex;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-end;
  gap:var(--am-space-2);
  grid-column:3;
  justify-self:end;
  margin-left:0;
}
/* Legacy markup:grid/list still inside __end */
.am-filter-pill-bar__row:not(:has(.am-filter-pill-bar__views)) .am-filter-pill-bar__end:has(.am-browse-toolbar-secondary-views) {
  grid-column:2;
  justify-self:end;
}
.am-filter-pill-bar__row:not(:has(.am-filter-pill-bar__views)) .am-filter-pill-bar__end:has(.am-browse-toolbar-secondary-views) .am-browse-toolbar-secondary-views {
  margin-left:auto;
}
.am-filter-pill-bar__search.am-search-field {
  flex:1 1 11rem;
  min-width:0;
  max-width:min(280px,100%);
}
.am-filter-pill-bar__views .am-browse-toolbar__views,
.am-filter-pill-bar__end .am-browse-toolbar__views {
  flex:0 0 auto;
}
.am-filter-pill-bar__triggers {
  display:flex;
  flex-wrap:nowrap;
  gap:var(--am-space-2);
  flex:0 1 auto;
  min-width:0;
}
.am-filter-pill-bar__clear-wrap {
  flex:0 0 auto;
}
.am-filter-pill-bar__search-wrap {
  flex:0 0 auto;
}
.am-filter-pill-bar__panels-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:var(--am-space-2);
  width:100%;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__end {
  display:none;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__row:has(.am-filter-pill-bar__views) {
  grid-template-columns:minmax(0,1fr) auto;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__views {
  grid-column:2;
}
.am-filter-pill-bar--search-panel .am-filter-pill-trigger--search-compact {
  display:inline-flex;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__search-wrap .am-filter-pill-trigger__label {
  display:none;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__search-wrap .am-filter-pill-trigger {
  min-width:44px;
  padding:0 var(--am-space-2);
  justify-content:center;
  gap:0;
}
.am-filter-pill-bar--search-panel .am-filter-pill-bar__panels-actions {
  display:none;
}
.am-filter-pill-trigger {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-2);
  min-height:44px;
  padding:0 var(--am-space-3);
  border-radius:var(--am-radius-full);
  border:1px solid var(--am-border-default);
  background:var(--am-bg-elevated);
  color:var(--am-text-primary);
  font-size:var(--am-font-sm);
  font-weight:500;
  cursor:pointer;
  transition:background var(--am-trans-fast),border-color var(--am-trans-fast),color var(--am-trans-fast);
}
.am-chrome .am-filter-pill-trigger,
.am-app-shell .am-filter-pill-trigger {
  background:var(--am-shell-bg-surface);
  border-color:var(--am-shell-border);
}
.am-filter-pill-trigger:hover {
  border-color:var(--am-border-focus);
}
.am-filter-pill-trigger--active {
  border-color:var(--am-primary);
  background:var(--am-primary-light);
  color:var(--am-primary);
}
.am-filter-pill-trigger__label {
  white-space:nowrap;
}
.am-filter-pill-trigger__icon-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  line-height:0;
}
.am-filter-pill-trigger__icon-wrap img {
  display:block;
}
.am-filter-pill-trigger__chev {
  width:0;
  height:0;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid var(--am-text-tertiary);
  flex-shrink:0;
}
.am-filter-pill-bar__panels {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
}
.am-filter-pill-bar__active {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:var(--am-space-2);
  width:100%;
}
.am-filter-pill-bar__active[hidden] {
  display:none !important;
}
.am-filter-pill-bar__active-inner {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--am-space-2);
  width:100%;
}
.am-filter-pill-bar__active-label {
  font-size:var(--am-font-xs);
  font-weight:600;
  color:var(--am-text-secondary);
  flex:0 0 auto;
}
.am-filter-pill-bar__chips {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-2);
  flex:1 1 auto;
  min-width:0;
}
.am-filter-pill-bar__active-inner .am-filter-pill-bar__clear-all {
  flex:0 0 auto;
  margin-left:auto;
  align-self:center;
}
.am-chip__text {
  min-width:0;
  word-break:break-word;
}
/* [hidden] on panels is overridden by any author display rule — force collapsed state */
.am-filter-pill-panel[hidden] {
  display:none !important;
}
.am-filter-pill-panel:not([hidden]) {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-2);
  padding:var(--am-space-3);
  border-radius:var(--am-radius-md);
  border:1px solid var(--am-border-subtle);
  background:var(--am-bg-sunken);
}
.am-chrome .am-filter-pill-panel:not([hidden]),
.am-app-shell .am-filter-pill-panel:not([hidden]) {
  background:var(--am-shell-bg-surface);
  border-color:var(--am-shell-border);
}
.am-filter-pill-opt {
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:0 var(--am-space-3);
  border-radius:var(--am-radius-full);
  border:1px solid var(--am-border-default);
  background:var(--am-bg-elevated);
  color:var(--am-text-primary);
  font-size:var(--am-font-sm);
  cursor:pointer;
  transition:background var(--am-trans-fast),border-color var(--am-trans-fast);
}
.am-filter-pill-opt:hover {
  border-color:var(--am-border-focus);
}
.am-filter-pill-opt--active {
  border-color:var(--am-primary);
  background:var(--am-primary-light);
  color:var(--am-primary);
  font-weight:600;
}

/* Compact browse toolbar:rules in amCore.responsive.css (container + viewport). */
.am-filter-pill-trigger--search-compact {
  display:none;
}
.am-filter-pill-bar__search--panel {
  flex:1 1 100%;
  width:100%;
  max-width:none;
}
.am-filter-pill-panel--search:not([hidden]) {
  display:block;
  width:100%;
  padding:var(--am-space-2);
  border:none;
  background:transparent;
}

/* Shared browse toolbar:search/filters + grid/list (amFamCore initViewToggle) */
.am-browse-toolbar {
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:var(--am-space-4);
  margin-bottom:var(--am-space-6);
}
.am-browse-toolbar .am-filter-bar {
  flex:1 1 280px;
  margin-bottom:0;
}
.am-browse-toolbar__views {
  flex:0 0 auto;
}
.am-browse-toolbar .am-view-toggle {
  display:flex;
  align-items:center;
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-md);
  overflow:hidden;
}
.am-browse-view-btn {
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:none;
  cursor:pointer;
  color:var(--am-text-tertiary);
  transition:color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-browse-view-btn:hover {
  color:var(--am-text-primary);
  background:var(--am-bg-elevated);
}
.am-browse-view-btn.is-active {
  color:var(--am-primary);
  background:var(--am-primary-light);
}
.am-browse-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:var(--am-space-4);
}
.am-browse-grid.amEvent-calendar-view,
.am-browse-grid[data-view="calendar"] {
  display:block;
  width:100%;
  max-width:none;
  gap:0;
}
.am-browse-grid.amEvent-calendar-view > *,
.am-browse-grid[data-view="calendar"] > * {
  width:100%;
  max-width:none;
}
.am-browse-grid.am-list-view {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-4);
}
.am-browse-grid > .block.jr-list-pager {
  grid-column:1 / -1;
  width:100%;
}
.am-browse-grid.am-list-view > .block.jr-list-pager {
  flex:0 0 auto;
  align-self:stretch;
}
.am-browse-item-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--am-space-2);
  margin-top:var(--am-space-3);
}

/* Search field */
.am-search-field {
  position:relative;
  display:flex;
  align-items:center;
  flex:1;
  min-width:200px;
}
.am-search-field__icon {
  position:absolute;
  left:10px;
  width:16px;
  height:16px;
  color:var(--am-text-tertiary);
  pointer-events:none;
}
.am-search-field .am-input {
  padding-left:34px;
  padding-right:32px;
}
.am-search-field__clear {
  position:absolute;
  right:8px;
  background:none;
  border:none;
  cursor:pointer;
  color:var(--am-text-tertiary);
  font-size:16px;
  line-height:1;
  padding:2px;
  border-radius:var(--am-radius-sm);
}
.am-search-field__clear:hover { color:var(--am-text-primary); }

/* === CHIPS & BADGES ======================================================== */
.am-chip {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-1);
  padding:2px var(--am-space-2);
  border-radius:var(--am-radius-full);
  font-size:var(--am-font-xs);
  font-weight:500;
  line-height:1.6;
}
.am-chip--primary  { background:var(--am-primary-light);  color:var(--am-primary); }
.am-chip--category { background:var(--am-primary-light);  color:var(--am-primary); }
.am-chip--tag      { background:var(--am-bg-sunken);       color:var(--am-text-secondary); }
.am-chip--filter   { background:var(--am-info-bg);         color:var(--am-info); }
.am-chip--success  { background:var(--am-success-bg);      color:var(--am-success); }
.am-chip--warning  { background:var(--am-warning-bg);      color:var(--am-warning); }
.am-chip--danger   { background:var(--am-danger-bg);       color:var(--am-danger); }
.am-chip__remove {
  background:none;
  border:none;
  cursor:pointer;
  padding:0;
  color:inherit;
  opacity:0.7;
  line-height:1;
}
.am-chip__remove:hover { opacity:1; }

.am-badge {
  display:inline-flex;
  align-items:center;
  padding:2px 6px;
  border-radius:var(--am-radius-sm);
  font-size:var(--am-font-xs);
  font-weight:600;
  line-height:1.6;
}
.am-badge--active   { background:var(--am-success-bg);  color:var(--am-success); }
.am-badge--inactive { background:var(--am-bg-sunken);    color:var(--am-text-tertiary); }
.am-badge--pending  { background:var(--am-warning-bg);  color:var(--am-warning); }
.am-badge--danger   { background:var(--am-danger-bg);   color:var(--am-danger); }
.am-badge--info     { background:var(--am-info-bg);     color:var(--am-info); }
.am-badge--admin    { background:var(--am-danger-bg);   color:var(--am-danger); }
.am-badge--count    { background:var(--am-bg-sunken);   color:var(--am-text-secondary); min-width:22px; text-align:center; }

/* === CARD GRID ============================================================= */
.am-grid {
  display:grid;
  gap:var(--am-space-4);
  grid-template-columns:repeat(var(--am-grid-cols,3),1fr);
}
.am-grid--1    { --am-grid-cols:1; }
.am-grid--2    { --am-grid-cols:2; }
.am-grid--2col { --am-grid-cols:2; }
.am-grid--3    { --am-grid-cols:3; }
.am-grid--4    { --am-grid-cols:4; }
.am-grid--4col { --am-grid-cols:4; }
.am-grid--auto    { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
.am-grid--auto-sm { grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); }
.am-grid--auto-xs { grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); }
.am-grid--compact { gap:var(--am-space-3); }

/* Grid responsive rules extracted to amCore.responsive.css. */

/* Card */
.am-card {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  overflow:hidden;
  box-shadow:var(--am-shadow-sm);
  display:flex;
  flex-direction:column;
  transition:box-shadow var(--am-trans-base),border-color var(--am-trans-fast);
}
.am-card:hover { box-shadow:var(--am-shadow-md); border-color:var(--am-border-default); }
.am-card:focus-within { outline:2px solid var(--am-border-focus); outline-offset:2px; }

.am-card__media {
  position:relative;
  aspect-ratio:16/9;
  overflow:hidden;
  background:var(--am-bg-sunken);
}
.am-card__img {
  width:100%; height:100%;
  object-fit:cover;
  transition:transform var(--am-trans-slow);
}
.am-card:hover .am-card__img { transform:scale(1.04); }

.am-card__overlay {
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--am-space-2);
  opacity:0;
  transition:opacity var(--am-trans-base);
}
.am-card:hover .am-card__overlay,
.am-card:focus-within .am-card__overlay { opacity:1; }

.am-card__badge {
  position:absolute;
  top:var(--am-space-2);
  right:var(--am-space-2);
}

.am-card__body {
  padding:var(--am-space-5);
  flex:1;
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
}
.am-card__title {
  font-size:var(--am-font-lg);
  font-weight:600;
  margin:0;
  line-height:1.4;
}
.am-card__title-link { color:var(--am-text-primary); text-decoration:none; }
.am-card__title-link:hover { color:var(--am-primary); }
.am-card__description {
  color:var(--am-text-secondary);
  font-size:var(--am-font-sm);
  margin:0;
  line-height:1.6;
}
.am-card__meta {
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  flex-wrap:wrap;
  margin-top:auto;
}
.am-card__footer {
  padding:var(--am-space-3) var(--am-space-5);
  border-top:1px solid var(--am-border-subtle);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-3);
}
.am-card__actions { display:flex; align-items:center; gap:var(--am-space-1); }

/* Module card variant */
.am-module-card {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-5);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-3);
  transition:box-shadow var(--am-trans-base),border-color var(--am-trans-fast);
}
.am-module-card:hover { box-shadow:var(--am-shadow-md); border-color:var(--am-border-default); }
.am-module-card__icon {
  width:40px; height:40px;
  border-radius:var(--am-radius-md);
  background:var(--am-primary-light);
  color:var(--am-primary);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.am-module-card__icon img,
.am-module-card__icon svg { width:22px; height:22px; }

/* === DETAIL LAYOUT ========================================================= */
.am-detail__layout {
  display:grid;
  grid-template-columns:1fr 340px;
  gap:var(--am-space-10);
  align-items:start;
}
/* Detail layout responsive extracted to amCore.responsive.css. */

.am-detail__hero { margin-bottom:var(--am-space-8); }
.am-detail__hero-media {
  border-radius:var(--am-radius-lg);
  overflow:hidden;
  margin-bottom:var(--am-space-6);
}
.am-detail__hero-img { width:100%; max-height:400px; object-fit:cover; display:block; }
.am-detail__title {
  font-size:var(--am-font-3xl);
  font-weight:700;
  margin:0 0 var(--am-space-3);
  letter-spacing:-0.02em;
}
.am-detail__meta-row {
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  flex-wrap:wrap;
  margin-bottom:var(--am-space-5);
}
.am-detail__actions {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  flex-wrap:wrap;
}
.am-detail__section { margin-bottom:var(--am-space-8); }
.am-section-title {
  font-size:var(--am-font-xl);
  font-weight:600;
  margin:0 0 var(--am-space-4);
  padding-bottom:var(--am-space-3);
  border-bottom:1px solid var(--am-border-subtle);
}

/* Rich content */
.am-rich-content { line-height:1.7; color:var(--am-text-primary); }
.am-rich-content h2 { font-size:var(--am-font-xl); font-weight:600; margin:var(--am-space-6) 0 var(--am-space-3); }
.am-rich-content h3 { font-size:var(--am-font-lg); font-weight:600; margin:var(--am-space-5) 0 var(--am-space-2); }
.am-rich-content p  { margin:0 0 var(--am-space-4); }
.am-rich-content pre { background:var(--am-bg-sunken); border-radius:var(--am-radius-md); padding:var(--am-space-4); overflow-x:auto; font-family:var(--am-font-mono); font-size:var(--am-font-sm); }
.am-rich-content code { font-family:var(--am-font-mono); font-size:0.9em; background:var(--am-bg-sunken); padding:1px 5px; border-radius:var(--am-radius-sm); }
.am-rich-content pre code { background:none; padding:0; }

/* === SIDEBAR CARDS ========================================================= */
.am-sidebar-card {
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-5);
  margin-bottom:var(--am-space-4);
}
.am-sidebar-card__title {
  font-size:var(--am-font-xs);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.06em;
  color:var(--am-text-tertiary);
  margin:0 0 var(--am-space-4);
}

/* Definition list */
.am-definition-list { display:grid; grid-template-columns:auto 1fr; gap:var(--am-space-2) var(--am-space-4); }
.am-definition-list dt { font-size:var(--am-font-sm); color:var(--am-text-secondary); font-weight:500; }
.am-definition-list dd { font-size:var(--am-font-sm); color:var(--am-text-primary); margin:0; }

/* Stat grid */
.am-stat-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--am-space-4); text-align:center; }
.am-stat__value { display:block; font-size:var(--am-font-2xl); font-weight:700; color:var(--am-text-primary); }
.am-stat__label { font-size:var(--am-font-xs); color:var(--am-text-tertiary); text-transform:uppercase; letter-spacing:0.04em; }

/* === FORM PAGE ============================================================= */
.am-form-page__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-4);
  margin-bottom:var(--am-space-8);
  padding-bottom:var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
}
.am-form-nav {
  display:flex;
  gap:var(--am-space-1);
  margin-bottom:var(--am-space-8);
  border-bottom:1px solid var(--am-border-subtle);
  overflow-x:auto;
}
.am-form-nav__link {
  padding:var(--am-space-2) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--am-trans-fast),border-color var(--am-trans-fast);
}
.am-form-nav__link:hover { color:var(--am-text-primary); }
.am-form-nav__link.is-active { color:var(--am-primary); border-bottom-color:var(--am-primary); }

.am-form-section {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-subtle);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-6);
  margin-bottom:var(--am-space-6);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-5);
}
.am-form-section--admin { border-color:var(--am-danger-bg); background:var(--am-danger-bg); }
.am-form-section__title {
  display:flex;
  align-items:center;
  gap:var(--am-space-3);
  font-size:var(--am-font-lg);
  font-weight:600;
  color:var(--am-text-primary);
  margin:0 0 var(--am-space-2);
}
.am-form-section__number {
  width:28px; height:28px;
  border-radius:50%;
  background:var(--am-primary-light);
  color:var(--am-primary);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:var(--am-font-sm);
  font-weight:700;
  flex-shrink:0;
}

.am-form-footer {
  position:sticky;
  bottom:0;
  background:var(--am-bg-base);
  border-top:1px solid var(--am-border-subtle);
  padding:var(--am-space-4) var(--am-space-6);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--am-space-3);
  z-index:var(--am-z-sticky);
  margin:0 calc(-1 * var(--am-space-6)) calc(-1 * var(--am-space-6));
}
.am-form-footer__right { display:flex; gap:var(--am-space-2); }

/* === UPLOAD ZONE =========================================================== */
.am-upload-zone {
  border:2px dashed var(--am-border-default);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-8);
  text-align:center;
  cursor:pointer;
  transition:border-color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-upload-zone:hover,
.am-upload-zone.is-dragover { border-color:var(--am-primary); background:var(--am-primary-light); }
.am-upload-zone:focus-visible { outline:2px solid var(--am-primary); outline-offset:2px; }
.am-upload-zone__icon { width:40px; height:40px; color:var(--am-text-tertiary); margin:0 auto var(--am-space-3); }
.am-upload-zone__text { font-size:var(--am-font-base); color:var(--am-text-secondary); }
.am-upload-zone__browse { color:var(--am-primary); cursor:pointer; }
.am-upload-zone__hint { font-size:var(--am-font-sm); color:var(--am-text-tertiary); }

/* === TAG INPUT ============================================================= */
.am-tag-input {
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
}
.am-tag-input__chips {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-1);
}

/* === PAGINATION ============================================================ */
.am-pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:var(--am-space-1);
  margin-top:var(--am-space-10);
}
.am-pagination__item {
  min-width:var(--am-touch-min); height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  transition:all var(--am-trans-fast);
  border:1px solid transparent;
}
.am-pagination__item:hover { background:var(--am-bg-elevated); color:var(--am-text-primary); }
.am-pagination__item.is-active { background:var(--am-primary); color:white; border-color:var(--am-primary); }
.am-pagination__item:focus-visible { outline:2px solid var(--am-primary); outline-offset:2px; }
.am-pagination__ellipsis { color:var(--am-text-tertiary); padding:0 var(--am-space-1); }

/* === EMPTY STATE =========================================================== */
.am-empty-state {
  text-align:center;
  padding:var(--am-space-16) var(--am-space-8);
  color:var(--am-text-secondary);
}
.am-empty-state__icon { width:64px; height:64px; color:var(--am-text-tertiary); margin:0 auto var(--am-space-6); }
.am-empty-state__title { font-size:var(--am-font-xl); font-weight:600; color:var(--am-text-primary); margin:0 0 var(--am-space-2); }
.am-empty-state__description,
.am-empty-state__text { font-size:var(--am-font-base); margin:0 0 var(--am-space-6); max-width:400px; margin-left:auto; margin-right:auto; }
.am-empty-state--cta .am-empty-state__text { margin-bottom:var(--am-space-3); }
.am-empty-state__action { margin:0; }

/* === NOTICE / ALERT BANNERS ================================================ */
.am-notice {
  display:flex;
  align-items:flex-start;
  gap:var(--am-space-3);
  padding:var(--am-space-4);
  border-radius:var(--am-radius-md);
  font-size:var(--am-font-sm);
  line-height:1.5;
}
.am-notice__icon { flex-shrink:0; margin-top:1px; width:18px; height:18px; }
.am-notice--success { background:var(--am-success-bg); color:var(--am-success); border:1px solid rgba(18,160,96,0.2); }
.am-notice--warning { background:var(--am-warning-bg); color:var(--am-warning); border:1px solid rgba(217,119,6,0.2); }
.am-notice--danger  { background:var(--am-danger-bg);  color:var(--am-danger);  border:1px solid rgba(220,38,38,0.2); }
.am-notice--info    { background:var(--am-info-bg);    color:var(--am-info);    border:1px solid rgba(37,99,235,0.2); }

/* === META ROW ============================================================== */
.am-meta-item {
  display:inline-flex;
  align-items:center;
  gap:var(--am-space-1);
  font-size:var(--am-font-sm);
  color:var(--am-text-secondary);
}
.am-meta-icon { width:14px; height:14px; flex-shrink:0; }
.am-meta-link { color:var(--am-text-secondary); text-decoration:none; }
.am-meta-link:hover { color:var(--am-primary); }

/* === TABLE ================================================================= */
.am-table-wrapper { overflow-x:auto; }
.am-table {
  width:100%;
  border-collapse:collapse;
  font-size:var(--am-font-sm);
}
.am-table th {
  text-align:left;
  font-weight:600;
  font-size:var(--am-font-xs);
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-text-tertiary);
  padding:var(--am-space-3) var(--am-space-4);
  border-bottom:1px solid var(--am-border-default);
  background:var(--am-bg-elevated);
}
.am-table th:first-child { border-radius:var(--am-radius-md) 0 0 0; }
.am-table th:last-child  { border-radius:0 var(--am-radius-md) 0 0; }
.am-table td {
  padding:var(--am-space-3) var(--am-space-4);
  border-bottom:1px solid var(--am-border-subtle);
  color:var(--am-text-primary);
  vertical-align:middle;
}
.am-table tr:last-child td { border-bottom:none; }
.am-table tr:hover td { background:var(--am-bg-elevated); }
.am-table--compact td,.am-table--compact th { padding:var(--am-space-2) var(--am-space-3); }

/* Table with checkbox col */
.am-table__check-col { width:40px; text-align:center; }
.am-table input[type="checkbox"] { cursor:pointer; width:16px; height:16px; accent-color:var(--am-primary); }

/* === MODAL ================================================================= */
.am-modal-overlay {
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.5);
  z-index:var(--am-z-modal);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:var(--am-space-4);
}
/* Full-viewport shell + card chrome:amCore.components.css (.am-modal / .am-modal__panel).
 * Do not add width/max-width/background here — later rules merged with the shell and capped
 * the overlay to 520px (fixed to the left of the viewport). */
.am-modal__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:var(--am-space-5) var(--am-space-6);
  border-bottom:1px solid var(--am-border-subtle);
}
.am-modal__title { font-size:var(--am-font-lg); font-weight:600; margin:0; }
.am-modal__body  { padding:var(--am-space-6); flex:1; }
.am-modal__footer {
  display:flex;
  justify-content:flex-end;
  gap:var(--am-space-2);
  padding:var(--am-space-4) var(--am-space-6);
  border-top:1px solid var(--am-border-subtle);
}

/* === TABS ================================================================== */
.am-tabs { border-bottom:1px solid var(--am-border-subtle); margin-bottom:var(--am-space-6); display:flex; gap:var(--am-space-1); overflow-x:auto; }
.am-tab {
  padding:var(--am-space-2) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--am-trans-fast),border-color var(--am-trans-fast);
  cursor:pointer;
  background:none;
  border-top:none;
  border-left:none;
  border-right:none;
}
.am-tab:hover { color:var(--am-text-primary); }
.am-tab.is-active,.am-tab[aria-selected="true"] { color:var(--am-primary); border-bottom-color:var(--am-primary); }

/* Profile tab suite sub-nav (amGenCore,amBlog,amPhoto,amVideo,amAudio,etc.) — same language as .am-tabs */
.am-profile-sub-tabs {
  border-bottom:1px solid var(--am-border-subtle);
  margin-bottom:var(--am-space-4);
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-1);
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.am-profile-sub-tab {
  padding:var(--am-space-2) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-secondary);
  text-decoration:none;
  border-bottom:2px solid transparent;
  white-space:nowrap;
  transition:color var(--am-trans-fast),border-color var(--am-trans-fast);
  display:inline-block;
}
.am-profile-sub-tab:hover { color:var(--am-text-primary); }
.am-profile-sub-tab:focus-visible {
  outline:2px solid var(--am-primary);
  outline-offset:2px;
}
.am-profile-sub-tab.is-active,
.am-profile-sub-tab[aria-selected="true"] {
  color:var(--am-primary);
  border-bottom-color:var(--am-primary);
}

/* === PROGRESS BAR ========================================================== */
.am-progress { height:8px; background:var(--am-bg-sunken); border-radius:var(--am-radius-full); overflow:hidden; }
.am-progress__bar { height:100%; background:var(--am-primary); border-radius:var(--am-radius-full); transition:width var(--am-trans-slow); }
.am-progress__bar--success { background:var(--am-success); }
.am-progress__bar--warning { background:var(--am-warning); }
.am-progress__bar--danger  { background:var(--am-danger); }

/* === SPINNER =============================================================== */
.am-spinner {
  display:inline-block;
  width:20px;
  height:20px;
  border:2px solid var(--am-border-default);
  border-top-color:var(--am-primary);
  border-radius:50%;
  animation:am-spin 0.7s linear infinite;
}
.am-spinner--sm { width:14px; height:14px; }
.am-spinner--lg { width:32px; height:32px; border-width:3px; }
@keyframes am-spin { to { transform:rotate(360deg); } }

/* === TOAST (JS-injected) =================================================== */
.am-toast-container {
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:var(--am-z-toast);
  display:flex;
  flex-direction:column;
  gap:var(--am-space-2);
  pointer-events:none;
  max-width:360px;
}
.am-toast {
  background:var(--am-bg-base);
  border:1px solid var(--am-border-default);
  border-left:4px solid var(--am-info);
  border-radius:var(--am-radius-md);
  padding:var(--am-space-3) var(--am-space-4);
  font-size:var(--am-font-sm);
  font-weight:500;
  color:var(--am-text-primary);
  box-shadow:var(--am-shadow-lg);
  pointer-events:auto;
  animation:am-toast-in 0.25s ease;
}
.am-toast--success { border-left-color:var(--am-success); }
.am-toast--error   { border-left-color:var(--am-danger); }
.am-toast--warning { border-left-color:var(--am-warning); }
.am-toast--info    { border-left-color:var(--am-info); }
@keyframes am-toast-in  { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:none; } }
@keyframes am-toast-out { from { opacity:1; } to { opacity:0; transform:translateY(8px); } }

/* === VIEW TOGGLE =========================================================== */
.am-view-toggle {
  display:flex;
  align-items:center;
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-md);
  overflow:hidden;
}
.am-view-toggle__btn {
  width:44px; height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  border:none;
  cursor:pointer;
  color:var(--am-text-tertiary);
  transition:color var(--am-trans-fast),background var(--am-trans-fast);
}
.am-view-toggle__btn:hover { color:var(--am-text-primary); background:var(--am-bg-elevated); }
.am-view-toggle__btn.is-active { color:var(--am-primary); background:var(--am-primary-light); }
.am-view-toggle__btn svg { width:16px; height:16px; }

/* === LIST VIEW (alternate to grid) ======================================== */
.am-list-view .am-card {
  flex-direction:row;
  align-items:stretch;
}
.am-list-view .am-card__media {
  width:120px;
  aspect-ratio:unset;
  flex-shrink:0;
}
.am-list-view .am-card__body { padding:var(--am-space-4); }
/* List-view card responsive extracted to amCore.responsive.css. */

/* === SEPARATOR ============================================================= */
.am-separator {
  border:none;
  border-top:1px solid var(--am-border-subtle);
  margin:var(--am-space-4) 0;
}

/* === ACP STATUS BADGES (from original amCore.css) ========================= */
.amcore-search-mod-active {
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--am-success);
  font-weight:600;
  font-size:var(--am-font-xs);
}
.amcore-search-mod-inactive {
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:var(--am-warning);
  font-weight:600;
  font-size:var(--am-font-xs);
}

/* === RESPONSIVE UTILITIES ================================================== */
/* Responsive utilities extracted to amCore.responsive.css (mobile-first). */


/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}


/* modules/amCore/css/amCore.patterns.css */


/* amCore.patterns.css — shared data-display patterns (line diff,fade carousel).
   Load after amCore.base.css. Use these class names in any am* module for a
   consistent look; tune once here. */

/* === LINE DIFF (side-by-side banner + monospace table) ===================== */
.am-diff-banner {
  display:flex;
  align-items:center;
  gap:var(--am-space-4);
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-lg);
  padding:var(--am-space-3) var(--am-space-5);
  margin-bottom:var(--am-space-4);
}
.am-diff-banner__side {
  display:flex;
  align-items:center;
  gap:var(--am-space-2);
  flex:1;
}
.am-diff-banner__side--add { justify-content:flex-end; }
.am-diff-banner__arrow {
  opacity:0.5;
  flex-shrink:0;
}

.am-diff-legend {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-4);
  margin-bottom:var(--am-space-3);
  font-size:var(--am-font-sm);
}
.am-diff-legend__item {
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:2px 8px;
  border-radius:var(--am-radius-sm);
}
.am-diff-legend__item--add {
  background:var(--am-success-bg);
  color:var(--am-success);
}
.am-diff-legend__item--del {
  background:var(--am-danger-bg);
  color:var(--am-danger);
}
.am-diff-legend__item--ctx {
  background:var(--am-bg-muted);
  color:var(--am-text-secondary);
}

.am-diff-wrapper {
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-lg);
  overflow:hidden;
  overflow-x:auto;
}
.am-diff-table {
  width:100%;
  border-collapse:collapse;
  font-family:ui-monospace,'SFMono-Regular',Consolas,'Liberation Mono',Menlo,monospace;
  font-size:13px;
  line-height:1.5;
}
.am-diff-table td {
  padding:2px 12px;
  white-space:pre-wrap;
  word-break:break-word;
}
.am-diff-gutter {
  width:28px;
  text-align:center;
  user-select:none;
  border-right:1px solid var(--am-border-default);
  color:var(--am-text-secondary);
  font-size:11px;
}
.am-diff-add {
  background:var(--am-success-bg);
}
.am-diff-add .am-diff-gutter {
  color:var(--am-success);
  background:color-mix(in srgb,var(--am-success) 14%,var(--am-bg-base));
}
.am-diff-del {
  background:var(--am-danger-bg);
}
.am-diff-del .am-diff-gutter {
  color:var(--am-danger);
  background:color-mix(in srgb,var(--am-danger) 12%,var(--am-bg-base));
}
.am-diff-ctx {
  background:var(--am-bg-base);
}

/* === FADE CAROUSEL (one slide visible; prev/next + dots) =================== */
.am-carousel {
  position:relative;
  overflow:hidden;
  min-height:120px;
}
.am-carousel-slide {
  display:none;
}
.am-carousel-slide.is-active {
  display:block;
  animation:amCarouselFadeIn 0.25s ease;
}
@keyframes amCarouselFadeIn {
  from {
    opacity:0;
    transform:translateY(4px);
  }
  to {
    opacity:1;
    transform:none;
  }
}
.am-carousel-controls {
  display:flex;
  align-items:center;
  gap:4px;
}
.am-carousel-dots {
  display:flex;
  gap:6px;
  justify-content:center;
  margin-top:var(--am-space-3);
  flex-wrap:wrap;
}
.am-carousel-dot {
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--am-border-default);
  border:none;
  padding:0;
  cursor:pointer;
  transition:background var(--am-trans-fast);
}
.am-carousel-dot.is-active {
  background:var(--am-primary);
}

/* Neutral content panel inside a carousel slide (tips,previews,etc.) */
.am-preview-card {
  padding:var(--am-space-4);
  background:var(--am-bg-muted);
  border-radius:var(--am-radius-lg);
}
.am-preview-card__meta {
  margin-bottom:var(--am-space-2);
}
.am-preview-card__title {
  font-size:var(--am-font-lg);
  font-weight:600;
  margin:0 0 var(--am-space-2);
  color:var(--am-text-primary);
}
.am-preview-card__text {
  margin:0;
  color:var(--am-text-secondary);
  line-height:1.6;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amCore/css/amCore.shell.css */


/* amCore.shell.css — DEPRECATED
 * This file has been split into component files for file-size compliance.
 * It is no longer loaded. See amCore_helpers.php for the active file list.
 *
 * Replacement files:
 *   amCore.shell.chrome.css
 *   amCore.shell.layout.css
 *   amCore.shell.devsuite.css
 */


/* modules/amCore/css/amCore.shell.chrome.css */


/* amCore.shell.chrome.css - split from amCore.shell.css for file-size compliance */
/* amCore.shell.css â€” platform shell / app chrome (load after tools). */
/* =============================================================================
   Platform shell + app chrome â€” generic Arcitech-wide selectors only
   (merged from former amCore_dev_suite.css)
   ============================================================================= */
/**
 * Platform app shell â€” palette:black,white,light gray,light blue (P1).
 * Scoped under .am-app-shell / .am-chrome.
 * Sidebar:default right; optional left dock; collapse rail + localStorage.
 *
 * Module CSS composition (amDev* tool pages):
 * - Prefer these tokens over raw hex:var(--am-app-chrome-bg),var(--am-app-chrome-surface),var(--am-app-chrome-border),
 *   var(--am-app-chrome-text),var(--am-app-chrome-muted),var(--am-app-chrome-accent),var(--am-app-chrome-accent-text).
 * - Register page-scoped CSS via the same pattern as amDevCore_enqueue_page_css() so ACP is not flooded.
 * - Reuse .am-app-shell layout classes before adding new grid rules in per-module *.css files.
 */

/* Jamroom ACP:jrCore_page_custom() wraps output in <td class="page_custom">; jrCore.css sets max-width:1024px
   which squeezes the suite shell and can make the layout look wrong. Full-bleed when shell is present. */
td.page_custom:has(.am-app-shell),
td.page_custom:has(.am-page-layout) {
  max-width:none !important; /* override modules/jrCore/css/jrCore.css .page_custom */
  width:100%;
  text-align:left;
  vertical-align:top;
  box-sizing:border-box;
}

/*
 * Skin footers (e.g. jrElastic2 footer.css) often use position:absolute; bottom:0.
 * Short ACP/module pages then leave the footer visually â€œfloatingâ€ mid-viewport.
 * jrElastic2 fixes body:has(#admin_container); we mirror that for any page that
 * renders the platform shell so it works across skins.
 */
body:has(.am-app-shell) {
  min-height:100vh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
}

body:has(.am-app-shell) #wrapper {
  flex:1 1 auto;
  width:100%;
  min-height:0;
  position:relative;
  /* Skin wrappers often reserve ~120px for an absolute footer; less needed when footer is in-flow */
  padding-bottom:32px;
}

body:has(.am-app-shell) #footer {
  position:static !important;
  bottom:auto !important;
  flex-shrink:0;
  width:100%;
}

.am-app-shell,
.am-chrome {
  --am-app-chrome-bg:var(--am-shell-bg-surface);
  --am-app-chrome-surface:var(--am-shell-bg-muted);
  --am-app-chrome-border:var(--am-shell-border);
  --am-app-chrome-text:var(--am-shell-text);
  --am-app-chrome-muted:var(--am-shell-text-muted);
  --am-app-chrome-accent:var(--am-primary);
  --am-app-chrome-accent-text:var(--am-primary-hover);
  --am-app-chrome-accent-soft:var(--am-primary-light);
  --am-app-chrome-shadow-dropdown:var(--am-shell-shadow-menu);
  --am-app-chrome-radius:10px;
  --am-app-chrome-radius-sm:var(--am-radius-sm);
  --am-app-chrome-font:var(--am-font-sans);
  --am-app-chrome-transition:var(--am-trans-base);
  --am-app-chrome-sidebar-width:240px;
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  font-family:var(--am-app-chrome-font);
}

.am-app-shell {
  display:flex;
  flex-direction:column;
  /* Fill the viewport so site chrome + Jamroom footer sit at the bottom when content is short */
  min-height:100vh;
  min-height:100dvh;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

.am-app-shell__header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.5rem;
  padding:0.15rem 0;
  border-bottom:1px solid var(--am-app-chrome-border);
  flex-wrap:wrap;
}

.am-app-shell__header-primary {
  flex:1 1 200px;
  min-width:0;
}

.am-app-shell__header-actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.5rem 0.75rem;
  justify-content:flex-end;
}

/* Header help (info) â€” top-right; panel is NOT inside overflow:auto main */
.am-app-shell__header-help {
  position:relative;
  flex-shrink:0;
}

.am-app-shell__header-help-btn-inner {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:3px;
}

.am-app-shell__header-help-chevron {
  flex-shrink:0;
  opacity:0.72;
  transition:transform var(--am-app-chrome-transition),opacity var(--am-app-chrome-transition);
}

.am-app-shell__header-help-btn.is-open .am-app-shell__header-help-chevron {
  transform:rotate(180deg);
  opacity:1;
}

.am-app-shell__header-help-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:2.35rem;
  height:2.25rem;
  padding:0 0.4rem;
  border:1px solid var(--am-app-chrome-border);
  border-radius:var(--am-app-chrome-radius-sm);
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  cursor:pointer;
  box-sizing:border-box;
  transition:background-color var(--am-app-chrome-transition),color var(--am-app-chrome-transition),border-color var(--am-app-chrome-transition);
}

.am-app-shell__header-help-btn:hover {
  border-color:var(--am-app-chrome-border);
  color:var(--am-app-chrome-accent);
  background-color:var(--am-app-chrome-accent-soft);
}

.am-app-shell__header-help-btn.is-open {
  border-color:var(--am-app-chrome-accent);
  background:var(--am-app-chrome-accent);
  color:#ffffff;
}

.am-app-shell__header-help-panel {
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:var(--am-z-dropdown);
  width:min(20rem,calc(100vw - 1.5rem));
  min-width:220px;
  max-height:min(70vh,26rem);
  overflow-y:auto;
  overflow-x:hidden;
  padding:6px 0;
  border:1px solid var(--am-app-chrome-border);
  border-radius:var(--am-app-chrome-radius);
  background:var(--am-app-chrome-bg);
  box-shadow:var(--am-app-chrome-shadow-dropdown);
  box-sizing:border-box;
  transform-origin:top right;
}

.am-app-shell__header-help-panel:not([hidden]) {
  animation:am-shell-help-dropdown-in 0.2s cubic-bezier(0.2,0.9,0.2,1) forwards;
}

@keyframes am-shell-help-dropdown-in {
  from {
    opacity:0;
    transform:translateY(-6px) scale(0.98);
  }
  to {
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

@media (prefers-reduced-motion:reduce) {
  .am-app-shell__header-help-panel:not([hidden]) {
    animation:none;
  }
  .am-app-shell__header-help-chevron {
    transition:none;
  }
}

/* Flyout pointer â€” same idea as site #nav_menu submenu anchor */
.am-app-shell__header-help-panel::before {
  content:"";
  position:absolute;
  right:18px;
  top:-7px;
  width:0;
  height:0;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-bottom:7px solid var(--am-app-chrome-border);
  pointer-events:none;
}
.am-app-shell__header-help-panel::after {
  content:"";
  position:absolute;
  right:19px;
  top:-5px;
  width:0;
  height:0;
  border-left:6px solid transparent;
  border-right:6px solid transparent;
  border-bottom:6px solid var(--am-app-chrome-bg);
  pointer-events:none;
}

.am-app-shell__header-help-panel-inner {
  min-width:0;
}

.am-app-shell__header-help-title {
  font-size:0.7rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-app-chrome-muted);
  margin:0;
  padding:8px 14px 6px;
  border-bottom:1px solid var(--am-app-chrome-border);
}

.am-app-shell__header-help-links {
  margin:0;
  padding:0;
  list-style:none;
}

.am-app-shell__header-help-links li {
  margin:0;
  border-bottom:1px solid var(--am-app-chrome-border);
}

.am-app-shell__header-help-links li:last-child {
  border-bottom:none;
}

.am-app-shell__header-help-links li.am-app-shell__header-help-sep {
  list-style:none;
  height:0;
  margin:6px 12px;
  padding:0;
  border:0;
  border-top:1px solid var(--am-app-chrome-border);
  border-bottom:none;
  pointer-events:none;
}

.am-app-shell__header-help-docpath {
  opacity:0.78;
  font-weight:500;
  font-size:0.92em;
  margin-right:0.2rem;
  color:var(--am-app-chrome-muted);
}

.am-app-shell__header-help-link {
  display:flex;
  align-items:center;
  min-height:2.75rem;
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  color:var(--am-shell-text-secondary);
  text-decoration:none !important;
  padding:10px 14px;
  text-transform:none;
  border-radius:0;
  box-sizing:border-box;
  transition:background-color var(--am-app-chrome-transition),color var(--am-app-chrome-transition);
}

.am-app-shell__header-help-link--primary {
  font-weight:600;
  color:var(--am-app-chrome-text);
}

.am-app-shell__header-help-link:hover {
  background:var(--am-app-chrome-surface);
  color:var(--am-app-chrome-accent);
  text-decoration:none !important;
}

.am-app-shell__header-help-link:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:-2px;
  z-index:1;
  position:relative;
}

.am-app-shell__header-help-links li:last-child > .am-app-shell__header-help-link:hover {
  border-radius:0 0 var(--am-app-chrome-radius-sm) var(--am-app-chrome-radius-sm);
}

.am-app-shell__layout-controls {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:0.25rem;
  padding:0.15rem 0.35rem;
  border:1px solid var(--am-app-chrome-border);
  border-radius:6px;
  background:var(--am-app-chrome-surface);
}

.am-app-shell__layout-controls--icons {
  flex-wrap:nowrap;
  gap:0.15rem;
  padding:0;
  border:none;
  background:transparent;
}

.am-app-shell__layout-label {
  font-size:0.7rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-app-chrome-muted);
  margin-right:0.15rem;
}

.am-app-shell__layout-btn {
  border:1px solid transparent;
  background:transparent;
  color:var(--am-app-chrome-text);
  padding:0.2rem 0.45rem;
  border-radius:4px;
  font-size:0.78rem;
  cursor:pointer;
}

.am-app-shell__layout-btn:hover {
  border-color:var(--am-app-chrome-border);
  background:var(--am-app-chrome-bg);
}

.am-app-shell__layout-btn[aria-pressed="true"] {
  background:var(--am-app-chrome-accent);
  color:var(--am-app-chrome-accent-text);
  border-color:var(--am-app-chrome-accent);
}

.am-app-shell__layout-btn:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}

.am-app-shell__layout-icon-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:1.55rem;
  height:1.55rem;
  padding:0;
  border:1px solid var(--am-app-chrome-border);
  border-radius:4px;
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  cursor:pointer;
  box-sizing:border-box;
}

.am-app-shell__layout-icon-btn:hover {
  border-color:var(--am-app-chrome-accent);
  background:var(--am-app-chrome-surface);
}

.am-app-shell__layout-icon-btn[aria-pressed="true"] {
  background:var(--am-app-chrome-accent);
  color:var(--am-app-chrome-accent-text);
  border-color:var(--am-app-chrome-accent);
}

.am-app-shell__layout-icon-btn:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}

.am-app-shell__layout-icon {
  display:block;
  pointer-events:none;
}

.am-app-shell__sidebar-header-tools {
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:0.35rem;
  flex-shrink:0;
  margin-left:auto;
}

.am-app-shell__rail-icon {
  display:block;
  pointer-events:none;
}

.am-app-shell--sidebar-right .am-app-shell__sidebar-toggle {
  transform:none;
}

.am-app-shell__title {
  margin:0;
  font-size:0.95rem;
  font-weight:600;
  line-height:1.25;
}

.am-app-shell__meta {
  margin:0.1rem 0 0;
  font-size:0.72rem;
  line-height:1.35;
  color:var(--am-app-chrome-muted);
}

.am-app-shell__tabs {
  display:flex;
  flex-wrap:wrap;
  gap:0.2rem;
  padding:0.3rem 0;
  border-bottom:1px solid var(--am-app-chrome-border);
}

.am-app-shell__tab {
  border:1px solid transparent;
  background:var(--am-app-chrome-surface);
  color:var(--am-app-chrome-text);
  padding:0.28rem 0.5rem;
  border-radius:4px;
  cursor:pointer;
  font-size:0.78rem;
}

.am-app-shell__tab:hover {
  border-color:var(--am-app-chrome-border);
}

.am-app-shell__tab[aria-selected="true"] {
  background:var(--am-app-chrome-accent);
  color:var(--am-app-chrome-accent-text);
  border-color:var(--am-app-chrome-accent);
}

.am-app-shell__tab:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}

.am-app-shell__mobile-menu-btn {
  display:none;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  border:1px solid var(--am-app-chrome-border);
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  border-radius:4px;
  padding:0.28rem 0.5rem;
  cursor:pointer;
  font-size:0.78rem;
}

.am-app-shell__mobile-menu-btn:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}


/* === SAFE-AREA INSETS (notch / island / home bar) ========================= */
/* Apply safe-area tokens to shell chrome so content is not obscured.
   Tokens are defined in amCore.tokens.css using env(safe-area-inset-*). */

.am-app-shell,
.am-chrome {
  padding-top:   var(--am-safe-area-top);
  padding-bottom:var(--am-safe-area-bottom);
  padding-left:  var(--am-safe-area-left);
  padding-right: var(--am-safe-area-right);
}

/* Bottom nav bar in standalone PWA mode */
.am-app-shell__bottom-bar {
  padding-bottom:max(var(--am-safe-area-bottom),var(--am-space-2));
}

/* Fixed/sticky headers need top inset */
.am-app-shell__header,
.am-chrome__header {
  padding-top:max(var(--am-safe-area-top),var(--am-space-3));
}


/* modules/amCore/css/amCore.shell.layout.css */


/* amCore.shell.layout.css - split from amCore.shell.css for file-size compliance */
/* Grid:main + sidebar â€” visual order via template-areas */
.am-app-shell__grid {
  display:grid;
  flex:1 1 auto;
  align-items:stretch;
  min-height:0;
  gap:0;
}

/* Default:sidebar on the RIGHT */
.am-app-shell--sidebar-right .am-app-shell__grid {
  grid-template-columns:minmax(0,1fr) var(--am-app-chrome-sidebar-width);
  grid-template-areas:"main sidebar";
}

.am-app-shell--sidebar-left .am-app-shell__grid {
  grid-template-columns:var(--am-app-chrome-sidebar-width) minmax(0,1fr);
  grid-template-areas:"sidebar main";
}

.am-app-shell__main {
  grid-area:main;
  /* Tight top inset under chrome header; horizontal padding for ACP + tool pages. */
  padding:var(--am-space-1) var(--am-space-4) var(--am-space-2);
  min-width:0;
  overflow:auto;
}

.am-app-shell--sidebar-right .am-app-shell__main,
.am-app-shell--sidebar-left .am-app-shell__main {
  padding:var(--am-space-1) var(--am-space-4) var(--am-space-2);
}

.am-app-shell__panel--tool {
  padding:0;
}

/* Collapsed desktop rail */
.am-app-shell--sidebar-right.am-app-shell--sidebar-collapsed .am-app-shell__grid {
  grid-template-columns:minmax(0,1fr) 48px;
}

.am-app-shell--sidebar-left.am-app-shell--sidebar-collapsed .am-app-shell__grid {
  grid-template-columns:48px minmax(0,1fr);
}

.am-app-shell__sidebar-column {
  grid-area:sidebar;
  display:flex;
  flex-direction:row;
  align-items:stretch;
  min-width:0;
  max-width:var(--am-app-chrome-sidebar-width);
  width:var(--am-app-chrome-sidebar-width);
  transition:width 0.2s ease,max-width 0.2s ease;
  box-sizing:border-box;
}

.am-app-shell--sidebar-right .am-app-shell__sidebar-column {
  border-left:1px solid var(--am-app-chrome-border);
  border-right:none;
}

.am-app-shell--sidebar-left .am-app-shell__sidebar-column {
  border-right:1px solid var(--am-app-chrome-border);
  border-left:none;
}

.am-app-shell--sidebar-collapsed .am-app-shell__sidebar-column {
  width:48px;
  max-width:48px;
}

.am-app-shell__sidebar-rail {
  flex:0 0 0;
  width:0;
  max-width:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  padding-top:0.35rem;
  background:var(--am-app-chrome-surface);
  box-sizing:border-box;
  transition:flex-basis 0.2s ease,max-width 0.2s ease,width 0.2s ease;
}

.am-app-shell--sidebar-collapsed .am-app-shell__sidebar-rail {
  flex:0 0 48px;
  width:48px;
  max-width:48px;
  overflow:visible;
  border-right:1px solid var(--am-app-chrome-border);
}

.am-app-shell--sidebar-right.am-app-shell--sidebar-collapsed .am-app-shell__sidebar-rail {
  border-right:none;
  border-left:1px solid var(--am-app-chrome-border);
}

/* Expanded:aside sits next to main; collapsed:rail sits next to main (DOM is rail,aside). */
.am-app-shell--sidebar-right .am-app-shell__sidebar-column {
  flex-direction:row-reverse;
}

.am-app-shell--sidebar-right.am-app-shell--sidebar-collapsed .am-app-shell__sidebar-column {
  flex-direction:row;
}

.am-app-shell:not(.am-app-shell--sidebar-collapsed) .am-app-shell__sidebar-rail {
  flex:0 0 0 !important;
  width:0 !important;
  max-width:0 !important;
  padding:0;
  border:none;
  overflow:hidden;
  pointer-events:none;
}

.am-app-shell__sidebar-expand {
  display:flex;
  align-items:center;
  justify-content:center;
  width:2.25rem;
  height:2.25rem;
  margin:0.25rem 0;
  padding:0;
  border:1px solid var(--am-app-chrome-border);
  border-radius:4px;
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
}

.am-app-shell__sidebar-expand:focus-visible {
  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}

.am-app-shell:not(.am-app-shell--sidebar-collapsed) .am-app-shell__sidebar-expand {
  visibility:hidden;
}

/* Right-docked:flip expand chevron */
.am-app-shell--sidebar-right.am-app-shell--sidebar-collapsed .am-app-shell__sidebar-expand {
  transform:scaleX(-1);
}

.am-app-shell__sidebar {
  flex:1 1 auto;
  min-width:0;
  background:var(--am-app-chrome-surface);
  display:flex;
  flex-direction:column;
  overflow:hidden;
}

.am-app-shell--sidebar-collapsed .am-app-shell__sidebar {
  display:none;
}

.am-app-shell__sidebar-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.5rem;
  padding:0.45rem 0.65rem;
  border-bottom:1px solid var(--am-app-chrome-border);
  background:var(--am-app-chrome-bg);
  flex-shrink:0;
}

.am-app-shell__sidebar-header-label {
  font-size:0.75rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-app-chrome-muted);
  min-width:0;
  flex:1 1 auto;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.am-app-shell__sidebar-inner {
  flex:1 1 auto;
  padding:0.5rem 0.55rem;
  overflow:auto;
  box-sizing:border-box;
}

.am-app-shell__sidebar-toggle {
  flex-shrink:0;
  border:1px solid var(--am-app-chrome-border);
  background:var(--am-app-chrome-bg);
  color:var(--am-app-chrome-text);
  border-radius:4px;
  padding:0.25rem 0.5rem;
  cursor:pointer;
  font-size:1.1rem;
  line-height:1;
  min-width:2rem;
  min-height:2rem;
}

  outline:2px solid var(--am-app-chrome-accent);
  outline-offset:2px;
}

.am-app-shell__section-title {
  font-size:0.65rem;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--am-app-chrome-muted);
  margin:0.5rem 0 0.25rem;
}

.am-app-shell__section-title:first-child {
  margin-top:0;
}

.am-app-shell__linklist {
  list-style:none;
  margin:0;
  padding:0;
}

/* Sidebar nav:same rhythm as site main menu (padded row + soft hover plate) */
.am-app-shell__sidebar .am-app-shell__linklist li {
  margin:0;
  padding:0;
}

.am-app-shell__sidebar .am-app-shell__linklist a {
  display:block;
  color:var(--am-shell-text-secondary);
  text-decoration:none !important;
  font-size:14px;
  font-weight:500;
  line-height:1.35;
  padding:10px 12px;
  border-radius:var(--am-app-chrome-radius-sm);
  transition:background-color var(--am-app-chrome-transition),color var(--am-app-chrome-transition);
}

.am-app-shell__sidebar .am-app-shell__linklist a:hover {
  color:var(--am-app-chrome-accent);
  background-color:var(--am-app-chrome-accent-soft);
  text-decoration:none !important;
}

.am-app-shell__panel[hidden] {
  display:none !important;
}

/* Developer tool shell â€” denser page chrome (cards,grids,list view,module wrapper) */
.am-app-shell .am-module {
  max-width:1200px;
  padding:var(--am-space-3);
  font-size:var(--am-font-sm);
}
.am-app-shell .am-page-header {
  margin-bottom:var(--am-space-3);
}
.am-app-shell .am-page-header__title {
  font-size:var(--am-font-lg);
  line-height:1.25;
}
.am-app-shell .am-page-header__subtitle {
  font-size:var(--am-font-xs);
  margin-top:2px;
}
.am-app-shell .am-grid {
  gap:var(--am-space-2);
}
.am-app-shell .am-grid--auto {
  grid-template-columns:repeat(auto-fill,minmax(152px,1fr));
}
.am-app-shell .am-grid--auto-sm {
  grid-template-columns:repeat(auto-fill,minmax(132px,1fr));
}
.am-app-shell .am-card {
  border-radius:var(--am-radius-md);
  box-shadow:var(--am-shadow-xs);
}
.am-app-shell .am-card__media {
  aspect-ratio:16/10;
}
.am-app-shell .am-card__body {
  padding:var(--am-space-3);
  gap:var(--am-space-2);
}
.am-app-shell .am-card__title {
  font-size:var(--am-font-base);
  line-height:1.3;
}
.am-app-shell .am-card__description {
  font-size:var(--am-font-xs);
  line-height:1.45;
}
.am-app-shell .am-card__footer {
  padding:var(--am-space-2) var(--am-space-3);
  gap:var(--am-space-2);
}
.am-app-shell .am-list-view .am-card__media {
  width:88px;
}
.am-app-shell .am-list-view .am-card__body {
  padding:var(--am-space-2) var(--am-space-3);
}
.am-app-shell .am-module-card {
  padding:var(--am-space-3);
  gap:var(--am-space-2);
  border-radius:var(--am-radius-md);
}
.am-app-shell .am-module-card__icon {
  width:32px;
  height:32px;
}
.am-app-shell .am-module-card__icon img,
.am-app-shell .am-module-card__icon svg {
  width:18px;
  height:18px;
}
.am-app-shell .am-btn {
  height:30px;
  min-height:var(--am-touch-min); /* WCAG 2.2 SC 2.5.5 — raise effective touch target */
  padding:var(--am-space-1) var(--am-space-3);
  font-size:var(--am-font-xs);
  border-radius:var(--am-radius-sm);
  gap:var(--am-space-1);
}
.am-app-shell .am-chip {
  font-size:10px;
  padding:1px 6px;
}
.am-app-shell .am-section-title {
  font-size:var(--am-font-base);
  margin:0 0 var(--am-space-2);
  padding-bottom:var(--am-space-2);
}
.am-app-shell .am-tool-launch .title {
  padding:0.5rem 0.75rem 0.35rem;
}
.am-app-shell .am-tool-launch .title h1 {
  font-size:0.95rem;
}
.am-app-shell .am-tool-launch .block_content {
  padding:0.65rem 0.75rem 0.85rem;
  font-size:0.8125rem;
}
.am-app-shell .am-view-toggle__btn {
  width:44px;
  height:44px;
}
.am-app-shell .am-view-toggle__btn svg {
  width:14px;
  height:14px;
}

/* App shell mobile responsive rules extracted to amCore.responsive.css.
 * Includes:@media (max-width:900px) drawer behaviour and prefers-reduced-motion. */



/* modules/amCore/css/amCore.pages.css */


/* amCore.pages.css — template-specific and page layouts.
 *
 * Split into three sub-files to stay within the 2000-line per-file limit.
 * amCore_enqueue_design_system_css() loads each sub-file individually.
 *
 * Sub-files:
 *   amCore.pages.content.css    — docs hub,doc reader,browse,installer,mobile lab,site preview,tool layouts
 *   amCore.pages.devsuite.css   — developer suite hub,module cards,toolbar,panels,favorites,carousel,table views
 *   amCore.pages.marketplace.css — registry view,guide accordion,hero,search,cards,workspace tiles,marketplace
 */
@import url("amCore.pages.content.css");
@import url("amCore.pages.devsuite.css");
@import url("amCore.pages.marketplace.css");


/* modules/amCore/css/amCore.pages.content.css */


/* amCore.pages.content.css — documentation hub,doc reader,browse wrappers,installer,mobile lab,site preview,tool layouts. */
/* amCore.pages.css â€” template-specific and page layouts (load after shell). */
/* --- documentation_hub.tpl (no inline styles; aligns with app chrome tokens) --- */
.am-docs-layout {
    display:grid;
    grid-template-columns:minmax(200px,28%) 1fr;
    gap:1rem;
    margin-top:1rem;
}

.am-docs-nav {
    border:1px solid #d8dee6;
    border-radius:4px;
    max-height:70vh;
    overflow:auto;
    padding:0.5rem;
}

.am-docs-filter-row {
    margin-bottom:0.5rem;
}

.am-docs-filter-label {
    display:block;
    font-size:0.8rem;
    margin-bottom:0.25rem;
    color:#57606a;
}

.am-docs-filter-input {
    width:100%;
    box-sizing:border-box;
    padding:0.35rem 0.5rem;
    font-size:0.85rem;
    border:1px solid #d8dee6;
    border-radius:4px;
}

.am-docs-count {
    margin:0.35rem 0 0.5rem;
}

.am-docs-manifest-data {
    position:absolute;
    left:-9999px;
    width:1px;
    height:1px;
    overflow:hidden;
}

.am-docs-nav ul {
    list-style:none;
    margin:0;
    padding:0;
}

.am-docs-nav li {
    margin:0.15rem 0;
}

.am-docs-section {
    border:1px solid #d8dee6;
    border-radius:4px;
    padding:0.75rem;
    min-height:200px;
}

.am-docs-pre {
    white-space:pre-wrap;
    word-break:break-word;
    font-size:0.85rem;
    margin:0;
}

.am-docs-article {
    font-size:0.9rem;
    line-height:1.55;
    max-width:65ch;
    word-wrap:break-word;
}

.am-docs-article strong {
    font-weight:600;
}

.am-docs-article code {
    font-family:ui-monospace,Consolas,"Courier New",monospace;
    font-size:0.88em;
    background:#f4f6f8;
    padding:0.1em 0.35em;
    border-radius:3px;
    border:1px solid #d8dee6;
}

/* --- In-module doc reader (static markdown / plain text sections; any am* module) --- */
.am-docs-reader {
    max-width:100%;
    box-sizing:border-box;
    --am-docs-reader-border:var(--am-border-default,#d8dee6);
    --am-docs-reader-muted:var(--am-text-secondary,#57606a);
    --am-docs-reader-text:var(--am-text-primary,#1e293b);
    --am-docs-reader-surface:var(--am-bg-elevated,#f4f6f8);
    --am-docs-reader-accent:var(--am-primary,#0b3d5c);
}

.am-docs-reader__header {
    margin-bottom:1.25rem;
    padding-bottom:1rem;
    border-bottom:1px solid var(--am-docs-reader-border);
}

.am-docs-reader__title {
    margin:0 0 0.5rem;
    font-size:1.35rem;
    font-weight:700;
    color:var(--am-docs-reader-text);
}

.am-docs-reader__lede {
    margin:0 0 0.75rem;
    font-size:0.95rem;
    line-height:1.55;
    color:var(--am-docs-reader-muted);
    max-width:42rem;
}

.am-docs-reader__external {
    margin:0;
}

.am-docs-reader__extlink {
    font-size:0.875rem;
    font-weight:600;
    color:var(--am-docs-reader-accent);
    text-decoration:none;
}

.am-docs-reader__extlink:hover {
    text-decoration:underline;
}

.am-docs-reader__nav {
    display:flex;
    flex-wrap:wrap;
    gap:0.5rem;
    margin-bottom:1.25rem;
}

.am-docs-reader__pill {
    display:inline-block;
    padding:0.4rem 0.85rem;
    border-radius:999px;
    font-size:0.8125rem;
    font-weight:600;
    text-decoration:none;
    color:var(--am-docs-reader-text);
    background:var(--am-docs-reader-surface);
    border:1px solid var(--am-docs-reader-border);
    transition:border-color 0.15s ease,background 0.15s ease;
}

.am-docs-reader__pill:hover {
    border-color:var(--am-docs-reader-accent);
}

.am-docs-reader__pill--active {
    background:var(--am-docs-reader-accent);
    border-color:var(--am-docs-reader-accent);
    color:#fff;
}

.am-docs-reader__main {
    margin-bottom:1.5rem;
}

.am-docs-reader__article {
    border:1px solid var(--am-docs-reader-border);
    border-radius:10px;
    background:var(--am-bg-base,#fff);
    overflow:hidden;
}

.am-docs-reader__article-head {
    padding:1rem 1.25rem;
    background:var(--am-docs-reader-surface);
    border-bottom:1px solid var(--am-docs-reader-border);
}

.am-docs-reader__h3 {
    margin:0 0 0.35rem;
    font-size:1.1rem;
    color:var(--am-docs-reader-text);
}

.am-docs-reader__source {
    margin:0;
    font-size:0.8rem;
    color:var(--am-docs-reader-muted);
}

.am-docs-reader__body {
    max-height:min(70vh,42rem);
    overflow:auto;
}

.am-docs-reader__pre {
    margin:0;
    padding:1rem 1.25rem;
    font-size:0.8125rem;
    line-height:1.45;
    white-space:pre-wrap;
    word-break:break-word;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    color:var(--am-docs-reader-text);
    background:var(--am-bg-base,#fff);
}

.am-docs-reader__empty {
    margin:1rem 1.25rem;
    color:var(--am-docs-reader-muted);
    font-size:0.9rem;
}

.am-docs-reader__footer {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:1rem;
    padding-top:1rem;
    border-top:1px solid var(--am-docs-reader-border);
    font-size:0.875rem;
}

.am-docs-reader__back {
    font-weight:600;
    color:var(--am-docs-reader-accent);
    text-decoration:none;
}

.am-docs-reader__back:hover {
    text-decoration:underline;
}

.am-docs-reader__meta {
    color:var(--am-docs-reader-muted);
}

/* --- jrCore_list wrappers (search / grid views; any am* module) --- */
.am-browse-region {
    max-width:100%;
    box-sizing:border-box;
}

.am-browse-region__inner {
    margin-top:var(--am-space-3,0.75rem);
}

.am-browse-region__lead {
    margin-bottom:var(--am-space-3,0.75rem);
}

/* Simple stacked title rows (list browse templates) */
.am-item-rows {
    margin:var(--am-space-3,0.75rem) 0;
}

.am-item-rows > .item_row {
    padding:var(--am-space-3,0.75rem) 0;
    border-bottom:1px solid var(--am-border-subtle,#e2e8f0);
}

.am-item-rows > .item_row:last-child {
    border-bottom:none;
}

/* --- installer.tpl --- */
.am-installer-last-batch {
    margin:1rem 0;
    padding:0.75rem 1rem;
}

.am-installer-last-batch-title {
    font-size:1.05rem;
    margin:0 0 0.5rem;
}

.am-installer-last-batch-p {
    margin:0.25rem 0;
}

.am-installer-last-batch-list {
    margin:0.5rem 0 0 1.1rem;
    padding:0;
}

.am-installer-actions {
    margin:0.75rem 0;
}

.am-installer-actions .am-installer-btn-secondary {
    margin-left:0.5rem;
}

.am-installer-table {
    width:100%;
    border-collapse:collapse;
    margin-top:0.5rem;
}

.am-installer-table th {
    text-align:left;
    border-bottom:1px solid #ccc;
}

.am-installer-table th.am-installer-th-check {
    width:2rem;
}

.am-installer-table td {
    padding:0.35rem 0;
}

.am-installer-mod-meta {
    font-size:0.85rem;
    color:#5c6570;
}

/* --- mobile_lab.tpl --- */
.am-mobile-intro {
    margin-bottom:1rem;
}

.am-mobile-viewport-panel {
    margin-bottom:1.5rem;
    padding:0.75rem;
    background:#f4f6f8;
    border:1px solid #d8dee6;
    border-radius:4px;
}

.am-mobile-viewport-title {
    margin:0 0 0.5rem;
    font-size:1rem;
}

.am-mobile-viewport-panel ul {
    margin:0;
    padding-left:1.25rem;
}

.am-mobile-route-p {
    margin:0.5rem 0;
}

.am-mobile-route-h3 {
    font-size:0.85rem;
    margin:0.75rem 0 0.25rem;
}

.am-mobile-route-ul {
    margin:0;
    padding-left:0;
}

.am-mobile-route-code {
    font-size:0.75rem;
}

/* --- site_preview.tpl --- */
.am-site-preview-form {
    margin:1rem 0;
    padding:0.75rem;
    border:1px solid #d8dee6;
    background:#f4f6f8;
    border-radius:4px;
}

.am-site-preview-label-inline {
    margin-left:1rem;
}

.am-site-preview-btn-inline {
    margin-left:0.5rem;
}

.am-site-preview-viewport-outer {
    margin-top:1rem;
    overflow:auto;
    border:1px solid #d8dee6;
    background:#fff;
    padding:0.5rem;
}

.am-site-preview-viewport-inner {
    width:var(--am-app-chrome-preview-width,100%);
    max-width:100%;
    margin:0 auto;
    box-shadow:0 4px 24px rgba(0,0,0,0.08);
}

.am-site-preview-iframe {
    width:100%;
    height:var(--am-app-chrome-preview-height,600px);
    border:0;
}

.am-site-preview-note {
    font-size:0.85rem;
    color:#5c6570;
    margin-top:0.75rem;
}

/* Standalone tool layout:page_header + am-app-shell__grid + page_sidebar (shell column = rail,header,dock icons).
   Root carries .am-app-shell so amCore.initShell() applies collapse/dock + same CSS as platform_app_shell. */
.am-page-layout {
    max-width:1320px;
    margin:0 auto;
    padding:12px 16px 32px;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
    color:#1e293b;
    font-size:13px;
}
/* Page + shell on same root:full viewport width like platform_app_shell (no 1320px cap or side margin). */
.am-page-layout.am-app-shell {
    max-width:none;
    width:100%;
    margin:0;
    padding:0;
    box-sizing:border-box;
}
.am-page-layout .am-page-header {
    margin-bottom:var(--am-space-4,1.25rem);
}
.am-page-layout.am-app-shell > .am-page-header {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    justify-content:space-between;
    gap:var(--am-space-4);
    flex-wrap:wrap;
    padding:var(--am-space-2) var(--am-space-4) 0;
    margin-bottom:var(--am-space-3);
    box-sizing:border-box;
}
.am-page-layout.am-app-shell > .am-page-header .am-page-header__primary {
    flex:1;
    min-width:0;
}
/* Match Developer Suite shell density (see .am-app-shell .am-page-header / .am-module / .am-card) */
.am-page-layout .am-page-header__title {
    font-size:var(--am-font-lg);
    line-height:1.25;
}
.am-page-layout .am-page-header__subtitle {
    font-size:var(--am-font-xs);
    margin-top:2px;
}
.am-page-layout .am-page-header__meta {
    font-size:var(--am-font-xs);
    color:var(--am-text-secondary,#64748b);
    margin:4px 0 0;
}
.am-page-layout .am-module {
    max-width:1200px;
    margin-left:0;
    margin-right:0;
    padding:var(--am-space-3);
    font-size:var(--am-font-sm);
}
.am-page-layout .am-grid {
    gap:var(--am-space-2);
}
.am-page-layout .am-card {
    border-radius:var(--am-radius-md);
    box-shadow:var(--am-shadow-xs);
}

/* Tool pages (.am-page) â€” amDevSuite + tools; see .am-page--dashboard */
.am-page {
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
    max-width:1200px;
    margin:0 auto;
    padding:0 12px 20px;
    color:#1e293b;
    font-size:13px;
}

/* --- Suite dashboard:tabs,am-value-* top grid --- */
.am-page.am-page--dashboard {
    max-width:1280px;
    /* Prevent wide carousels / flex children from opening a horizontal scrollbar on the page */
    overflow-x:clip;
}

.am-page.am-page--dashboard .am-value-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(156px,1fr));
    gap:8px;
    margin-bottom:12px;
}
.am-page.am-page--dashboard .am-value-card {
    padding:9px 10px 8px;
    border-radius:8px;
    background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
    border:1px solid #e2e8f0;
    box-shadow:0 1px 6px rgba(15,23,42,0.04);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:6px;
    overflow:hidden;
}
.am-page.am-page--dashboard .am-value-card__head {
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:10px;
    min-width:0;
}
.am-page.am-page--dashboard .am-value-card__icon {
    flex:0 0 20px;
    width:20px;
}
.am-page.am-page--dashboard .am-value-card__icon img {
    display:block;
    width:20px;
    height:20px;
    object-fit:contain;
}
.am-page.am-page--dashboard .am-value-title {
    margin:0;
    flex:1 1 0;
    min-width:0;
    font-size:12px;
    font-weight:800;
    color:#0b3d5c;
    line-height:1.25;
}
.am-page.am-page--dashboard .am-value-body {
    margin:0;
    align-self:stretch;
    width:100%;
    font-size:11px;
    line-height:1.45;
    color:#475569;
}

/* Guide tab:workflow phase titles + bullet lists inside value-style cards */
.am-page.am-page--dashboard .am-value-title--workflow {
    font-size:13px;
    font-weight:700;
    color:var(--am-color-primary,#0b3d5c);
}
.am-page.am-page--dashboard .am-value-body .am-guide-card__list {
    margin:0;
    padding:0 0 0 16px;
    font-size:12px;
    line-height:1.6;
    color:var(--am-text-subtle,#64748b);
    list-style:disc;
}
.am-page.am-page--dashboard .am-value-body .am-guide-card__list li + li {
    margin-top:4px;
}

/* Recommended workflow (guide):flush-left copy + lists */
.am-page.am-page--dashboard .am-page-guide-chapter-workflow .am-value-card {
    align-items:flex-start;
    text-align:left;
}
.am-page.am-page--dashboard .am-page-guide-chapter-workflow .am-value-card__head {
    justify-content:flex-start;
    width:100%;
}
.am-page.am-page--dashboard .am-page-guide-chapter-workflow .am-value-body {
    text-align:left;
}
.am-page.am-page--dashboard .am-page-guide-chapter-workflow .am-value-body .am-guide-card__list {
    padding-left:0;
    padding-inline-start:1.1em;
    margin-left:0;
    text-align:left;
    list-style-position:outside;
}
.am-page.am-page--dashboard .am-page-guide-chapter-workflow .am-page-guide-workflow-grid {
    justify-items:stretch;
    width:100%;
}

.am-page.am-page--dashboard a.am-value-card--link {
    text-decoration:none;
    color:inherit;
    transition:box-shadow 0.15s ease,border-color 0.15s ease;
}
.am-page.am-page--dashboard a.am-value-card--link:hover {
    border-color:#cbd5e1;
    box-shadow:0 4px 12px rgba(15,23,42,0.08);
}
.am-page.am-page--dashboard a.am-value-card--link:focus-visible {
    outline:2px solid #0ea5e9;
    outline-offset:2px;
}


/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amCore/css/amCore.responsive.css */


/* amCore.responsive.css — Centralized responsive / breakpoint rules
 *
 * Load order:LAST — after all other amCore CSS files so responsive overrides
 * take effect on top of base styles.
 *
 * Canonical breakpoint scale (from arcitech-amcore-tokens-only.mdc):
 *   480px  — small mobile landscape / large phone
 *   768px  — tablet portrait
 *   1024px — tablet landscape / small desktop
 *   1280px — desktop
 *
 * MIGRATION STATUS:Phase 2 complete (2026-05-26 standards audit). All non-canonical
 * 640px/900px literals migrated to the allowed set (480/768/1024/1280). See
 * DECISIONS.md G-02 and the 2026-05 STANDARDS_AUDIT report. Visual regression on
 * real devices at the 480–768 band is still recommended before fleet rollout.
 */

/* ===========================================================================
   GRID — column count breakpoints
   Extracted from amCore.layout.css.
   =========================================================================== */

@media (max-width:1024px) { .am-grid { --am-grid-cols:2; } }
@media (max-width:480px)  { .am-grid { --am-grid-cols:1; } }

/* ===========================================================================
   DETAIL LAYOUT — single column on tablet and below
   Extracted from amCore.layout.css.
   =========================================================================== */

@media (max-width:1024px) { .am-detail__layout { grid-template-columns:1fr; } }

/* ===========================================================================
   LIST VIEW CARDS — stacked on mobile
   Extracted from amCore.layout.css and amCore.base.css.
   =========================================================================== */

@media (max-width:480px) {
  .am-list-view .am-card { flex-direction:column; }
  .am-list-view .am-card__media { width:100%; aspect-ratio:16/9; }
}

/* ===========================================================================
   FILTER BAR — status pill inline on wider viewports
   Extracted from amCore.base.css.
   =========================================================================== */

@media (min-width:1024px) {
  .am-filter-bar__status {
    flex-basis:auto;
    margin-left:auto;
    margin-top:0;
    align-self:center;
  }
}

/* ===========================================================================
   MODULE SHELL — padding,form footer,and action row on mobile
   Extracted from amCore.base.css responsive utilities block.
   =========================================================================== */

@media (max-width:480px) {
  .am-module { padding:var(--am-space-4); }
  .am-form-footer { flex-direction:column; }
  .am-form-footer__right { width:100%; }
  .am-form-footer__right .am-btn { flex:1; justify-content:center; }
  .am-detail__actions { flex-wrap:wrap; }
  .am-stat-grid { grid-template-columns:repeat(2,1fr); }
  .am-modal__panel { border-radius:var(--am-radius-md); }
}

/* ===========================================================================
   APP SHELL — mobile navigation (sidebar becomes slide-in drawer)
   Extracted from amCore.shell.layout.css.
   =========================================================================== */

@media (max-width:768px) {
  .am-app-shell__mobile-menu-btn {
    display:inline-flex;
  }

  .am-app-shell__grid {
    display:block;
  }

  .am-app-shell__sidebar-column {
    flex-direction:column !important;
  }

  .am-app-shell__sidebar-rail {
    display:none !important;
  }

  /* Drawer:sidebar-left docks from left edge */
  .am-app-shell--sidebar-left .am-app-shell__sidebar-column {
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    width:min(var(--am-app-chrome-sidebar-width),92vw);
    max-width:min(var(--am-app-chrome-sidebar-width),92vw);
    transform:translateX(-100%);
    transition:transform 0.2s ease;
    z-index:var(--am-z-modal);
    box-shadow:4px 0 24px rgba(0,0,0,0.12);
    border-right:none;
    border-left:none;
    flex-direction:column;
  }

  .am-app-shell--sidebar-left.am-app-shell--drawer-open .am-app-shell__sidebar-column {
    transform:translateX(0);
  }

  /* Drawer:sidebar-right (default) from right edge */
  .am-app-shell--sidebar-right .am-app-shell__sidebar-column {
    position:fixed;
    left:auto;
    right:0;
    top:0;
    bottom:0;
    width:min(var(--am-app-chrome-sidebar-width),92vw);
    max-width:min(var(--am-app-chrome-sidebar-width),92vw);
    transform:translateX(100%);
    transition:transform 0.2s ease;
    z-index:var(--am-z-modal);
    box-shadow:-4px 0 24px rgba(0,0,0,0.12);
    border-right:none;
    border-left:none;
    display:flex !important;
    flex-direction:column;
  }

  .am-app-shell--sidebar-right.am-app-shell--drawer-open .am-app-shell__sidebar-column {
    transform:translateX(0);
  }

  .am-app-shell__sidebar {
    display:flex !important;
    height:100%;
    border-right:none;
  }

  .am-app-shell__main {
    padding:var(--am-space-1) var(--am-space-4) var(--am-space-4);
    width:100%;
  }
}

/* ===========================================================================
   FILTER PILL BAR — see amCore.filter-pill-compact.css (container + viewport)
   =========================================================================== */

/* ===========================================================================
   REDUCED MOTION — single authoritative block
   Extracted from amCore.base.css and amCore.shell.layout.css.
   =========================================================================== */

@media (prefers-reduced-motion:reduce) {
  @view-transition { navigation:none; }
  ::view-transition-old(*),
  ::view-transition-new(*) {
    animation-duration:0.01ms !important;
  }
  .am-app-shell__sidebar-inner {
    transition:none;
  }
}

/* ===========================================================================
   TOUCH-TARGET RESPONSIVE ENFORCEMENT
   Ensure interactive elements meet WCAG 2.2 SC 2.5.5 on small viewports.
   =========================================================================== */

@media (max-width:480px) {
  .am-btn            { min-height:var(--am-touch-min); }
  .am-pagination__item { min-height:var(--am-touch-min); min-width:var(--am-touch-min); }
  .am-tab            { min-height:var(--am-touch-min); }
  .am-profile-sub-tab { min-height:var(--am-touch-min); }
}


/* modules/amEvent/css/amEvent.event.css */


/**
 * amEvent — module-only surfaces (maps,RSVP,grid shell,item detail). Shared list/calendar/browse styles live in amCore.
 */

/* ─────────────────────────────────────────────────────────────────────────────
   ITEM DETAIL — outer wrapper
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail {
    display:block;
}

/* ─────────────────────────────────────────────────────────────────────────────
   HERO IMAGE — full-bleed above the body
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-hero {
    width:100%;
    overflow:hidden;
    border-radius:var(--am-radius-lg) var(--am-radius-lg) 0 0;
    background:var(--am-bg-sunken);
}

.amEvent-detail-hero-img {
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    object-fit:contain;
}

/* ─────────────────────────────────────────────────────────────────────────────
   BODY — two-column grid:main (2fr) + sidebar (1fr)
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-body {
    padding:var(--am-space-6) 0;
}

.amEvent-detail-layout {
    display:grid;
    grid-template-columns:1fr 320px;
    gap:var(--am-space-8);
    align-items:start;
}

@media (max-width:900px) {
    .amEvent-detail-layout {
        grid-template-columns:1fr;
    }
    .amEvent-detail-sidebar {
        order:-1;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   MAIN COLUMN — sections stacked with consistent gap
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-main {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-5);
    min-width:0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PAGE HEADER — title + category badge + breadcrumb + actions
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-header .am-page-header__title {
    font-size:var(--am-font-2xl);
    font-weight:700;
    color:var(--am-text-primary);
    margin:0 0 var(--am-space-2) 0;
    line-height:1.25;
}

.amEvent-detail-category {
    display:inline-flex;
    align-items:center;
    padding:var(--am-space-1) var(--am-space-3);
    border-radius:var(--am-radius-full);
    background:var(--am-primary-light);
    color:var(--am-primary);
    font-size:var(--am-font-sm);
    font-weight:500;
    text-decoration:none;
    margin-bottom:var(--am-space-3);
    transition:background var(--am-trans-fast);
}

.amEvent-detail-category:hover {
    background:var(--am-bg-sunken);
    color:var(--am-text-primary);
}

/* ─────────────────────────────────────────────────────────────────────────────
   META CARD — date / location / series rows with icons
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-meta {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-3);
    padding:var(--am-space-5);
}

.amEvent-detail-meta-row {
    display:flex;
    align-items:center;
    gap:var(--am-space-3);
}

.amEvent-detail-meta-icon {
    flex-shrink:0;
    color:var(--am-text-tertiary);
}

.amEvent-detail-meta-text {
    font-size:var(--am-font-base);
    color:var(--am-text-primary);
    flex:1;
}

.amEvent-detail-meta-rating {
    margin-left:auto;
}

.amEvent-series-link {
    color:var(--am-link-color);
    text-decoration:none;
    font-size:var(--am-font-sm);
}

.amEvent-series-link:hover { text-decoration:underline; }

/* ─────────────────────────────────────────────────────────────────────────────
   PROFILE CARD — avatar + name + follow + like in a row
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-profile-card {
    display:flex;
    align-items:center;
    gap:var(--am-space-4);
    padding:var(--am-space-4) var(--am-space-5);
    flex-wrap:wrap;
}

.amEvent-detail-profile-link {
    display:flex;
    align-items:center;
    gap:var(--am-space-3);
    text-decoration:none;
    color:var(--am-text-primary);
    font-weight:600;
    font-size:var(--am-font-base);
    flex:1;
    min-width:0;
}

.amEvent-detail-profile-link:hover .amEvent-detail-profile-name {
    color:var(--am-primary);
}

.amEvent-detail-avatar {
    width:48px;
    height:48px;
    border-radius:var(--am-radius-full);
    object-fit:cover;
    flex-shrink:0;
    border:2px solid var(--am-border-subtle);
}

.amEvent-detail-profile-name {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    transition:color var(--am-trans-fast);
}

.amEvent-detail-social-actions {
    display:flex;
    align-items:center;
    gap:var(--am-space-3);
    flex-shrink:0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   MAP
───────────────────────────────────────────────────────────────────────────── */
.amEvent-map {
    height:300px;
    width:100%;
    margin-top:var(--am-space-3);
    border-radius:var(--am-radius-md);
    overflow:hidden;
}

/* ─────────────────────────────────────────────────────────────────────────────
   DESCRIPTION
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-description {
    padding:var(--am-space-5);
    font-size:var(--am-font-base);
    color:var(--am-text-primary);
    line-height:1.7;
}

/* ─────────────────────────────────────────────────────────────────────────────
   RSVP
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-rsvp {
    padding:var(--am-space-5);
}

.amEvent-rsvp-heading {
    font-size:var(--am-font-lg);
    font-weight:600;
    color:var(--am-text-primary);
    margin:0 0 var(--am-space-4) 0;
}

.amEvent-rsvp-buttons {
    display:flex;
    gap:var(--am-space-3);
    flex-wrap:wrap;
}

.amEvent-rsvp-counts {
    display:flex;
    gap:var(--am-space-4);
    margin-top:var(--am-space-3);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.amEvent-rsvp-count { display:inline-block; }

/* ─────────────────────────────────────────────────────────────────────────────
   ATTENDEES
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-attendees {
    padding:var(--am-space-5);
}

.amEvent-attendees-heading {
    font-size:var(--am-font-base);
    font-weight:600;
    color:var(--am-text-primary);
    margin:0 0 var(--am-space-3) 0;
}

.amEvent-attendees-list {
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
    line-height:1.8;
}

.amEvent-attendee-link {
    color:var(--am-link-color);
    text-decoration:none;
}

.amEvent-attendee-link:hover { text-decoration:underline; }

/* ─────────────────────────────────────────────────────────────────────────────
   ICAL BUTTON ROW
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-actions-row {
    display:flex;
    gap:var(--am-space-3);
    flex-wrap:wrap;
    align-items:center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   TICKETS
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-tickets {
    padding:var(--am-space-5);
}

.amEvent-tickets-heading {
    font-size:var(--am-font-lg);
    font-weight:600;
    color:var(--am-text-primary);
    margin:0 0 var(--am-space-4) 0;
}

.amEvent-ticket-tier {
    display:flex;
    align-items:center;
    gap:var(--am-space-3);
    flex-wrap:wrap;
    padding:var(--am-space-3) 0;
    border-bottom:1px solid var(--am-border-subtle);
}

.amEvent-ticket-tier:last-child { border-bottom:none; }

.amEvent-ticket-type {
    font-weight:600;
    color:var(--am-text-primary);
}

.amEvent-ticket-price {
    color:var(--am-text-secondary);
    font-size:var(--am-font-sm);
}

.amEvent-ticket-remaining {
    color:var(--am-text-tertiary);
    font-size:var(--am-font-xs);
}

/* ─────────────────────────────────────────────────────────────────────────────
   FEATURES / COMMENTS / TAGS / SHARE
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-features {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-5,20px);
}

/* Normalize legacy .item cards inside features to amCore card style */
.amEvent-detail-features .item {
    background:var(--am-bg-base,#fff);
    border:1px solid var(--am-border,#e8eaed);
    border-radius:var(--am-radius-md,8px);
    border-bottom:1px solid var(--am-border,#e8eaed);
    box-shadow:var(--am-shadow-sm,0 1px 3px rgba(0,0,0,.06));
    margin:0;
    padding:var(--am-space-5,20px);
}

/* Comment form inner grid — preserve avatar/input side-by-side layout */
.amEvent-detail-features .row {
    overflow:hidden;
}

/* Remove legacy centering from feature rows */
.amEvent-detail-features .item_detail_feature,
.amEvent-detail-features #tag_section,
.amEvent-detail-features #comment_section {
    scroll-margin-top:calc(var(--jr-header-height,52px) + 8px);
}

/* Share buttons:inline flex row */
.amEvent-detail-features .item_detail_feature_share,
.amEvent-detail-features .am-share-btn-row {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-3,12px);
    align-items:center;
}

/* Tags heading */
.amEvent-detail-features .item > h3:first-child {
    font-size:var(--am-font-base,14px);
    font-weight:700;
    color:var(--am-text-primary,#1a1d21);
    margin:0 0 var(--am-space-3,12px);
    text-transform:uppercase;
    letter-spacing:0.04em;
}

/* amTags input styling */
.amEvent-detail-features .amTags-input {
    width:auto;
    max-width:260px;
}

/* amComment anchor offsets — keep comment in view under fixed header */
.amEvent-detail-features #comment_form_holder {
    margin-top:0;
}

/* ─────────────────────────────────────────────────────────────────────────────
   SIDEBAR — related events
───────────────────────────────────────────────────────────────────────────── */
.amEvent-detail-sidebar {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-5);
    position:sticky;
    top:var(--am-space-6);
}

.amEvent-related-events {
    padding:var(--am-space-5);
}

.amEvent-related-heading {
    font-size:var(--am-font-base);
    font-weight:700;
    color:var(--am-text-primary);
    margin:0 0 var(--am-space-4) 0;
    text-transform:uppercase;
    letter-spacing:0.05em;
    font-size:var(--am-font-xs);
}

/* ─────────────────────────────────────────────────────────────────────────────
   LEGACY (non-detail) — grid shell,old ical/tickets wrappers
───────────────────────────────────────────────────────────────────────────── */
.amEvent-ical {
    margin-top:var(--am-space-3);
}

.amEvent-tickets {
    margin-top:var(--am-space-4);
}

.amEvent-grid-shell .am-module-card {
    margin-bottom:var(--am-space-4);
}

.amEvent-grid-intro-card {
    padding:var(--am-space-5);
}

.amEvent-grid-lead {
    font-weight:600;
    color:var(--am-text-primary);
}

.amEvent-grid-sort {
    font-weight:400;
    color:var(--am-text-secondary);
}

/* ─────────────────────────────────────────────────────────────────────────────
   BROWSE — profile + site list/grid/calendar shell
───────────────────────────────────────────────────────────────────────────── */
.amEvent-item-index[data-am-browse-view="calendar"],
.amEvent-index[data-am-browse-view="calendar"] {
    --amevent-browse-inset:0;
}

.amEvent-item-index[data-am-browse-view="calendar"] .am-list-browse-host,
.amEvent-index[data-am-browse-view="calendar"] .am-list-browse-host {
    width:100%;
    max-width:none;
    padding:0;
    margin:0;
}

.amEvent-item-index[data-am-browse-view="calendar"] .am-amevent-browse-results,
.amEvent-index[data-am-browse-view="calendar"] .am-amevent-browse-results,
.amEvent-item-index[data-am-browse-view="calendar"] #am-amevent-browse-results,
.amEvent-index[data-am-browse-view="calendar"] #am-amevent-browse-results {
    width:100%;
    max-width:none;
}

.amEvent-item-index[data-am-browse-view="calendar"] .amEvent-calendar-view,
.amEvent-index[data-am-browse-view="calendar"] .amEvent-calendar-view {
    width:100%;
    max-width:none;
}

.amEvent-item-index[data-am-browse-view="calendar"] .am-cal-browse-embed--grid-only,
.amEvent-index[data-am-browse-view="calendar"] .am-cal-browse-embed--grid-only {
    width:100%;
    max-width:none;
}

.amEvent-cal-nav-host {
    display:none;
}

.amEvent-item-index[data-am-browse-view="calendar"] .am-list-browse-host,
.amEvent-index[data-am-browse-view="calendar"] .am-list-browse-host {
    margin-top:var(--am-space-3);
}

/* Month/year are filter pills — only show in calendar view */
.amEvent-item-index:not([data-am-browse-view="calendar"]) .am-filter-pill-trigger[data-am-pill="cal_month"],
.amEvent-item-index:not([data-am-browse-view="calendar"]) .am-filter-pill-trigger[data-am-pill="cal_year"],
.amEvent-index:not([data-am-browse-view="calendar"]) .am-filter-pill-trigger[data-am-pill="cal_month"],
.amEvent-index:not([data-am-browse-view="calendar"]) .am-filter-pill-trigger[data-am-pill="cal_year"] {
    display:none;
}

.amEvent-item-index[data-am-browse-view="calendar"] .am-cal-root--browse,
.amEvent-index[data-am-browse-view="calendar"] .am-cal-root--browse,
.amEvent-item-index[data-am-browse-view="calendar"] .am-cal-browse-embed--grid-only,
.amEvent-index[data-am-browse-view="calendar"] .am-cal-browse-embed--grid-only,
.amEvent-item-index[data-am-browse-view="calendar"] .am-table-wrapper,
.amEvent-index[data-am-browse-view="calendar"] .am-table-wrapper,
.amEvent-item-index[data-am-browse-view="calendar"] table.am-cal-grid,
.amEvent-index[data-am-browse-view="calendar"] table.am-cal-grid {
    width:100%;
    max-width:none;
    box-sizing:border-box;
}



/* modules/amForum/css/forum.css */


/**
 * Community forum module — layouts shared with topic/category views (amCore tokens only).
 *
 * @copyright 2026 The Arcitech
 */

/* ===== FORUM CONTAINER ===== */
.forum-container {
    max-width:var(--am-container-xl);
    margin:0 auto;
    padding:var(--am-space-6);
    box-sizing:border-box;
}

.amforum-layout-main .forum-container {
    width:100%;
    max-width:100%;
}

/* ===== BREADCRUMBS ===== */
.breadcrumbs {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:var(--am-space-2);
    margin-bottom:var(--am-space-6);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.breadcrumbs a {
    color:var(--am-link-color);
    text-decoration:none;
    transition:color var(--am-trans-fast);
}

.breadcrumbs a:hover {
    color:var(--am-link-color-hover);
}

.breadcrumbs .separator {
    color:var(--am-text-tertiary);
}

.breadcrumbs .current {
    color:var(--am-text-primary);
}

/* ===== FORUM HEADER ===== */
.forum-header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:var(--am-space-6);
    margin-bottom:var(--am-space-6);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.forum-header-main {
    flex:1;
    min-width:0;
}

.forum-header h1 {
    margin:0;
    font-size:var(--am-font-3xl);
    font-weight:600;
    color:var(--am-text-primary);
}

.forum-header-tagline {
    margin:var(--am-space-2) 0 0 0;
    font-size:var(--am-font-sm);
    line-height:1.45;
    color:var(--am-text-secondary);
    max-width:var(--am-container-md);
}

.forum-stats {
    display:flex;
    gap:var(--am-space-6);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.forum-stats span {
    display:flex;
    align-items:center;
    gap:var(--am-space-1);
}

/* ===== CATEGORY CARDS ===== */
.forum-categories {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-4);
}

.category-card {
    display:flex;
    align-items:center;
    gap:var(--am-space-6);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
    transition:box-shadow var(--am-trans-base);
}

.category-card:hover {
    box-shadow:var(--am-shadow-md);
}

.category-icon {
    font-size:var(--am-icon-xl);
    color:var(--am-text-primary);
    background:transparent;
}

.category-info {
    flex:1;
}

.category-info h2,
.category-info h3 {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-lg);
    font-weight:600;
}

.category-info h2 a,
.category-info h3 a {
    color:var(--am-text-primary);
    text-decoration:none;
    transition:color var(--am-trans-fast);
}

.category-info h2 a:hover,
.category-info h3 a:hover {
    color:var(--am-primary);
}

.category-description {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.category-meta {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    font-size:var(--am-font-sm);
    color:var(--am-text-tertiary);
}

.category-stats {
    text-align:right;
    min-width:var(--am-space-16);
}

.last-post {
    font-size:var(--am-font-sm);
}

.last-post-info {
    margin-bottom:var(--am-space-1);
}

.last-post-label {
    color:var(--am-text-tertiary);
}

.last-post-user {
    color:var(--am-link-color);
    text-decoration:none;
}

.last-post-user:hover {
    text-decoration:underline;
}

.last-post-time {
    color:var(--am-text-secondary);
}

.no-posts {
    font-size:var(--am-font-sm);
    color:var(--am-text-tertiary);
}

.recent-posts-section .no-posts {
    padding:var(--am-space-8);
    text-align:center;
    background:var(--am-bg-elevated);
    border-radius:var(--am-radius-md);
    border:1px dashed var(--am-border-default);
}

.recent-posts-section .no-posts i {
    font-size:var(--am-font-3xl);
    color:var(--am-text-tertiary);
    display:block;
    margin-bottom:var(--am-space-4);
}

.recent-posts-section .no-posts p {
    margin:0;
    color:var(--am-text-secondary);
    font-size:var(--am-font-base);
}

/* ===== USER ACTIVITY ===== */
.user-forum-profile {
    margin-top:var(--am-space-6);
}

.user-header {
    display:flex;
    gap:var(--am-space-6);
    align-items:flex-start;
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.user-header .user-avatar img,
.user-header .avatar-img {
    width:var(--am-space-16);
    height:var(--am-space-16);
    border-radius:var(--am-radius-full);
    object-fit:cover;
}

.user-info h1 {
    margin:0 0 var(--am-space-4) 0;
    font-size:var(--am-font-2xl);
    color:var(--am-text-primary);
}

.user-stats-summary {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-6);
    align-items:flex-start;
}

.user-stats-summary .stat-item {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-1);
}

.user-stats-summary .stat-value {
    font-size:var(--am-font-xl);
    font-weight:600;
    color:var(--am-text-primary);
}

.user-stats-summary .stat-label {
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
    text-transform:uppercase;
    letter-spacing:0.03em;
}

.recent-posts-section {
    margin-top:var(--am-space-8);
}

.recent-posts-section > h2 {
    margin:0 0 var(--am-space-4) 0;
    font-size:var(--am-font-xl);
    color:var(--am-text-primary);
}

.recent-posts-list {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-4);
}

.post-summary {
    padding:var(--am-space-4);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-md);
    border:1px solid var(--am-border-default);
}

.post-summary .post-title {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-base);
    font-weight:600;
}

.post-summary .post-title a {
    color:var(--am-link-color);
    text-decoration:none;
}

.post-summary .post-title a:hover {
    color:var(--am-link-color-hover);
    text-decoration:underline;
}

.post-summary .post-excerpt {
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
    margin-bottom:var(--am-space-2);
    line-height:1.5;
}

.post-summary .post-meta {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
}

@media (max-width:768px) {
    .user-header {
        flex-direction:column;
        align-items:center;
        text-align:center;
    }

    .user-stats-summary {
        justify-content:center;
    }
}

/* ===== CATEGORY PAGE HEADER ===== */
.category-header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:var(--am-space-6);
    margin-bottom:var(--am-space-6);
}

.category-title h1 {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-3xl);
    font-weight:600;
    color:var(--am-text-primary);
}

.category-header .category-description {
    margin:var(--am-space-2) 0 0 0;
}

.category-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
    align-items:center;
}

/* ===== TOPICS LIST (Cursor-style timeline) ===== */
.topics-list {
    display:flex;
    flex-direction:column;
}

.amforum-topic-timeline {
    border:1px solid var(--am-border-default);
    border-radius:var(--am-radius-lg);
    background:var(--am-bg-base);
    overflow:hidden;
}

.amforum-topic-timeline .topic-row--timeline {
    display:grid;
    grid-template-columns:var(--am-space-10) 1fr;
    gap:var(--am-space-4);
    align-items:start;
    padding:var(--am-space-5) var(--am-space-6);
    margin:0;
    border:none;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    border-bottom:1px solid var(--am-border-subtle);
    transition:background-color var(--am-trans-fast);
}

.amforum-topic-timeline .topic-row--timeline:last-child {
    border-bottom:none;
}

.amforum-topic-timeline .topic-row--timeline:hover {
    background:var(--am-bg-elevated);
}

.amforum-topic-timeline .topic-row--timeline.pinned {
    background:var(--am-info-bg);
    border-left:3px solid var(--am-info);
}

.amforum-topic-timeline .topic-row--timeline.locked {
    opacity:0.88;
}

.topic-row-timeline {
    display:flex;
    flex-direction:column;
    align-items:center;
    position:relative;
    padding-top:var(--am-space-1);
}

.topic-row-timeline::after {
    content:'';
    position:absolute;
    top:calc(var(--am-space-10) + var(--am-space-1));
    bottom:calc(-1 * var(--am-space-5));
    left:50%;
    width:2px;
    transform:translateX(-50%);
    background:var(--am-border-default);
}

.topic-row--timeline.topic-row--last .topic-row-timeline::after {
    display:none;
}

.topic-row-avatar {
    width:var(--am-space-10);
    height:var(--am-space-10);
    border-radius:var(--am-radius-full);
    overflow:hidden;
    flex-shrink:0;
    position:relative;
    z-index:1;
    background:var(--am-bg-base);
    border:2px solid var(--am-border-default);
}

.topic-row-avatar-img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.topic-row-body {
    display:flex;
    gap:var(--am-space-6);
    align-items:flex-start;
    justify-content:space-between;
    min-width:0;
    width:100%;
}

.topic-row-main {
    flex:1;
    min-width:0;
}

.topic-row-aside {
    flex-shrink:0;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:var(--am-space-1);
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
    min-width:4.5rem;
    text-align:right;
}

.topic-excerpt {
    margin:var(--am-space-2) 0 0 0;
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
    line-height:1.45;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.topic-row-tags {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-1);
    margin-top:var(--am-space-2);
}

.topic-row-tags .amforum-tag {
    font-size:var(--am-font-xs);
    padding:0 var(--am-space-2);
}

.topic-meta-badge {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-1);
    font-size:var(--am-font-xs);
    color:var(--am-text-secondary);
}

.topic-stat-inline {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-1);
    white-space:nowrap;
    color:var(--am-text-tertiary);
}

.topic-stat-inline .amforum-icon,
.topic-stat-inline .sprite_icon {
    font-size:var(--am-font-xs);
    color:var(--am-text-primary);
}

/* Legacy card rows (non-timeline contexts) */
.topic-row {
    display:flex;
    align-items:center;
    gap:var(--am-space-4);
    padding:var(--am-space-4);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-md);
    border:1px solid var(--am-border-subtle);
    box-shadow:var(--am-shadow-xs);
    transition:background-color var(--am-trans-fast),border-color var(--am-trans-fast);
}

.topic-row:hover {
    background:var(--am-bg-elevated);
}

.topic-row.pinned {
    background:var(--am-info-bg);
    border-left:3px solid var(--am-info);
}

.topic-row.locked {
    opacity:0.85;
}

.topic-status {
    font-size:var(--am-font-xl);
    color:var(--am-text-secondary);
}

.topic-info {
    flex:1;
    min-width:0;
}

.topic-title {
    margin:0 0 var(--am-space-1) 0;
    font-size:var(--am-font-base);
    font-weight:500;
}

.amforum-topic-timeline .topic-title {
    margin:0;
    font-size:var(--am-font-lg);
    font-weight:600;
    line-height:1.35;
}

.amforum-topic-timeline .topic-meta {
    margin-top:var(--am-space-2);
}

.topic-title a {
    color:var(--am-text-primary);
    text-decoration:none;
}

.topic-title a:hover {
    color:var(--am-primary);
}

.topic-meta {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.topic-author a {
    color:var(--am-link-color);
    text-decoration:none;
}

.topic-stats {
    display:flex;
    gap:var(--am-space-6);
}

.stat {
    display:flex;
    align-items:center;
    gap:var(--am-space-1);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.topic-stats .vote-score {
    color:var(--am-success);
    font-weight:500;
}

.topic-last-activity {
    min-width:var(--am-space-16);
    text-align:right;
    font-size:var(--am-font-sm);
    color:var(--am-text-tertiary);
}

/* ===== TOPIC DETAIL ===== */
.topic-header {
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:var(--am-space-4);
    margin-bottom:var(--am-space-6);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.topic-title-section h1 {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-2xl);
    font-weight:600;
    color:var(--am-text-primary);
}

.topic-badges {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
}

.badge {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-1);
    padding:var(--am-space-1) var(--am-space-3);
    border-radius:var(--am-radius-sm);
    font-size:var(--am-font-xs);
    font-weight:500;
}

.badge-pinned {
    background:var(--am-info-bg);
    color:var(--am-info);
}

.badge-locked {
    background:var(--am-warning-bg);
    color:var(--am-warning);
}

.badge-solved {
    background:var(--am-success-bg);
    color:var(--am-success);
}

.topic-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
}

/* ===== POST ITEMS ===== */
.topic-posts {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-6);
    width:100%;
    max-width:100%;
    min-width:0;
}

.post-item {
    display:flex;
    gap:var(--am-space-6);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
    max-width:100%;
    box-sizing:border-box;
    min-width:0;
}

.topic-post {
    border-left:3px solid var(--am-primary);
}

.solution-post {
    border-left:3px solid var(--am-success);
    background:var(--am-success-bg);
}

.post-author {
    display:flex;
    flex-direction:column;
    align-items:center;
    min-width:min(100%,var(--am-space-16));
}

.author-avatar {
    width:var(--am-touch-md);
    height:var(--am-touch-md);
    border-radius:var(--am-radius-full);
    overflow:hidden;
    margin-bottom:var(--am-space-2);
}

.amforum-avatar-placeholder {
    display:block;
    width:100%;
    height:100%;
    background:var(--am-bg-sunken);
    border-radius:inherit;
}

.amforum-avatar-img,
.author-avatar img,
.topic-row-avatar img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.author-name {
    font-weight:600;
    text-align:center;
    color:var(--am-text-primary);
    text-decoration:none;
    font-size:var(--am-font-sm);
}

.author-name:hover {
    color:var(--am-primary);
}

.author-meta {
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
    text-align:center;
}

.post-content {
    flex:1;
    min-width:0;
}

.post-text {
    line-height:1.55;
    color:var(--am-text-primary);
    word-wrap:break-word;
}

.solution-badge {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-1);
    padding:var(--am-space-2) var(--am-space-4);
    margin-bottom:var(--am-space-4);
    background:var(--am-success);
    color:var(--am-text-inverse);
    border-radius:var(--am-radius-md);
    font-weight:500;
    font-size:var(--am-font-sm);
}

.post-edited {
    margin-top:var(--am-space-4);
    padding-top:var(--am-space-4);
    border-top:1px solid var(--am-border-default);
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
    font-style:italic;
}

.post-actions {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    margin-top:var(--am-space-4);
    padding-top:var(--am-space-4);
    border-top:1px solid var(--am-border-default);
}

/* ===== VOTING (vote-amforum-btn) ===== */
.vote-buttons {
    display:flex;
    align-items:center;
    gap:var(--am-space-2);
}

.vote-amforum-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:var(--am-touch-min);
    min-height:var(--am-touch-min);
    padding:var(--am-space-2);
    border:none;
    border-radius:var(--am-radius-md);
    background:transparent;
    color:var(--am-text-primary);
    cursor:pointer;
    transition:opacity var(--am-trans-fast),color var(--am-trans-fast);
}

.vote-amforum-btn:hover {
    background:transparent;
    opacity:0.65;
}

.vote-amforum-btn.active.vote-up,
.vote-amforum-btn.active.vote-down {
    background:transparent;
    color:var(--am-text-primary);
    border:none;
    font-weight:700;
    opacity:1;
}

.post-actions .vote-score {
    font-weight:600;
    color:var(--am-text-primary);
    font-size:var(--am-font-sm);
}

.action-buttons {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
}

/* ===== QUICK REPLY ===== */
.quick-reply-section {
    margin-top:var(--am-space-8);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
    width:100%;
    max-width:100%;
    box-sizing:border-box;
}

.amforum-quick-reply-form {
    width:100%;
    max-width:100%;
    box-sizing:border-box;
}

.quick-reply-section h2,
.quick-reply-section h3 {
    margin:0 0 var(--am-space-4) 0;
    font-size:var(--am-font-lg);
    font-weight:600;
    color:var(--am-text-primary);
}

.forum-textarea {
    display:block;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    padding:var(--am-space-4);
    border:1px solid var(--am-border-default);
    border-radius:var(--am-radius-md);
    font-family:var(--am-font-sans);
    font-size:var(--am-font-base);
    line-height:1.5;
    resize:vertical;
    background:var(--am-bg-base);
    color:var(--am-text-primary);
}

.forum-textarea:focus {
    outline:2px solid var(--am-border-focus);
    outline-offset:2px;
    border-color:var(--am-primary);
}

.reply-locked {
    padding:var(--am-space-6);
    text-align:center;
    background:var(--am-warning-bg);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    color:var(--am-warning);
    font-size:var(--am-font-sm);
}

/* ===== FORMS ===== */
.create-topic-form {
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.create-topic-form h1 {
    margin-top:0;
    font-size:var(--am-font-2xl);
    color:var(--am-text-primary);
}

.amforum-form-group {
    margin-bottom:var(--am-space-6);
}

.amforum-form-group label {
    display:block;
    margin-bottom:var(--am-space-2);
    font-weight:500;
    font-size:var(--am-font-sm);
    color:var(--am-text-primary);
}

.required {
    color:var(--am-danger);
}

.form-input,
.form-select {
    width:100%;
    padding:var(--am-space-3) var(--am-space-4);
    border:1px solid var(--am-border-default);
    border-radius:var(--am-radius-md);
    font-size:var(--am-font-base);
    font-family:var(--am-font-sans);
    background:var(--am-bg-base);
    color:var(--am-text-primary);
}

.form-input:focus,
.form-select:focus {
    outline:2px solid var(--am-border-focus);
    outline-offset:2px;
    border-color:var(--am-primary);
}

.form-help {
    margin-top:var(--am-space-2);
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.amforum-form-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    align-items:center;
}

.form-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
}

/* ===== BUTTONS (Jamroom .btn + module amforum-* ) ===== */
.btn {
    font-family:var(--am-font-sans);
}

.amforum-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:var(--am-space-2);
    padding:var(--am-space-3) var(--am-space-5);
    border:none;
    border-radius:var(--am-radius-md);
    font-size:var(--am-font-sm);
    font-weight:500;
    cursor:pointer;
    transition:background-color var(--am-trans-fast),color var(--am-trans-fast),border-color var(--am-trans-fast);
    text-decoration:none;
}

.amforum-btn-primary,
.btn.amforum-btn-primary {
    background:var(--am-primary);
    color:var(--am-primary-text);
    border:1px solid transparent;
}

.amforum-btn-primary:hover,
.btn.amforum-btn-primary:hover {
    background:var(--am-primary-hover);
    color:var(--am-primary-text);
}

.amforum-btn-secondary,
.btn.amforum-btn-secondary {
    background:var(--am-bg-elevated);
    color:var(--am-text-primary);
    border:1px solid var(--am-border-default);
}

.amforum-btn-secondary:hover,
.btn.amforum-btn-secondary:hover {
    background:var(--am-bg-sunken);
    border-color:var(--am-border-strong);
}

.amforum-btn-text,
.btn.amforum-btn-text {
    background:transparent;
    color:var(--am-text-primary);
    border:none;
    box-shadow:none;
}

.amforum-btn-text:hover,
.btn.amforum-btn-text:hover {
    background:transparent;
    color:var(--am-text-primary);
    opacity:0.65;
}

.amforum-btn-success,
.btn.amforum-btn-success {
    background:transparent;
    color:var(--am-text-primary);
    border:none;
    box-shadow:none;
}

.amforum-btn-success:hover,
.btn.amforum-btn-success:hover {
    background:transparent;
    color:var(--am-text-primary);
    opacity:0.65;
    filter:none;
}

.amforum-btn-icon,
.btn.amforum-btn-icon {
    padding:var(--am-space-2);
    min-width:var(--am-touch-min);
    min-height:var(--am-touch-min);
    background:transparent;
    border:none;
    box-shadow:none;
    color:var(--am-text-primary);
}

.amforum-btn-icon:hover,
.btn.amforum-btn-icon:hover {
    background:transparent;
    border:none;
    color:var(--am-text-primary);
    opacity:0.65;
}

.btn-primary {
    background:var(--am-primary);
    color:var(--am-primary-text);
}

.btn-primary:hover {
    background:var(--am-primary-hover);
}

.btn-secondary {
    background:var(--am-bg-sunken);
    color:var(--am-text-primary);
    border:1px solid var(--am-border-default);
}

.btn-secondary:hover {
    background:var(--am-bg-elevated);
}

.btn-success {
    background:var(--am-success);
    color:var(--am-text-inverse);
}

.btn-success:hover {
    filter:brightness(0.95);
}

.btn-text {
    background:transparent;
    color:var(--am-text-secondary);
}

.btn-text:hover {
    background:var(--am-bg-overlay);
}

.btn-icon {
    padding:var(--am-space-2);
    min-width:var(--am-touch-min);
    min-height:var(--am-touch-min);
    justify-content:center;
}

/* ===== ICON SYSTEM (jrCore sprites — black,no button backgrounds) ===== */

/* Skin global .sprite_icon adds gradient boxes (hearn/profile.css) — reset inside forum */
.amforum-layout .sprite_icon,
.forum-container .sprite_icon {
    background:transparent;
    background-image:none;
    border:none;
    border-radius:0;
    padding:0;
    margin:0;
    box-shadow:none;
    color:inherit;
    cursor:inherit;
    vertical-align:middle;
    line-height:0;
}

.amforum-layout .sprite_icon:hover,
.forum-container .sprite_icon:hover {
    background:transparent;
    background-image:none;
}

.amforum-layout .sprite_icon > span[class*="sprite_icon_"][class*="_img"],
.forum-container .sprite_icon > span[class*="sprite_icon_"][class*="_img"] {
    display:block;
}

.amforum-layout .amforum-icon,
.forum-container .amforum-icon {
    display:inline-block;
    vertical-align:middle;
    line-height:1;
    background:transparent;
    border:none;
    box-shadow:none;
}

.amforum-layout .amforum-icon-btn,
.forum-container .amforum-icon-btn,
.amforum-layout .vote-amforum-btn,
.forum-container .vote-amforum-btn,
.amforum-layout .topic-actions .btn,
.amforum-layout .post-actions .btn,
.amforum-layout .category-actions .forum-watch-amforum-btn,
.amforum-layout .category-actions .amforum-btn-text {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:var(--am-space-2);
    background:transparent;
    border:none;
    box-shadow:none;
    color:var(--am-text-primary);
    padding:var(--am-space-2);
    min-width:var(--am-touch-min);
    min-height:var(--am-touch-min);
}

.amforum-layout .amforum-icon-btn:hover,
.forum-container .amforum-icon-btn:hover,
.amforum-layout .vote-amforum-btn:hover,
.forum-container .vote-amforum-btn:hover,
.amforum-layout .topic-actions .btn:hover,
.amforum-layout .post-actions .btn:hover,
.amforum-layout .category-actions .forum-watch-amforum-btn:hover,
.amforum-layout .category-actions .amforum-btn-text:hover {
    background:transparent;
    border:none;
    box-shadow:none;
    color:var(--am-text-primary);
    opacity:0.65;
}

.amforum-layout .post-actions .amforum-btn-text,
.amforum-layout .post-actions .amforum-btn-success,
.amforum-layout .action-buttons .btn {
    min-width:0;
    min-height:var(--am-touch-min);
    padding:var(--am-space-2) var(--am-space-3);
}

.amforum-layout .category-icon,
.forum-container .category-icon {
    display:flex;
    align-items:center;
    justify-content:center;
    background:transparent;
    border:none;
    box-shadow:none;
    padding:0;
}

.amforum-layout .category-icon .amforum-icon,
.forum-container .category-icon .amforum-icon {
    background:transparent;
}

.amforum-layout .form-help .amforum-icon,
.amforum-layout .breadcrumbs .amforum-icon,
.amforum-layout .forum-stats .amforum-icon,
.amforum-layout .category-meta .amforum-icon,
.amforum-layout .topic-stat-inline .amforum-icon,
.amforum-layout .topic-meta-badge .amforum-icon,
.amforum-layout .post-edited .amforum-icon,
.amforum-layout .badge .amforum-icon,
.forum-container .form-help .amforum-icon,
.forum-container .breadcrumbs .amforum-icon,
.forum-container .post-meta .amforum-icon {
    margin-right:var(--am-space-1);
}

.amforum-layout .no-topics .amforum-icon,
.amforum-layout .no-categories .amforum-icon,
.amforum-layout .no-posts .amforum-icon,
.amforum-layout .no-results .amforum-icon,
.forum-container .no-posts .amforum-icon {
    display:block;
    margin:0 auto var(--am-space-4) auto;
}

.amforum-layout .amforum-btn-primary .amforum-icon,
.forum-container .amforum-btn-primary .amforum-icon {
    margin-right:var(--am-space-1);
}

.amforum-layout .amforum-btn-secondary,
.forum-container .amforum-btn-secondary {
    background:transparent;
    border:1px solid var(--am-border-default);
    color:var(--am-text-primary);
    box-shadow:none;
}

.amforum-layout .amforum-btn-secondary:hover,
.forum-container .amforum-btn-secondary:hover {
    background:transparent;
    border-color:var(--am-border-strong);
    color:var(--am-text-primary);
    opacity:0.85;
}

.btn-sm {
    padding:var(--am-space-2) var(--am-space-3);
    font-size:var(--am-font-sm);
}

.topic-row .topic-icon {
    font-size:var(--am-font-xl);
    color:var(--am-text-secondary);
    flex-shrink:0;
}

.topic-info h4 {
    margin:0 0 var(--am-space-1) 0;
    font-size:var(--am-font-base);
    font-weight:600;
}

.topic-info h4 a {
    color:var(--am-link-color);
    text-decoration:none;
}

.topic-info h4 a:hover {
    color:var(--am-link-color-hover);
    text-decoration:underline;
}

/* ===== SEARCH ===== */
.search-section {
    margin-bottom:var(--am-space-8);
    padding:var(--am-space-6);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.search-section > h1 {
    margin:0 0 var(--am-space-4) 0;
    font-size:var(--am-font-2xl);
    color:var(--am-text-primary);
}

.forum-search-form .search-input-group {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
    align-items:stretch;
    margin-bottom:var(--am-space-4);
}

.forum-search-form .search-input {
    flex:1 1 12rem;
    min-width:0;
    padding:var(--am-space-3) var(--am-space-4);
    border:1px solid var(--am-border-default);
    border-radius:var(--am-radius-md);
    font-size:var(--am-font-base);
    font-family:var(--am-font-sans);
    background:var(--am-bg-base);
    color:var(--am-text-primary);
}

.forum-search-form .search-input:focus {
    outline:2px solid var(--am-border-focus);
    outline-offset:2px;
    border-color:var(--am-primary);
}

.search-filters .form-select {
    max-width:var(--am-container-sm);
}

.search-results > h2 {
    margin:0 0 var(--am-space-6) 0;
    font-size:var(--am-font-xl);
    color:var(--am-text-primary);
}

.results-section {
    margin-bottom:var(--am-space-8);
}

.results-section > h3 {
    margin:0 0 var(--am-space-4) 0;
    font-size:var(--am-font-lg);
    color:var(--am-text-secondary);
}

.posts-list {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-3);
}

.post-row {
    padding:var(--am-space-4);
    background:var(--am-bg-base);
    border-radius:var(--am-radius-md);
    border:1px solid var(--am-border-default);
}

.post-row .post-content p {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-sm);
    color:var(--am-text-primary);
    line-height:1.5;
}

.post-row .post-meta {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-4);
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
}

.post-row .post-meta a {
    color:var(--am-link-color);
}

.no-results .help-text {
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
    margin-top:var(--am-space-2);
}

/* ===== EMPTY STATES ===== */
.no-categories,
.no-topics,
.no-results {
    padding:var(--am-space-10);
    text-align:center;
    background:var(--am-bg-base);
    border-radius:var(--am-radius-lg);
    border:1px solid var(--am-border-default);
    box-shadow:var(--am-shadow-sm);
}

.no-categories i,
.no-topics i,
.no-results i {
    font-size:var(--am-font-3xl);
    color:var(--am-text-tertiary);
    margin-bottom:var(--am-space-4);
}

.no-categories p,
.no-topics p,
.no-results p {
    color:var(--am-text-secondary);
    margin:var(--am-space-4) 0;
    font-size:var(--am-font-base);
}

/* ===== PAGINATION ===== */
.forum-pagination {
    margin-top:var(--am-space-8);
    text-align:center;
}

/* ===== ADMIN / UTIL ===== */
.forum-admin-actions {
    margin-bottom:var(--am-space-6);
}

.fixed-width.forum-container {
    max-width:var(--am-container-md);
}

.forum-category-header-stats span {
    margin-right:var(--am-space-4);
}

.forum-cat-last-activity {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-1);
}

/* ===== RESPONSIVE ===== */
@media (max-width:768px) {
    .forum-container {
        padding:var(--am-space-4);
    }

    .category-card {
        flex-direction:column;
        align-items:flex-start;
    }

    .category-stats {
        width:100%;
        text-align:left;
    }

    .topic-row {
        flex-direction:column;
        align-items:flex-start;
    }

    .amforum-topic-timeline .topic-row--timeline {
        grid-template-columns:var(--am-space-10) 1fr;
        padding:var(--am-space-4);
    }

    .topic-row-body {
        flex-direction:column;
        gap:var(--am-space-3);
    }

    .topic-row-aside {
        flex-direction:row;
        flex-wrap:wrap;
        align-items:center;
        justify-content:flex-start;
        width:100%;
        text-align:left;
    }

    .topic-stats,
    .topic-last-activity {
        width:100%;
        text-align:left;
    }

    .category-header {
        flex-direction:column;
    }

    .topic-header {
        flex-direction:column;
    }

    .post-item {
        flex-direction:column;
    }

    .post-author {
        flex-direction:row;
        width:100%;
        min-width:0;
        justify-content:flex-start;
        gap:var(--am-space-4);
    }

    .author-avatar {
        width:var(--am-touch-md);
        height:var(--am-touch-md);
        margin-bottom:0;
    }

    .author-meta,
    .author-name {
        text-align:left;
    }

    .post-actions {
        flex-direction:column;
        align-items:flex-start;
    }
}


/* modules/amForum/css/amforum.css */


/**
 * Jamroom amForum Module Stylesheet
 *
 * @copyright 2026 The Arcitech
 *
 * NOTE:All CSS classes should be prefixed with the module name
 * to avoid conflicts with other modules and skins.
 */

/* Container */
.amforum-container {
    padding:20px;
}

/* Header */
.amforum-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:1px solid #eee;
}

.amforum-header h1 {
    margin:0;
}

.amforum-actions {
    display:flex;
    gap:10px;
}

/* List */
.amforum-list {
    display:flex;
    flex-direction:column;
    gap:15px;
}

/* Item */
.amforum-item {
    padding:15px;
    border:1px solid #ddd;
    border-radius:4px;
    background:#fff;
}

.amforum-item-title {
    margin:0 0 10px 0;
}

.amforum-item-title a {
    color:#333;
    text-decoration:none;
}

.amforum-item-title a:hover {
    color:#0066cc;
}

.amforum-item-description {
    margin:0 0 10px 0;
    color:#666;
}

.amforum-item-meta {
    font-size:0.85em;
    color:#999;
}

.amforum-item-meta span {
    margin-right:15px;
}

.amforum-item-actions {
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid #eee;
}

/* Detail */
.amforum-detail {
    padding:20px;
}

.amforum-detail-header {
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:1px solid #eee;
}

.amforum-detail-title {
    margin:0 0 10px 0;
}

.amforum-detail-meta {
    font-size:0.9em;
    color:#666;
}

.amforum-detail-content {
    margin:20px 0;
    line-height:1.6;
}

.amforum-detail-actions {
    margin-top:20px;
    padding-top:15px;
    border-top:1px solid #eee;
}

/* Empty state */
.amforum-empty {
    padding:40px;
    text-align:center;
    color:#999;
}

/* Former inline styles (enterprise) — see templates category_delete_confirm,category_form,forum_index,forum_notification_settings,forum_user_activity */
.amforum-form-actions {
    margin-top:1em;
}

.amforum-admin-actions {
    margin-bottom:1.5em;
}

.amforum-admin-actions h2 {
    margin-top:0;
}

.amforum-category-list {
    list-style:none;
    padding-left:0;
}

.amforum-category-list li {
    margin:0.35em 0;
}

.category-card .amforum-admin-actions {
    margin-bottom:8px;
}

.amforum-notification-breadcrumbs {
    margin-bottom:1em;
}

.amforum-notification-settings-link {
    margin:0 0 1em 0;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* Forum shell — sidebar + markdown bodies (amCore tokens,VM-15b) */
.amforum-layout {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-6);
  align-items:flex-start;
  max-width:var(--am-container-xl);
  margin-left:auto;
  margin-right:auto;
  padding:var(--am-space-4);
}

.amforum-layout-main {
  flex:1 1 0;
  min-width:0;
}

.amforum-sidebar {
  flex:0 0 240px;
  max-width:100%;
  background:var(--am-bg-elevated);
  border:1px solid var(--am-border-default);
  border-radius:var(--am-radius-md);
  padding:var(--am-space-4);
}

.amforum-sidebar-heading {
  margin:0 0 var(--am-space-2) 0;
  font-size:var(--am-font-sm);
  font-weight:600;
  color:var(--am-text-secondary);
  text-transform:uppercase;
  letter-spacing:0.03em;
}

.amforum-sidebar-inner > .amforum-sidebar-heading:not(:first-child) {
  margin-top:var(--am-space-5);
}

.amforum-sidebar-list {
  list-style:none;
  margin:0;
  padding-left:0;
}

.amforum-sidebar-list li {
  margin:var(--am-space-1) 0;
}

.amforum-sidebar-list a {
  color:var(--am-text-primary);
  text-decoration:none;
  font-size:var(--am-font-base);
}

.amforum-sidebar-list a:hover {
  color:var(--am-primary);
  text-decoration:underline;
}

.amforum-sidebar-list ul {
  list-style:none;
  margin:var(--am-space-1) 0 0 var(--am-space-4);
  padding-left:0;
}

.amforum-sidebar-empty {
  margin:0;
  font-size:var(--am-font-sm);
  color:var(--am-text-tertiary);
}

.amforum-sort-tabs {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-2);
  margin-bottom:var(--am-space-4);
  padding-bottom:var(--am-space-3);
  border-bottom:1px solid var(--am-border-default);
}

.amforum-sort-tab {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:var(--am-space-2) var(--am-space-4);
  border-radius:var(--am-radius-sm);
  border:1px solid var(--am-border-default);
  background:var(--am-bg-base);
  color:var(--am-text-primary);
  font-size:var(--am-font-sm);
  text-decoration:none;
}

.amforum-sort-tab:hover {
  border-color:var(--am-primary);
  color:var(--am-primary);
}

.amforum-sort-tab.is-active {
  border-color:var(--am-primary);
  background:var(--am-primary-light);
  color:var(--am-primary-hover);
  font-weight:600;
}

.amforum-topic-tags {
  display:flex;
  flex-wrap:wrap;
  gap:var(--am-space-2);
  margin-top:var(--am-space-2);
}

a.amforum-tag {
  display:inline-block;
  padding:var(--am-space-1) var(--am-space-3);
  border-radius:var(--am-radius-full);
  border:1px solid var(--am-border-default);
  background:var(--am-bg-sunken);
  color:var(--am-text-secondary);
  font-size:var(--am-font-sm);
  text-decoration:none;
}

a.amforum-tag:hover {
  border-color:var(--am-primary);
  color:var(--am-primary);
}

.amforum-post-html,
.amforum-md-preview-out {
  font-size:var(--am-font-base);
  line-height:1.55;
  color:var(--am-text-primary);
  word-wrap:break-word;
}

.amforum-post-html pre,
.amforum-post-html code,
.amforum-md-preview-out pre,
.amforum-md-preview-out code {
  font-family:var(--am-font-mono);
  font-size:var(--am-font-sm);
}

.amforum-post-html pre,
.amforum-md-preview-out pre {
  padding:var(--am-space-3);
  border-radius:var(--am-radius-sm);
  background:var(--am-bg-sunken);
  border:1px solid var(--am-border-default);
  overflow:auto;
}

.amforum-md-preview-out {
  margin-top:var(--am-space-3);
  padding:var(--am-space-4);
  border:1px dashed var(--am-border-default);
  border-radius:var(--am-radius-md);
  background:var(--am-bg-base);
}

.amforum-md-preview-actions {
  margin-top:var(--am-space-2);
}

.amforum-tag-heading {
  font-weight:600;
}

.amforum-unread-pill {
  display:inline-block;
  width:var(--am-space-2);
  height:var(--am-space-2);
  margin-left:var(--am-space-2);
  border-radius:var(--am-radius-full);
  background:var(--am-primary);
  vertical-align:middle;
}

@media (max-width:1024px) {
  .amforum-layout {
    flex-direction:column;
  }
  .amforum-sidebar {
    flex:1 1 auto;
    width:100%;
  }
}


/* modules/amLike/css/amLike.css */


.like_button_box {
    display:inline;
}

.like_button_img {
    vertical-align:middle;
}

.like_count {
    display:inline;
    margin-left:3px;
    font-size:12px;
}

.dislike_button_box {
    display:inline;
}

.dislike_button_img {
    vertical-align:middle;
}

.dislike_count {
    display:inline;
    margin-left:3px;
    font-size:12px;
}

.likers_box {
    position:relative;
    display:none;
    width:558px !important;
    height:320px !important;
    padding-top:0;
    margin:0;
    z-index:10000;
}

.liker_list {
    font-size:12px;
}

/* Enhancement B:Reaction picker */
.amLike-reaction-wrapper {
    display:inline-block;
    position:relative;
}

.amLike-reaction-picker {
    display:none;
    position:absolute;
    bottom:100%;
    left:0;
    background:var(--am-bg-base);
    border:1px solid var(--am-border-default);
    border-radius:24px;
    padding:4px 8px;
    box-shadow:var(--am-shadow-md);
    white-space:nowrap;
    z-index:9999;
}

.amLike-reaction-wrapper:hover .amLike-reaction-picker {
    display:block;
}

.amLike-react {
    background:none;
    border:none;
    cursor:pointer;
    font-size:20px;
    padding:2px 4px;
    transition:transform 0.15s ease;
    line-height:1.4;
}

.amLike-react:hover {
    transform:scale(1.3);
}

/* Enhancement B:Reaction summary in likers popup */
.amLike-reaction-summary {
    padding:6px 0 4px 0;
    margin-bottom:6px;
    border-bottom:1px solid var(--am-border-default);
}

.amLike-reaction-badge {
    display:inline-block;
    margin-right:8px;
    font-size:13px;
    background:var(--am-bg-elevated);
    border-radius:12px;
    padding:2px 8px;
}

/* Enhancement F:Social proof */
.amLike-social-proof {
    font-size:11px;
    color:var(--am-text-secondary);
    margin:2px 0 0 0;
    line-height:1.4;
}

/* Enhancement G:Leaderboard widget */
.amLike-leaderboard-widget {
    padding:8px 0;
}

.amLike-leaderboard-widget h3 {
    margin:0 0 8px 0;
    font-size:14px;
}

.amLike-leaderboard-item {
    display:flex;
    align-items:center;
    padding:4px 0;
    border-bottom:1px solid var(--am-border-subtle);
    gap:8px;
}

.amLike-leaderboard-item .amLike-count {
    display:inline;
    font-weight:bold;
    font-size:13px;
    min-width:40px;
    margin-left:0;
}

.amLike-leaderboard-item .amLike-title {
    font-size:13px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* Enhancement C:Analytics container */
.amLike-analytics-container {
    padding:12px 0;
    overflow-x:auto;
}

.amLike-analytics-empty {
    color:var(--am-text-secondary,#888);
    text-align:center;
}

.amLike-analytics-canvas {
    max-width:100%;
    display:block;
    margin:0 auto;
}

.amLike-hidden-json {
    display:none;
}

.amLike-likers-close {
    position:absolute;
    right:10px;
    bottom:10px;
}

.amLike-likers-scroll {
    height:240px;
    overflow:auto;
}

.amLike-likers-cell {
    display:inline-block;
    padding:4px;
}

.amLike-likers-img {
    float:none;
}

.amLike-likers-overflow {
    overflow:auto;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amPhoto/css/amPhoto.css */


/* Jamroom Gallery Module CSS */
.amPhoto-gallery-row a {
    text-decoration:none;
}

.amPhoto-gallery-row a:hover {
    text-decoration:none;
}

.img-profile {
    position:relative;
}

.amPhoto-gallery-actions {
    position:absolute;
    top:10px;
    right:12px;
    display:none;
}

.amPhoto-gallery-img {
    width:100%;
    margin:0;
    padding:0;
}

.amPhoto-gallery-rating {
    max-width:80px;
    padding-top:4px;
    margin:0 auto;
}

.amPhoto-gallery-lightbox {
    float:left;
    padding-top:12px;
}

.amPhoto-gallery-lightbox a {
    text-decoration:none;
}

.amPhoto-gallery-lightbox a:hover {
    text-decoration:none;
}

.amPhoto-gallery-link-title {
    font-size:1.17em;
    font-weight:bold;
    display:inline-block;
    margin:0;
}

.amPhoto-gallery-view-all {
    float:right;
    padding-top:12px;
}

.amPhoto-gallery-view-all a {
    text-decoration:none;
}

.amPhoto-gallery-view-all a:hover {
    text-decoration:none;
}

#amPhoto-slider-box {
    padding:12px 0 0 0;
    padding-left:16px;
}

#amPhoto-slider {
}

.amPhoto-gallery-slider-prev {
    float:left;
    margin-right:8px;
    padding-top:14px;
}

.amPhoto-gallery-slider-next {
    float:left;
    margin-left:4px;
    padding-top:14px;
}

.amPhoto-gallery-slider-img {
    float:left;
    margin-right:4px;
}

.amPhoto-gallery-slider-img img {
    border:1px solid var(--am-border-default);
}

.amPhoto-gallery-slider-img img:hover {
    border:1px solid var(--am-warning) !important;
}

.amPhoto-gallery-update-div {
    display:inline-block;
    vertical-align:top;
    padding:12px;
    margin:6px 12px 6px 3px;
    border:1px solid var(--am-border-default);
    text-align:center;
}

.amPhoto-gallery-update-div:hover {
    background-color:var(--am-bg-sunken);
}

.amPhoto-gallery-update-image {
    margin:1px 1px 6px 1px;
}

.amPhoto-gallery-update-button {
    font-size:10px;
    width:60px;
    margin:2px;
}

.amPhoto-gallery-update-button:hover {
    cursor:pointer;
}

@media handheld,only screen and (max-width:767px) {
    .amPhoto-gallery-row {
        width:90%;
    }
}

.amPhoto-gallery-image-grid {
    float:left;
    display:inline-block;
    text-align:center;
    width:24%;
    margin:6px 0;
}

#amPhoto-edit-image {
    max-width:300px;
}

#amPhoto-save-image {
    display:none;
    width:75%;
    padding:12px;
    margin-bottom:12px;
    color:var(--am-text-primary);
    border-radius:3px;
}

.amPhoto-gallery-image-info {
    text-align:left;
    font-size:0.8em;
}

.amPhoto-gallery-search-found {
    background-color:var(--am-warning-bg);
}

.amPhoto-gallery-no-title {
    opacity:0.5;
}

.amPhoto-gallery-filename {
    opacity:0.8;
}

#amPhoto-title-modal {
    width:440px;
    box-sizing:border-box;
    position:relative;
    display:none;
}

.amPhoto-gallery-update-title,
.amPhoto-gallery-filename {
    display:inline-block;
    max-width:120px;
    overflow:hidden;
    white-space:nowrap;
}

.amPhoto-gallery-scroll-box{
    max-height:500px;
    overflow:scroll
}

.amPhoto-gallery-pending-image {
    float:left;
    margin-right:6px;
    vertical-align:middle;
}

/* --- Completeness:moved from inline templates --- */
.amPhoto-float-right {
    float:right;
}

.amPhoto-gallery-title-modal .amPhoto-modal-close {
    position:absolute;
    right:5px;
    bottom:5px;
}

.amPhoto-action-wrap {
    margin:0;
    position:relative;
}

.amPhoto-action-wrap.amPhoto-action-z {
    z-index:20;
}

.amPhoto-action-img-cell {
    text-align:center;
    background:var(--am-text-primary);
}

.amPhoto-action-img-scale {
    max-height:500px;
    max-width:500px;
    width:auto;
    height:auto;
}

.amPhoto-action-img-scale.amPhoto-action-img-mobile {
    max-height:100vh;
    max-width:100vw;
}

.amPhoto-action-title-pad {
    padding:12px 1em;
}

.amPhoto-action-float-right {
    float:right;
}

.amPhoto-action-user-pad {
    padding:10px;
}

.amPhoto-comment-box-hidden {
    display:none;
}

.amPhoto-gallery-xup {
    float:right;
    margin-top:12px;
}

.amPhoto-clear {
    clear:both;
}

.amPhoto-hidden {
    display:none !important;
}

.amPhoto-del-spin {
    margin:8px 8px 0 8px;
    display:none;
}

.amPhoto-template-error-hidden {
    display:none;
}

.amPhoto-gallery-p-cell {
    position:relative;
}

.amPhoto-item-list-margin {
    margin-bottom:10px;
}

.amPhoto-item-list-inline {
    margin-left:6px;
}

.amPhoto-item-list-pt0 {
    padding-top:0;
}

.amPhoto-embed-next {
    margin-left:6px;
}

.amPhoto-detail-slider-pad {
    padding:12px 0 0 0;
    padding-left:16px;
}

.amPhoto-block-image {
    position:relative;
}

.amPhoto-lb-nav .amPhoto-lb-prev,
.amPhoto-lb-nav .amPhoto-lb-next {
    display:block;
}

.amPhoto-item-detail-error-table {
    height:100%;
}

.amPhoto-item-detail-error-td {
    text-align:center;
}

.amPhoto-bundle-actions {
    text-align:right;
}

.amPhoto-embed-table-cell {
    width:25%;
}

.amPhoto-embed-select {
    width:auto;
}

.amPhoto-embed-thumb {
    float:left;
    padding:3px;
    text-align:center;
}

.amPhoto-embed-thumb.amPhoto-embed-thumb-wide {
    max-width:152px;
}

.amPhoto-widget-pager-table {
    width:100%;
}

.amPhoto-widget-pager-narrow {
    width:25%;
}

.amPhoto-widget-pager-right {
    text-align:right;
}

.amPhoto-widget-pager-center {
    width:50%;
    text-align:center;
}

.amPhoto-widget-pager-select {
    width:60px;
}

.amPhoto-widget-search-spinner {
    display:none;
}

.amPhoto-sortable-base ul.sortable {
    margin:0;
    padding:0;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
}

.amPhoto-sortable-base ul.sortable.grid {
    overflow:hidden;
}

.amPhoto-sortable-base ul.sortable > li {
    margin:0 auto;
    list-style:none;
    display:inline-block;
}

.amPhoto-sortable-orderable ul.sortable li {
    cursor:move;
    padding:0;
    margin:0;
}

.amPhoto-sortable-orderable ul.sortable a {
    cursor:move;
}

.amPhoto-sortable-orderable li.sortable-placeholder {
    width:80px;
    height:80px;
    z-index:100;
    border:1px dashed var(--am-border-strong);
    margin:0;
}

.amPhoto-action-detail-thumb {
    width:25%;
}

.amPhoto-action-detail-img {
    max-height:250px;
    max-width:250px;
}

.amPhoto-action-detail-text {
    text-align:left;
}

/* ---- Modern gallery + detail (2026) ---- */
.amPhoto-visually-hidden {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}

.amPhoto-gallery-shell {
    border-radius:var(--am-radius-lg);
    overflow:hidden;
}

.amPhoto-gallery-actions-top {
    display:flex;
    justify-content:flex-end;
    margin-bottom:var(--am-space-3);
}

.amPhoto-gallery-heading {
    margin-bottom:var(--am-space-4);
}

.amPhoto-gallery-h1 {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-xl);
    color:var(--am-text-primary);
}

.amPhoto-gallery-breadcrumbs {
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
}

.amPhoto-gallery-bc-gap {
    margin:0 var(--am-space-1);
}

.amPhoto-gallery-body {
    padding-top:var(--am-space-2);
}

.amPhoto-gallery-toolbar {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-3);
    margin-bottom:var(--am-space-4);
    padding-bottom:var(--am-space-3);
    border-bottom:1px solid var(--am-border-subtle);
}

.amPhoto-gallery-toolbar-label {
    font-size:var(--am-font-xs);
    text-transform:uppercase;
    letter-spacing:0.04em;
    color:var(--am-text-secondary);
}

.amPhoto-gallery-cols-btn-group .amPhoto-xup-btn {
    margin-right:var(--am-space-1);
}

.amPhoto-gallery-lightbox-modern .amPhoto-lightbox-trigger {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-2);
}

.amPhoto-gallery-mosaic {
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(140px,1fr));
    gap:var(--am-space-3);
    overflow:visible;
}

@media screen and (min-width:1024px) {
    .amPhoto-gallery-toolbar--desktop.amPhoto-gallery-toolbar {
        justify-content:space-between;
    }
}

@media screen and (max-width:767px) {
    .amPhoto-gallery-mosaic.sortable.grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .amPhoto-gallery-toolbar {
        flex-direction:column;
        align-items:stretch;
    }

    .amPhoto-gallery-lightbox-modern {
        width:100%;
    }

    .amPhoto-gallery-lightbox-modern .amPhoto-lightbox-trigger {
        width:100%;
        justify-content:center;
    }
}

.amPhoto-gallery-tile {
    border-radius:var(--am-radius-md);
    background:var(--am-bg-elevated);
    box-shadow:var(--am-shadow-xs);
    transition:box-shadow var(--am-trans-base),transform var(--am-trans-base);
}

.amPhoto-gallery-tile:hover {
    box-shadow:var(--am-shadow-md);
    transform:translateY(-1px);
}

.amPhoto-gallery-tile-link {
    display:block;
    border-radius:var(--am-radius-sm);
    overflow:hidden;
}

.amPhoto-gallery-tile-media {
    width:100%;
    height:auto;
    display:block;
}

.amPhoto-sortable-base ul.sortable.grid.amPhoto-gallery-mosaic {
    margin:0;
    padding:0;
}

.amPhoto-sortable-base ul.sortable.grid.amPhoto-gallery-mosaic > li {
    width:auto !important;
    display:block;
}

.amPhoto-detail-page {
    width:100%;
    max-width:min(1280px,100vw);
    box-sizing:border-box;
    min-width:0;
    overflow-x:hidden;
}

/* amCore .am-card uses overflow:hidden — flex children need min-width:0 or wide strips clip on the right */
.amPhoto-detail-card.am-card {
    max-width:100%;
    min-width:0;
    width:100%;
    box-sizing:border-box;
    overflow-x:hidden;
}

.amPhoto-detail-body {
    min-width:0;
    max-width:100%;
    width:100%;
    box-sizing:border-box;
    overflow-x:hidden;
}

.amPhoto-detail-slider-pane {
    min-width:0;
    max-width:100%;
}

.amPhoto-detail-header {
    margin-bottom:var(--am-space-3);
}

.amPhoto-detail-header-controls {
    display:flex;
    justify-content:flex-end;
    margin-bottom:var(--am-space-2);
}

.amPhoto-detail-heading {
    margin:0 0 var(--am-space-2) 0;
    font-size:var(--am-font-xl);
    color:var(--am-text-primary);
}

.amPhoto-detail-breadcrumbs {
    font-size:var(--am-font-sm);
    color:var(--am-text-secondary);
    overflow-wrap:anywhere;
    word-break:break-word;
}

.amPhoto-detail-bc-sep {
    margin:0 var(--am-space-1);
}

.amPhoto-detail-slider-pane {
    margin-bottom:var(--am-space-4);
}

.amPhoto-thumb-row {
    display:flex;
    align-items:center;
    gap:var(--am-space-2);
    background:var(--am-bg-sunken);
    border:1px solid var(--am-border-subtle);
    border-radius:var(--am-radius-md);
    padding:var(--am-space-2);
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
}

.amPhoto-thumb-pager {
    flex:0 0 auto;
}

.amPhoto-thumb-pager--off {
    opacity:0.35;
}

.amPhoto-thumb-pager-anchor {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:var(--am-icon-lg);
    height:var(--am-icon-lg);
    border-radius:var(--am-radius-full);
    background:var(--am-bg-elevated);
    color:var(--am-text-primary);
    text-decoration:none;
    border:1px solid var(--am-border-default);
}

.amPhoto-thumb-pager-anchor:hover {
    border-color:var(--am-primary);
    color:var(--am-primary);
}

.amPhoto-thumb-pager-muted {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:var(--am-icon-lg);
    height:var(--am-icon-lg);
    color:var(--am-text-tertiary);
}

.amPhoto-thumb-scroll {
    display:flex;
    flex:1 1 auto;
    gap:var(--am-space-2);
    overflow-x:auto;
    overflow-y:hidden;
    padding:var(--am-space-1) 0;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
    min-width:0;
}

.amPhoto-thumb-scroll .amPhoto-gallery-slider-img {
    flex:0 0 auto;
}

.amPhoto-thumb-img {
    border-radius:var(--am-radius-sm);
}

.amPhoto-thumb-is-current .amPhoto-thumb-img {
    outline:2px solid var(--am-primary);
    outline-offset:2px;
}

.amPhoto-detail-stage {
    position:relative;
    outline:none;
    min-width:0;
    max-width:100%;
}

.amPhoto-detail-stage:focus-within {
    box-shadow:0 0 0 2px var(--am-border-strong);
    border-radius:var(--am-radius-md);
}

.amPhoto-detail-figure {
    margin:0;
    position:relative;
}

.amPhoto-detail-main-visual {
    display:flex;
    justify-content:center;
    align-items:center;
    background:var(--am-bg-sunken);
    border-radius:var(--am-radius-lg);
    padding:var(--am-space-2);
    min-height:200px;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
}

.amPhoto-detail-main-img {
    max-width:100%;
    height:auto;
    border-radius:var(--am-radius-md);
}

.amPhoto-detail-nav-overlay {
    position:absolute;
    inset:0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    pointer-events:none;
}

.amPhoto-detail-nav-hit {
    pointer-events:auto;
    display:flex;
    align-items:center;
    height:100%;
    padding:0 var(--am-space-2);
}

.amPhoto-detail-nav-hit--inactive {
    opacity:0.25;
}

.amPhoto-detail-circle-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    min-width:48px;
    min-height:48px;
    border-radius:var(--am-radius-full);
    background:var(--am-bg-elevated);
    border:1px solid var(--am-border-default);
    color:var(--am-text-primary);
    text-decoration:none;
    box-shadow:var(--am-shadow-sm);
}

.amPhoto-detail-circle-btn:hover {
    background:var(--am-bg-elevated);
    border-color:var(--am-primary);
    color:var(--am-primary);
}

.amPhoto-detail-hint {
    text-align:center;
    margin-top:var(--am-space-2);
}

.amPhoto-detail-hint-text {
    font-size:var(--am-font-xs);
    color:var(--am-text-tertiary);
}

.amPhoto-detail-caption {
    margin-top:var(--am-space-4);
}

/* Engagement (likes + share + tags jump) + comments:85% width centered */
.amPhoto-detail-engagement,
.amPhoto-detail-comments {
    width:85%;
    max-width:100%;
    min-width:0;
    margin-left:auto;
    margin-right:auto;
    box-sizing:border-box;
}

.amPhoto-detail-engagement {
    margin-top:var(--am-space-3);
    margin-bottom:var(--am-space-2);
}

.amPhoto-detail-engagement-row {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-3);
    justify-content:flex-start;
}

.amPhoto-detail-engagement-likes {
    flex:1 1 auto;
    min-width:0;
}

.amPhoto-detail-engagement-tools {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2);
    margin-left:auto;
    flex-shrink:0;
    position:relative;
    z-index:25;
}

.amPhoto-detail-tool-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:2.25rem;
    min-height:2.25rem;
    padding:var(--am-space-1);
    border-radius:var(--am-radius-md,6px);
    color:var(--am-text-secondary);
    background:transparent;
    border:1px solid transparent;
    box-sizing:border-box;
    cursor:pointer;
    text-decoration:none;
    line-height:0;
    transition:background-color 0.15s ease,color 0.15s ease,border-color 0.15s ease;
}

button.amPhoto-detail-tool-btn {
    font:inherit;
    margin:0;
    appearance:none;
    -webkit-appearance:none;
}

.amPhoto-detail-share-icon {
    display:block;
    flex-shrink:0;
}

a.amPhoto-detail-tool-btn:hover,
a.amPhoto-detail-tool-btn:focus-visible,
button.amPhoto-detail-tool-btn:hover,
button.amPhoto-detail-tool-btn:focus-visible,
.amPhoto-detail-share-summary:hover,
.amPhoto-detail-share-summary:focus-visible {
    color:var(--am-primary);
    background:var(--am-bg-elevated);
    border-color:var(--am-border-subtle);
    outline:none;
}

.amPhoto-detail-share-dd {
    position:relative;
}

.amPhoto-detail-share-summary {
    list-style:none;
}

.amPhoto-detail-share-summary::-webkit-details-marker {
    display:none;
}

.amPhoto-detail-share-menu {
    position:absolute;
    right:0;
    top:calc(100% + 4px);
    z-index:40;
    min-width:12rem;
    padding:var(--am-space-2);
    background:var(--am-bg-elevated);
    border:1px solid var(--am-border-subtle);
    border-radius:var(--am-radius-md,6px);
    box-shadow:0 4px 16px var(--am-shadow-md,rgba(0,0,0,0.12));
}

.amPhoto-detail-share-list {
    margin:0;
    padding:0;
    list-style:none;
}

.amPhoto-detail-share-item + .amPhoto-detail-share-item {
    margin-top:var(--am-space-1);
}

.amPhoto-detail-share-link {
    display:block;
    padding:var(--am-space-1) var(--am-space-2);
    font-size:var(--am-font-sm);
    color:var(--am-text-primary);
    text-decoration:none;
    border-radius:var(--am-radius-sm,4px);
}

.amPhoto-detail-share-link:hover,
.amPhoto-detail-share-link:focus-visible {
    background:var(--am-bg-muted);
    outline:none;
}

.amPhoto-detail-tags-panel {
    width:85%;
    max-width:100%;
    min-width:0;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:var(--am-space-3);
    padding:var(--am-space-3);
    box-sizing:border-box;
    border:1px solid var(--am-border-subtle);
    border-radius:var(--am-radius-md,6px);
    background:var(--am-bg-sunken);
}

.amPhoto-detail-tags-panel[hidden] {
    display:none !important;
}

.amPhoto-detail-tags-toggle[aria-expanded="true"] {
    color:var(--am-primary);
    background:var(--am-bg-elevated);
    border-color:var(--am-border-subtle);
}

.amPhoto-detail-tags-panel #tag_section {
    scroll-margin-top:var(--am-space-4);
}

.amPhoto-detail-comments {
    overflow-x:hidden;
    overflow-y:visible;
}

/* 1140 grid:.row has max-width:1280px — cap to card; flex comment rows must not expand past 100% */
.amPhoto-detail-body .amComment-form-table,
.amPhoto-detail-body .amComment-form-table.item,
.amPhoto-detail-body #comment_form_holder,
.amPhoto-detail-body #comment_form_section {
    max-width:100%;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment-form-table .container,
.amPhoto-detail-body .amComment-comment-form .container,
.amPhoto-detail-body .comment_page_section .container {
    max-width:100% !important;
    width:100% !important;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment-thread-row.row,
.amPhoto-detail-body .amComment-form-table .row,
.amPhoto-detail-body .amComment-comment-block .row {
    max-width:100% !important;
    width:100% !important;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment-form-cell-main,
.amPhoto-detail-body .amComment-form-cell-main.p5 {
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
}

/* Composer row:vertically center avatar next to the form (list rows stay top-aligned) */
.amPhoto-detail-body #comment_form_section .amComment-form-table .amComment-thread-row {
    align-items:center;
}

.amPhoto-detail-body .amPhoto-detail-engagement-likes .amPhoto-detail-like-feature {
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
}

.amPhoto-detail-body .amPhoto-detail-engagement-likes .amPhoto-detail-like-feature-inner {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2);
    min-width:0;
}

/* family/profile.css forces display:table on .comment_page_section and its direct div children — breaks amComment flex rows and gets clipped by am-card overflow:hidden */
.amPhoto-detail-body .comment_page_section {
    display:block !important;
    width:100%;
    max-width:100%;
    table-layout:unset;
}

.amPhoto-detail-body .comment_page_section > div {
    display:block !important;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    min-width:0;
}

.amPhoto-detail-body .comment_page_section .amComment-thread-container {
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
}

.amPhoto-detail-body .comment_page_section .amComment-itemlist-inner,
.amPhoto-detail-body .comment_page_section .comment_text {
    overflow-wrap:anywhere;
    word-break:break-word;
    max-width:100%;
}

.amPhoto-detail-body #comment_form_section,
.amPhoto-detail-body #comment_form_holder {
    display:block;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment-form-table.container,
.amPhoto-detail-body .amComment-form-table .container {
    width:100%;
    max-width:100%;
    min-width:0;
}

/* TinyMCE / editor chrome */
.amPhoto-detail-body .mce-tinymce,
.amPhoto-detail-body .mce-edit-area iframe {
    max-width:100% !important;
    box-sizing:border-box;
}

.amPhoto-detail-body .comment_page_section,
.amPhoto-detail-body #comment_form_section,
.amPhoto-detail-body .amComment-comment-form {
    box-sizing:border-box;
}

.amPhoto-detail-body .comment_page_section,
.amPhoto-detail-body #comment_form_holder,
.amPhoto-detail-body .amComment-form-cell-main {
    min-width:0;
    max-width:100%;
}

/* amLike likers popup defaults to 558px; keep inside viewport on narrow columns */
.amPhoto-detail-body .likers_box {
    width:min(558px,calc(100vw - 48px)) !important;
    max-width:100% !important;
    box-sizing:border-box;
}

.amPhoto-detail-body textarea.form_textarea,
.amPhoto-detail-body textarea#comment_text,
.amPhoto-detail-body .amComment-form-cell-main textarea {
    max-width:100% !important;
    width:100% !important;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment_upload_attachment,
.amPhoto-detail-body .amComment_upload_attachment .qq-uploader {
    max-width:100%;
    box-sizing:border-box;
}

.amPhoto-detail-body .amComment-form-submit-row {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2);
}

.amPhoto-detail-side-col {
    display:flex;
    justify-content:center;
    margin-top:var(--am-space-3);
}

@media screen and (max-width:767px) {
    .amPhoto-detail-nav-overlay {
        position:static;
        margin-top:var(--am-space-2);
        justify-content:center;
        gap:var(--am-space-6);
    }

    .amPhoto-detail-nav-hit {
        height:auto;
        padding:0;
    }

    .amPhoto-detail-main-visual {
        padding:var(--am-space-1);
    }
}

#amphoto-gallery-shell ul.amPhoto-index-photo-grid.amPhoto-gallery-mosaic {
    list-style:none;
    margin:0;
    padding:0;
}

.amPhoto-index-li {
    list-style:none;
    min-width:0;
}

.amPhoto-gallery-album-row {
    margin-bottom:var(--am-space-4);
}

.amPhoto-gallery-album-body {
    display:flex;
    flex-direction:column;
    gap:var(--am-space-4);
}

.amPhoto-gallery-album-title {
    margin:0 0 var(--am-space-1) 0;
    font-size:var(--am-font-lg);
}

.amPhoto-gallery-album-title a {
    color:var(--am-text-primary);
    text-decoration:none;
}

.amPhoto-gallery-album-title a:hover {
    color:var(--am-primary);
}

.amPhoto-gallery-album-desc {
    margin:0;
    color:var(--am-text-secondary);
    font-size:var(--am-font-sm);
}

.amPhoto-gallery-album-strip-wrap {
    min-width:0;
}

.amPhoto-gallery-album-strip .amPhoto-gallery-album-see {
    align-self:center;
    flex-shrink:0;
    margin-left:var(--am-space-2);
}

.amPhoto-gallery-album-actions {
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
    align-items:center;
}

@media screen and (min-width:1024px) {
    .amPhoto-gallery-album-body {
        flex-direction:row;
        align-items:flex-start;
    }

    .amPhoto-gallery-album-text {
        flex:0 0 200px;
        max-width:240px;
    }

    .amPhoto-gallery-album-strip-wrap {
        flex:1 1 auto;
    }

    .amPhoto-gallery-album-actions {
        flex:0 0 auto;
        margin-left:auto;
    }
}

.amPhoto-index-galleries-details {
    margin-bottom:var(--am-space-4);
    border:1px solid var(--am-border-subtle);
    border-radius:var(--am-radius-md);
    background:var(--am-bg-elevated);
    padding:var(--am-space-2) var(--am-space-3);
}

.amPhoto-index-galleries-summary {
    list-style:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--am-space-2);
    font-weight:600;
    color:var(--am-text-primary);
    cursor:pointer;
    user-select:none;
}

.amPhoto-index-galleries-summary::-webkit-details-marker {
    display:none;
}

.amPhoto-index-galleries-chevron {
    display:inline-flex;
    transition:transform var(--am-trans-fast);
    color:var(--am-text-secondary);
}

.amPhoto-index-galleries-details[open] .amPhoto-index-galleries-chevron {
    transform:rotate(90deg);
}

.amPhoto-index-gallery-cards-rail {
    margin-top:var(--am-space-3);
}

.amPhoto-index-gallery-cards-track {
    display:flex;
    flex-flow:row nowrap;
    gap:var(--am-space-3);
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x proximity;
    padding:var(--am-space-1) var(--am-space-1) var(--am-space-2) 0;
    -webkit-overflow-scrolling:touch;
}

.amPhoto-index-gallery-card {
    flex:0 0 min(220px,70vw);
    max-width:240px;
    scroll-snap-align:start;
}

.amPhoto-index-gallery-card-hit {
    display:block;
    text-decoration:none;
    color:inherit;
}

.amPhoto-index-gallery-card-hit:hover .amPhoto-index-gallery-card-label {
    color:var(--am-primary);
}

.amPhoto-index-gallery-card-media {
    border-radius:var(--am-radius-md);
    overflow:hidden;
    aspect-ratio:4 / 3;
    background:var(--am-bg-sunken);
}

.amPhoto-index-gallery-card-media img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.amPhoto-index-gallery-card-label {
    margin-top:var(--am-space-2);
    font-size:var(--am-font-sm);
    color:var(--am-text-primary);
    line-height:1.3;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.amPhoto-index-photo-toolbar {
    flex-wrap:wrap;
    align-items:flex-start;
    gap:var(--am-space-3);
}

.amPhoto-index-view-toolbar-inner {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2);
}

.amPhoto-index-view-btns {
    display:inline-flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
}

.amPhoto-gallery-toolbar-split.amPhoto-index-cols-wrap {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:var(--am-space-2);
}

#amphoto-gallery-shell:not([data-amphoto-view="grid"]) .amPhoto-index-cols-wrap {
    display:none !important;
}

.amPhoto-index-cols-wrap--hide {
    display:none !important;
}

.amPhoto-index-lightbox-slot {
    margin-left:auto;
}

@media screen and (max-width:767px) {
    .amPhoto-index-photo-toolbar .amPhoto-index-lightbox-slot {
        margin-left:0;
        width:100%;
    }
}

#amphoto-gallery-shell[data-amphoto-view="list"] ul.amPhoto-gallery-mosaic.amPhoto-index-view-target {
    display:flex !important;
    flex-direction:column !important;
    gap:var(--am-space-3);
    grid-template-columns:unset !important;
}

#amphoto-gallery-shell[data-amphoto-view="list"] .amPhoto-index-li-inner {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:var(--am-space-4);
    width:100%;
}

#amphoto-gallery-shell[data-amphoto-view="list"] .amPhoto-index-img-wrap {
    flex:0 0 min(140px,38vw);
    max-width:180px;
}

#amphoto-gallery-shell[data-amphoto-view="list"] .amPhoto-index-caption-wrap {
    text-align:left;
    flex:1 1 auto;
    margin-bottom:0 !important;
}

#amphoto-gallery-shell[data-amphoto-view="carousel"] ul.amPhoto-gallery-mosaic.amPhoto-index-view-target {
    display:flex !important;
    flex-flow:row nowrap !important;
    gap:var(--am-space-3);
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    padding-bottom:var(--am-space-2);
    grid-template-columns:unset !important;
    -webkit-overflow-scrolling:touch;
}

#amphoto-gallery-shell[data-amphoto-view="carousel"] .amPhoto-index-li {
    flex:0 0 min(85vw,420px);
    max-width:420px;
    scroll-snap-align:center;
}



/* modules/amPhotoAlbum/css/amPhotoAlbum.css */


/* Jamroom amPhotoAlbum module CSS — amCore tokens (var(--am-*)) */

.amPhotoAlbum-lightbox {
    float:left;
    padding-top:12px;
}

.amPhotoAlbum-lightbox a {
    text-decoration:none;
}

.amPhotoAlbum-lightbox a:hover {
    text-decoration:none;
}

.amPhotoAlbum-actions {
    position:absolute;
    top:15px;
    right:18px;
    display:none;
}

.amPhotoAlbum-box {
    position:inherit;
    width:400px;
    text-align:left;
    background-color:var(--am-bg-elevated);
    border:1px solid var(--am-border-default);
    border-radius:5px;
    padding:12px;
    display:none;
    z-index:1000001;
    overflow:visible;
    box-shadow:var(--am-shadow-sm);
}

.amPhotoAlbum-name {
    padding:5px;
}

.amPhotoAlbum-name a {
    width:80%;
    text-decoration:underline;
}

.amPhotoAlbum-count {
    width:10%;
    white-space:nowrap;
    font-size:10px;
    padding:5px;
}

.amPhotoAlbum-button {
    width:70px;
}

.amPhotoAlbum-success {
    border-radius:5px;
    background-color:var(--am-success-bg);
    color:var(--am-text-primary);
}

.amPhotoAlbum-error {
    border-radius:5px;
    background-color:var(--am-warning-bg);
    color:var(--am-text-primary);
}

#amPhotoAlbum-close,
#amPhotoAlbum-prev,
#amPhotoAlbum-next {
    cursor:pointer;
}

@media handheld,only screen and (max-width:767px) {
    .amPhotoAlbum-box {
        position:absolute;
        width:80%;
        right:0;
    }

    .amPhotoAlbum-button {
        width:50px;
    }

    .amPhotoAlbum-name {
        font-size:12px;
    }
}

/* -----------------------------------------------
   Cover image — list / index display
----------------------------------------------- */
.amPhotoAlbum-cover {
    margin-bottom:1em;
}

.amPhotoAlbum-cover-img {
    max-width:100%;
    height:auto;
    border-radius:4px;
}

/* -----------------------------------------------
   Cover picker — update form
----------------------------------------------- */
.amPhotoAlbum-cover-picker {
    margin-top:10px;
}

.amPhotoAlbum-cover-picker-grid {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:6px;
}

.amPhotoAlbum-cover-indicator {
    position:relative;
    display:inline-block;
    cursor:pointer;
}

.amPhotoAlbum-cover-selected {
    outline:3px solid var(--am-primary);
}

.amPhotoAlbum-set-cover-btn {
    font-size:0.75em;
    cursor:pointer;
    background:color-mix(in srgb,var(--am-text-primary) 50%,transparent);
    color:var(--am-text-inverse);
    padding:2px 6px;
    border-radius:3px;
    position:absolute;
    bottom:4px;
    left:4px;
    pointer-events:none;
}

/* -----------------------------------------------
   Privacy badges — item list display
----------------------------------------------- */
.amPhotoAlbum-privacy-badge {
    font-size:0.75em;
    padding:2px 6px;
    border-radius:3px;
    font-weight:bold;
    display:inline-block;
    margin-left:6px;
    vertical-align:middle;
}

.amPhotoAlbum-privacy-private {
    background:var(--am-danger);
    color:var(--am-text-inverse);
}

.amPhotoAlbum-privacy-followers {
    background:var(--am-warning);
    color:var(--am-text-inverse);
}

/* Layout — moved from inline templates */
.amPhotoAlbum-lightbox-heading {
    font-size:var(--am-font-lg,1.125rem);
    font-weight:600;
    margin:0 0 var(--am-space-3,12px);
}

.amPhotoAlbum-lightbox-heading a {
    text-decoration:none;
}

.amPhotoAlbum-lightbox-heading a:hover {
    text-decoration:underline;
}

.amPhotoAlbum-new-album-label {
    display:block;
    font-size:var(--am-font-sm,0.875rem);
    margin-bottom:var(--am-space-1,4px);
}

.amPhotoAlbum-xup-wrap {
    float:right;
    margin-top:12px;
}

.amPhotoAlbum-clear-float {
    clear:both;
}

.amPhotoAlbum-pa-relative {
    position:relative;
}

.amPhotoAlbum-button-wrap {
    display:inline-block;
}

.amPhotoAlbum-embed-pt0 {
    padding-top:0;
}

.amPhotoAlbum-embed-ml {
    margin-left:6px;
}

.amPhotoAlbum-embed-clear {
    clear:left;
}

.amPhotoAlbum-add-btn-margin {
    margin:0 2px 5px 0;
}

.amPhotoAlbum-add-td-pt {
    padding-top:12px;
}

.amPhotoAlbum-new-title-input {
    width:90%;
}

.amPhotoAlbum-indicator-img {
    display:none;
}

.amPhotoAlbum-msg-hidden {
    display:none;
}

.amPhotoAlbum-msg-cell {
    padding:0;
}

.amPhotoAlbum-embed-col-profile,
.amPhotoAlbum-embed-col-photos {
    width:16%;
}

.amPhotoAlbum-embed-col-btn {
    width:10%;
}

/* Sortable grids */
ul.sortable.amPhotoAlbum-photo-grid,
ul.sortable.amPhotoAlbum-guest-grid {
    margin:0;
    padding:0;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
}

ul.sortable.amPhotoAlbum-photo-grid.grid,
ul.sortable.amPhotoAlbum-guest-grid.grid {
    overflow:hidden;
}

ul.sortable.amPhotoAlbum-photo-grid > li,
ul.sortable.amPhotoAlbum-guest-grid > li {
    margin:0 auto;
    list-style:none;
    display:inline-block;
}

ul.sortable.amPhotoAlbum-guest-grid > li {
    width:32%;
}

ul.amPhotoAlbum-sortable-owner > li {
    cursor:move;
    padding:0;
    margin:0;
}

ul.amPhotoAlbum-sortable-owner a {
    cursor:move;
}

ul.amPhotoAlbum-sortable-owner .ui-sortable-placeholder {
    z-index:100;
    padding:0;
    margin:0;
}

ul.amPhotoAlbum-sortable-owner .ui-sortable-helper {
    padding:0;
    margin:0;
}


/* modules/amRating/css/amrating.css */


/**
 * Jamroom amRating Module Stylesheet
 *
 * @copyright 2026 The Arcitech
 *
 * NOTE:All CSS classes should be prefixed with the module name
 * to avoid conflicts with other modules and skins.
 */

/* Container */
.amrating-container {
    padding:20px;
}

/* Header */
.amrating-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:1px solid var(--am-border-default);
}

.amrating-header h1 {
    margin:0;
}

.amrating-actions {
    display:flex;
    gap:10px;
}

/* List */
.amrating-list {
    display:flex;
    flex-direction:column;
    gap:15px;
}

/* Item */
.amrating-item {
    padding:15px;
    border:1px solid var(--am-border-default);
    border-radius:4px;
    background:var(--am-bg-base);
}

.amrating-item-title {
    margin:0 0 10px 0;
}

.amrating-item-title a {
    color:var(--am-text-primary);
    text-decoration:none;
}

.amrating-item-title a:hover {
    color:var(--am-primary);
}

.amrating-item-description {
    margin:0 0 10px 0;
    color:var(--am-text-secondary);
}

.amrating-item-meta {
    font-size:0.85em;
    color:var(--am-text-tertiary);
}

.amrating-item-meta span {
    margin-right:15px;
}

.amrating-item-actions {
    margin-top:10px;
    padding-top:10px;
    border-top:1px solid var(--am-border-default);
}

/* Detail */
.amrating-detail {
    padding:20px;
}

.amrating-detail-header {
    margin-bottom:20px;
    padding-bottom:15px;
    border-bottom:1px solid var(--am-border-default);
}

.amrating-detail-title {
    margin:0 0 10px 0;
}

.amrating-detail-meta {
    font-size:0.9em;
    color:var(--am-text-secondary);
}

.amrating-detail-content {
    margin:20px 0;
    line-height:1.6;
}

.amrating-detail-actions {
    margin-top:20px;
    padding-top:15px;
    border-top:1px solid var(--am-border-default);
}

/* Empty state */
.amrating-empty {
    padding:40px;
    text-align:center;
    color:var(--am-text-tertiary);
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
    .amrating-stars-row {
        gap:0;
        justify-content:space-between;
        width:100%;
        max-width:100%;
    }
}

/* ------------------------------------------------------------------
 * Rate modal + star picker (cross-module targets)
 * ------------------------------------------------------------------ */

.amrating-rate-page__title {
    margin:0 0 var(--am-space-3);
    font-size:var(--am-font-size-lg);
    font-weight:var(--am-font-weight-semibold);
}

.amrating-stars-field {
    margin:var(--am-space-3) 0;
}

.amrating-stars-field__label {
    display:block;
    margin-bottom:var(--am-space-2);
    font-size:var(--am-font-xs-rem,var(--am-font-xs));
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:0.04em;
    color:var(--am-text-secondary);
}

.amrating-stars-row {
    display:inline-flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:var(--am-space-1);
}

.amrating-star-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:var(--am-space-1);
    margin:0;
    border:none;
    border-radius:var(--am-radius-sm);
    background:transparent;
    cursor:pointer;
    line-height:0;
    min-width:var(--am-touch-min,44px);
    min-height:var(--am-touch-min,44px);
}

.amrating-star-btn:focus-visible {
    outline:2px solid var(--am-border-focus);
    outline-offset:2px;
}

.amrating-star-btn__img {
    display:block;
    pointer-events:none;
}

.amrating-stars-field__hint {
    margin:var(--am-space-2) 0 0;
    font-size:var(--am-font-xs-rem,var(--am-font-xs));
    color:var(--am-text-tertiary);
}

.amrating-rate-form__review-label {
    display:block;
    margin:var(--am-space-4) 0 var(--am-space-2);
    font-weight:600;
    font-size:var(--am-font-sm-rem,var(--am-font-sm));
}

.amrating-rate-form__review {
    width:100%;
    box-sizing:border-box;
}

.amrating-rate-form__footer {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:var(--am-space-2);
}

.amrating-rate-page__footer {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-end;
    gap:var(--am-space-2);
}


/* modules/amTags/css/amTags.css */


.tag_name_box {
    float:left;
    width:unset;
    background-color:var(--am-bg-base);
    border-width:1px;
    border-color:var(--am-border-default);
    border-style:solid;
    border-radius:5px;
    padding:3px 6px 6px 6px;
    margin:6px 6px 0 0;
    font-size:12px;
    text-transform:uppercase;
}

.tag_name_box a {
    text-decoration:none;
}

.tag_name_box:hover {
    background-color:var(--am-bg-elevated);
}

#tag_holder {
    position:relative;
    margin:0 auto;
    text-align:center;
}

#tag_form_box {
    padding:0;
}

#tag_text {
    margin:0;
    width:200px;
}

#tag_submit {
    margin-top:0;
}

.amTags-tag-add-row {
    display:flex;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:var(--am-space-2);
}

.amTags-tag-add-row #tag_text {
    flex:1;
    min-width:0;
    width:auto;
}

.amTags-tag-submit--icon-only {
    flex:0 0 auto;
    min-width:44px;
    padding-inline:var(--am-space-3);
}

.amTags-tag-submit-glyph {
    font-size:1.35rem;
    font-weight:600;
    line-height:1;
}

.amTags-existing-tags-host {
    margin-top:var(--am-space-4);
}

.amTags-existing-tags-heading {
    margin:0 0 var(--am-space-2);
    font-size:var(--am-font-sm-rem,var(--am-font-sm));
    font-weight:600;
    color:var(--am-text-secondary);
}

.amTags-empty-state {
    margin:0;
    font-size:var(--am-font-sm-rem,var(--am-font-sm));
    color:var(--am-text-secondary);
}

.amTags-existing-tags-inner .amTags-item-tag-list {
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-wrap:wrap;
    gap:var(--am-space-2);
}

.amTags-existing-tags-inner .amTags-item-tag-item {
    margin:0;
    padding:0;
}

.amTags-existing-tags-inner .tag_name_box {
    float:none;
    margin:0;
}

.amTags-tag-submit-meta {
    margin-top:var(--am-space-2);
}

.amTags-tag-form-screen-title {
    margin:0 0 var(--am-space-3);
    font-size:var(--am-font-lg-rem,var(--am-font-lg));
}

#tag_cloud {
    background-color:var(--am-bg-sunken);
    color:var(--am-text-primary);
    border-radius:5px 5px 0 0; 
}

#tag_cloud:hover {
    background-color:var(--am-text-primary);
    color:var(--am-text-inverse);
}

#tag_cloud_button a {
    text-decoration:none;
}

#profile_tag_cloud {
    display:inline-block;
}

.tag_name_box_small {
    float:left;
    background-color:var(--am-bg-base);
    border-width:1px;
    border-color:var(--am-border-default);
    border-style:solid;
    border-radius:4px;
    padding:2px 5px 2px 5px;
    margin:4px 4px 0 0;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:1px;
    font-family:monospace;
}

/* tags hidden by default */
.row_tag_list {
    display:none;
}

.tagit li.tag {
    background:var(--am-bg-sunken);
    border:0;
    border-radius:4px;
    padding:3px 6px;
    font-size:12px;
    font-weight:bold;
    text-transform:uppercase;
}

li.tagit-edit-handle {
    width:100%;
}

li input.no-style {
    width:100%;
}

.tagit-edit-handle .no-style {
    font-family:inherit;
}

#tag_message {
    padding:5px 10px;
    display:none;
    border-radius:5px;
}

.amTags-tag-list .amTags-tag-chip-list {
    list-style:none;
    margin:0 0 0.75em;
    padding:0;
    display:flex;
    flex-wrap:wrap;
    gap:0.35em 0.5em;
}

.amTags-tag-chip-item {
    margin:0;
    padding:0;
}

.amTags-tag-chip-link {
    display:inline-block;
    padding:0.2em 0.55em;
    border-radius:4px;
    background:var(--am-bg-elevated);
    text-decoration:none;
    font-weight:600;
    font-size:0.9em;
}

.amTags-tag-chip-count {
    margin-left:0.25em;
    font-size:0.85em;
    opacity:0.75;
}

.amTags-current-tag {
    margin-bottom:0.75em;
}

.amTags-tag-page-link {
    font-weight:700;
    text-decoration:none;
}

.amTags-tag-hit-count {
    display:inline-block;
    margin-left:0.5em;
    padding:0.1em 0.45em;
    border-radius:3px;
    background:var(--am-border-subtle);
    font-size:0.85em;
}

.amTags-float-clear {
    clear:both;
}

.amTags-tag-delete-btn {
    cursor:pointer;
}

.amTags-jqcloud-canvas {
    display:inline-block;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}


/* modules/amTags/contrib/jqcloud/jqcloud.css */


/* fonts */

div.jqcloud {
  font-family:inherit;
  font-size:12px;
  line-height:normal;
}

div.jqcloud a {
  font-size:inherit;
  text-decoration:none;
}

div.jqcloud span.w10 { font-size:550%; }
div.jqcloud span.w9 { font-size:500%; }
div.jqcloud span.w8 { font-size:450%; }
div.jqcloud span.w7 { font-size:400%; }
div.jqcloud span.w6 { font-size:350%; }
div.jqcloud span.w5 { font-size:300%; }
div.jqcloud span.w4 { font-size:250%; }
div.jqcloud span.w3 { font-size:200%; }
div.jqcloud span.w2 { font-size:150%; }
div.jqcloud span.w1 { font-size:100%; }

/* colors */

div.jqcloud { color:#09f; }
div.jqcloud a { color:inherit; }
div.jqcloud a:hover { color:#0df; }
div.jqcloud a:hover { color:#0cf; }
div.jqcloud span.w10 { color:#0cf; }
div.jqcloud span.w9 { color:#0cf; }
div.jqcloud span.w8 { color:#0cf; }
div.jqcloud span.w7 { color:#39d; }
div.jqcloud span.w6 { color:#90c5f0; }
div.jqcloud span.w5 { color:#90a0dd; }
div.jqcloud span.w4 { color:#90c5f0; }
div.jqcloud span.w3 { color:#a0ddff; }
div.jqcloud span.w2 { color:#99ccee; }
div.jqcloud span.w1 { color:#aab5f0; }

/* layout */

div.jqcloud {
  overflow:hidden;
  position:relative;
}

div.jqcloud span { padding:0; }



/* modules/amVideo/css/module.css */


/*
Combined and refactored styles for the amVideo module.
This file consolidates styles from the legacy HTML5 player and the watch page,
and introduces modern CSS practices like variables for easier theming.

jrElastic2 design tokens — skins/jrElastic2/css/design-tokens.css:
Use var(--jr-bg-surface),var(--jr-border),var(--jr-accent) for generic UI; module
variables below remain for player chrome and legacy watch layouts.
*/

:root {
  --amVideo-primary-color:#e53935;
  --amVideo-background-color:#000;
  --amVideo-text-color:#fff;
  --amVideo-control-bg:rgba(0,0,0,0.62);
  --amVideo-progress-bg:#333;
  --amVideo-progress-buffered:#555;
  --amVideo-border-radius:12px;
  --amVideo-font-family:sans-serif;
}

/* Base player container styles - defined here,overridden in specific contexts */
.amVideo-html5-player {
    position:relative;
    max-width:100%;
    background:var(--amVideo-background-color);
    color:var(--amVideo-text-color);
    border-radius:var(--amVideo-border-radius);
    overflow:hidden;
    box-shadow:0 10px 24px rgba(0,0,0,.35),0 4px 8px rgba(0,0,0,.2);
    font-family:var(--amVideo-font-family);
}

.amVideo-video {
    width:100%;
    height:auto;
    display:block;
    background:#000;
    aspect-ratio:16/9;
    object-fit:contain;
}

.amVideo-controls {
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    background:var(--amVideo-control-bg);
    backdrop-filter:saturate(120%) blur(2px);
    transition:opacity .2s ease;
}

.amVideo-controls button:focus,
.amVideo-controls select:focus,
.amVideo-controls input:focus {
    outline:2px solid #66afe9;
    outline-offset:2px;
}

.amVideo-html5-player:not(.amVideo-controls-visible) .amVideo-controls {
    opacity:0;
    pointer-events:none;
}

.amVideo-html5-player.amVideo-controls-visible .amVideo-controls {
    opacity:1;
}

.amVideo-btn {
    width:35px;
    height:35px;
    border:0;
    background-color:transparent;
    border-radius:6px;
    cursor:pointer;
    box-shadow:none;
    outline:none;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:20px;
}

.amVideo-btn:hover {
    filter:brightness(1.2);
}

.amVideo-btn:active {
    transform:scale(0.98);
}

.amVideo-btn.amVideo-play { background-image:url("../img/icons/play.svg"); }
.amVideo-btn.amVideo-pause { background-image:url("../img/icons/pause.svg"); }
.amVideo-btn.amVideo-mute { background-image:url("../img/icons/volume.svg"); }
.amVideo-btn.amVideo-mute.is-muted { background-image:url("../img/icons/mute.svg"); }
.amVideo-btn.amVideo-fullscreen { background-image:url("../img/icons/fullscreen.svg"); }
.amVideo-btn.amVideo-pip { background-image:url("../img/icons/pip.svg"); }

.amVideo-time {
    color:#ddd;
    font:14px/1.3 var(--amVideo-font-family);
    display:flex;
    gap:6px;
    align-items:center;
}

.amVideo-progress {
    position:relative;
    flex:1;
    height:6px;
    background:var(--amVideo-progress-bg);
    border-radius:3px;
    cursor:pointer;
}

.amVideo-progress .amVideo-buffered {
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:0;
    background:var(--amVideo-progress-buffered);
    border-radius:3px;
}

.amVideo-progress .amVideo-played {
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:0;
    background:var(--amVideo-primary-color);
    border-radius:3px;
}

/* Legacy layout utilities (inline style replacements) */
.amVideo-table {
    display:table;
    width:100%;
}

.amVideo-table-95 {
    width:95%;
}

.amVideo-table-row {
    display:table-row;
}

.amVideo-table-cell {
    display:table-cell;
}

.amVideo-cell-5 { width:5%; }
.amVideo-cell-10 { width:10%; }
.amVideo-cell-20 { width:20%; }
.amVideo-cell-35 { width:35%; }
.amVideo-cell-48 { width:48%; }
.amVideo-cell-52 { width:52%; }
.amVideo-cell-65 { width:65%; }
.amVideo-cell-70 { width:70%; }
.amVideo-cell-90 { width:90%; }
.amVideo-cell-100 { width:100%; }

.amVideo-v-middle {
    vertical-align:middle;
}

.amVideo-align-content-center {
    align-content:center;
}

.amVideo-float-right {
    float:right;
}

.amVideo-float-left {
    float:left;
}

.amVideo-hidden {
    display:none;
}

.amVideo-pr-10 { padding-right:10px; }
.amVideo-pr-15 { padding-right:15px; }
.amVideo-pl-5 { padding-left:5px; }
.amVideo-pl-10 { padding-left:10px; }
.amVideo-pl-15 { padding-left:15px; }
.amVideo-pt-10 { padding-top:10px; }
.amVideo-pb-5 { padding-bottom:5px; }
.amVideo-p-10 { padding:10px; }
.amVideo-pb-12 { padding-bottom:12px; }

.amVideo-mt-1 { margin-top:1px; }
.amVideo-mt-3 { margin-top:3px; }
.amVideo-mt-6 { margin-top:6px; }
.amVideo-mt-12 { margin-top:12px; }
.amVideo-mb-2 { margin-bottom:2px; }
.amVideo-ml-6 { margin-left:6px; }
.amVideo-ml-20 { margin-left:20px; }

.amVideo-width-90 { width:90%; }
.amVideo-width-98 { width:98%; }
.amVideo-width-100 { width:100%; }
.amVideo-width-2 { width:2%; }
.amVideo-width-5 { width:5%; }
.amVideo-width-16 { width:16%; }
.amVideo-width-25 { width:25%; }
.amVideo-width-43 { width:43%; }
.amVideo-width-50 { width:50%; }
.amVideo-width-60px { width:60px; }

.amVideo-text-center { text-align:center; }
.amVideo-text-right { text-align:right; }

.amVideo-inline-block { display:inline-block; }
.amVideo-block { display:block; }
.amVideo-width-85 { width:85%; }
.amVideo-width-130 { width:130px; }
.amVideo-line-height-2 { line-height:2; }

.amVideo-text-uppercase {
    text-transform:uppercase;
}

.amVideo-media-height-90 {
    height:90px;
}

.amVideo-img-height-110 {
    height:110px;
}

.amVideo-height-275 {
    height:275px;
}

.amVideo-description-scroll {
    max-width:555px;
    overflow:auto;
    height:75px;
}

.filter_option_pill {
    display:inline-block;
    margin-right:10px;
    margin-bottom:5px;
}

.filter_option_pill.is-disabled {
    opacity:0.6;
    cursor:default;
}

.filter_option_pill.is-clickable {
    cursor:pointer;
}

.amVideo-filter-empty {
    padding:10px;
    color:#999;
    font-style:italic;
}

/* Tooltips */
.amVideo-seek-tooltip,
.amVideo-preview {
    position:absolute;
    bottom:140%;
    transform:translateX(-50%);
    background:rgba(0,0,0,.86);
    color:#fff;
    padding:3px 8px;
    border-radius:6px;
    font-size:11px;
    pointer-events:none;
    white-space:nowrap;
    box-shadow:0 2px 6px rgba(0,0,0,.35);
    z-index:5;
    opacity:0;
    visibility:hidden;
    transition:opacity .15s ease;
}

.amVideo-progress:hover .amVideo-seek-tooltip,
.amVideo-progress:hover .amVideo-preview {
    opacity:1;
    visibility:visible;
}

.amVideo-preview {
    width:160px;
    height:90px;
    padding:0;
    border:1px solid #444;
}

.amVideo-preview-img {
    width:100%;
    height:100%;
    object-fit:cover;
}

/* Volume */
.amVideo-volume {
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:8px;
}

.amVideo-volume-range {
    width:120px;
    height:8px;
}

/* Watch Page & Theater Mode */
.watch-row .col3 { float:right; }

.amVideo-theater-mode .watch-row .col3 { display:none !important; }
.amVideo-theater-mode .watch-row .col9 { width:100% !important; }

.amVideo-html5-player.amVideo-theater {
    max-width:none;
    width:100%;
    border-radius:0 !important;
}

.amVideo-theater-mode .amVideo-html5-player.amVideo-theater {
    position:relative;
    z-index:3;
    width:100% !important;
    max-width:100% !important;
    left:auto;
    right:auto;
    margin:0 !important;
}

.amVideo-theater-mode .amVideo-html5-player.amVideo-theater .amVideo-video {
    height:85vh !important;
    max-height:85vh !important;
    border-radius:0;
}

/* Sidebar Playlist */
.amVideo-pl { display:flex; flex-direction:column; gap:8px; }
.amVideo-pl-item {
    display:flex;
    gap:10px;
    align-items:center;
    padding:6px;
    border-radius:6px;
    background:#0b0b0b;
    color:var(--amVideo-text-color);
    text-decoration:none;
}
.amVideo-pl-item:hover { background:#111; }
.amVideo-pl-item.is-current{ background:#0f172a; }

.amVideo-pl-thumb {
    width:100px;
    height:56px;
    flex-shrink:0;
    border-radius:6px;
    overflow:hidden;
    background:#222;
}
.amVideo-pl-img { width:100%; height:100%; object-fit:cover; }
.amVideo-pl-meta { min-width:0; }
.amVideo-pl-title { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.amVideo-pl-sub { font-size:11px; color:#bbb; }

/* Basic layout utilities */
.amVideo-container {
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:0 15px;
}

.amVideo-row {
    display:flex;
    flex-wrap:wrap;
    margin:0 -15px;
}

/* Slider Template Styles */
.amVideo-debug-overlay {
    position:absolute;
    top:10px;
    left:10px;
    background:rgba(255,0,0,0.9);
    color:white;
    padding:8px;
    font-size:12px;
    z-index:1000;
    border-radius:4px;
}

.amVideo-main-fallback {
    width:100%;
    height:100%;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    text-align:center;
    padding:20px;
}

.amVideo-main-fallback-content {
    display:flex;
    flex-direction:column;
    align-items:center;
}

.amVideo-main-fallback-icon {
    font-size:48px;
    margin-bottom:15px;
    opacity:0.8;
}

.amVideo-main-fallback-title {
    margin:0 0 10px 0;
    font-size:24px;
}

.amVideo-main-fallback-text {
    margin:0;
    opacity:0.9;
}

.amVideo-debug-overlay-fixed {
    position:fixed;
    top:80px;
    left:10px;
    background:rgba(0,0,255,0.9);
    color:white;
    padding:8px;
    font-size:12px;
    z-index:1000;
    border-radius:4px;
}

.amVideo-thumbnail-fallback {
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    text-align:center;
    padding:10px;
}

.amVideo-thumbnail-fallback-add {
    background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 100%);
}

.amVideo-thumbnail-fallback-upload {
    background:linear-gradient(135deg,#a8edea 0%,#fed6e3 100%);
}

.amVideo-thumbnail-fallback-watch {
    background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);
}

.amVideo-thumbnail-fallback-content {
    display:flex;
    flex-direction:column;
    align-items:center;
}

.amVideo-thumbnail-fallback-icon {
    font-size:24px;
    margin-bottom:5px;
}

.amVideo-thumbnail-fallback-text {
    font-size:12px;
}

.amVideo-debug-overlay-right {
    position:fixed;
    top:10px;
    right:10px;
    background:rgba(0,255,0,0.9);
    color:white;
    padding:8px;
    font-size:12px;
    z-index:1000;
    border-radius:4px;
    max-width:300px;
}

.amVideo-debug-overlay-bottom {
    position:fixed;
    bottom:10px;
    right:10px;
    background:rgba(255,165,0,0.9);
    color:white;
    padding:8px;
    font-size:12px;
    z-index:1000;
    border-radius:4px;
    max-width:300px;
}

.amVideo-debug-panel {
    background:#e0e0ff;
    padding:10px;
    margin:5px 0;
    border:1px solid #00c;
    font-family:monospace;
    font-size:11px;
}

.amVideo-debug-panel strong {
    color:#00c;
}

.amVideo-mini-fallback {
    width:100%;
    height:120px;
    background:linear-gradient(135deg,#ff6b6b 0%,#4ecdc4 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    text-align:center;
    padding:10px;
}

.amVideo-mini-fallback-content {
    display:flex;
    flex-direction:column;
    align-items:center;
}

.amVideo-mini-fallback-icon {
    font-size:24px;
    margin-bottom:5px;
    opacity:0.8;
}

.amVideo-mini-fallback-title {
    font-size:12px;
    font-weight:bold;
}

.amVideo-mini-fallback-text {
    font-size:10px;
    opacity:0.9;
}

.amVideo-interactive-fallback {
    width:100%;
    height:200px;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    text-align:center;
    padding:20px;
    border-radius:8px;
}

.amVideo-interactive-fallback-content {
    display:flex;
    flex-direction:column;
    align-items:center;
}

.amVideo-interactive-fallback-icon {
    font-size:36px;
    margin-bottom:10px;
    opacity:0.8;
}

.amVideo-interactive-fallback-title {
    font-size:16px;
    font-weight:bold;
}

.amVideo-interactive-fallback-text {
    font-size:12px;
    opacity:0.9;
}

.amVideo-error-message {
    padding:20px;
    background:rgb(65,3,3);
    border:2px solid red;
    margin:10px 0;
}

.amVideo-debug-panel-hero {
    background:#f0f0f0;
    padding:15px;
    margin:10px 0;
    border:2px solid #333;
    font-family:monospace;
    font-size:12px;
}

.amVideo-debug-panel-hero strong {
    color:#c00;
}

.amVideo-debug-info {
    background:#d1ecf1;
    padding:10px;
    margin:5px 0;
    border:1px solid #0c5460;
}

.amVideo-quality-menu-hidden {
    display:none;
}

.amVideo-speed-menu-hidden {
    display:none;
}

/* Player Template Styles */
.amVideo-playbtn-relative {
    position:relative;
}

.amVideo-controls-width-55 {
    width:55px;
}

.amVideo-controls-margin-left {
    margin-left:5px;
}

.amVideo-controls-secondary {
    width:16px;
    margin-right:6px;
    margin-left:5px;
}

.amVideo-time-separator {
    float:left;
    font-size:.64em;
    font-style:oblique;
}

.amVideo-time-separator-flashback {
    margin-top:2px;
}

.amVideo-time-separator-default {
    margin-top:-1px;
}

.amVideo-playlist-visible {
    max-height:150px;
    overflow:auto;
}

.amVideo-playlist-hidden {
    display:none;
}

/* Index/Explore Template Styles */
.amVideo-filters-controls {
    margin-bottom:20px;
}

.amVideo-flex-between {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
}

.amVideo-flex-wrap {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
    flex:1 1 auto;
    min-width:300px;
}

.amVideo-search-wrapper {
    flex:0 1 auto;
    min-width:280px;
    max-width:400px;
}

.amVideo-search-container {
    display:flex;
    gap:8px;
    align-items:center;
    justify-content:flex-end;
}

.amVideo-reset-link {
    flex-shrink:0;
    display:flex;
    justify-content:center;
    align-items:center;
}

.amVideo-view-toggle-container {
    display:flex;
    gap:5px;
    flex:0 0 auto;
    margin-left:auto;
}

.amVideo-hidden-options {
    display:none;
    padding:10px 0;
    border-top:1px solid #ddd;
    margin-top:10px;
}

.amVideo-sort-pill-trigger,
.amVideo-filter-pill-trigger {
    display:inline-block;
    padding:6px 12px;
    background:#f5f5f5;
    border:1px solid #ddd;
    border-radius:20px;
    color:#666;
    font-size:13px;
    cursor:pointer;
    transition:all 0.2s ease;
    margin-right:8px;
}

.amVideo-sort-pill-trigger:hover,
.amVideo-filter-pill-trigger:hover {
    background:#e74c3c;
    color:white;
    border-color:#e74c3c;
}

.amVideo-sort-option {
    display:inline-block;
    margin-right:10px;
}

.amVideo-sort-option-disabled {
    opacity:0.6;
    cursor:default;
}

.amVideo-sort-option-pill {
    display:inline-block;
    padding:6px 12px;
    background:#f5f5f5;
    border:1px solid #ddd;
    border-radius:20px;
    color:#666;
    font-size:13px;
    margin-right:8px;
    margin-bottom:5px;
}

.amVideo-sort-link {
    text-decoration:none;
    color:inherit;
}

.amVideo-sort-link:hover {
    text-decoration:none;
}

.amVideo-filter-option {
    display:inline-block;
    margin-right:10px;
    margin-bottom:5px;
}

.amVideo-filter-option-pill {
    display:inline-block;
    padding:6px 12px;
    background:#f5f5f5;
    border:1px solid #ddd;
    border-radius:20px;
    color:#666;
    font-size:13px;
    margin-right:8px;
    margin-bottom:5px;
}

.amVideo-filter-link {
    text-decoration:none;
    color:inherit;
}

.amVideo-filter-link:hover {
    text-decoration:none;
}

.amVideo-filter-options-container {
    display:none;
    padding:10px 0;
    border-top:1px solid #ddd;
    margin-top:10px;
}

.amVideo-filter-options-container.amVideo-hidden-options {
    display:none;
}

.amVideo-active-filters {
    margin:15px 0;
    padding:10px;
    background:#f8f9fa;
    border-radius:5px;
}

.amVideo-active-filters-content {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}

.amVideo-active-filters-label {
    font-weight:600;
    color:#333;
}

.amVideo-filter-tag {
    background:#e74c3c;
    color:white;
    padding:4px 12px;
    border-radius:20px;
    font-size:13px;
}

.amVideo-filter-tag-remove {
    color:white;
    margin-left:6px;
    text-decoration:none;
}

.amVideo-video-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
    gap:20px;
}

.amVideo-video-list {
    display:block;
}

/* Explore Template Styles */
.amVideo-explore-hero {
    position:relative;
    width:100%;
    height:450px;
    border-radius:12px;
    overflow:hidden;
    margin-bottom:30px;
    box-shadow:0 8px 30px rgba(0,0,0,0.2);
    background:#f0f0f0;
    z-index:1;
}

.amVideo-hero-fallback {
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    display:flex;
    align-items:center;
    justify-content:center;
}

.amVideo-hero-fallback-overlay {
    background:rgba(0,0,0,0.3);
    position:relative;
    text-align:center;
}

.amVideo-hero-explore-btn {
    background:#ff0000;
}

/* Embed Template Styles */
.amVideo-embed-not-found {
    color:#fff;
    text-align:center;
    padding:40px;
}

/* Debug Template Styles */
.amVideo-debug-section {
    padding:20px;
    margin-bottom:20px;
    border-radius:8px;
}

.amVideo-debug-warning {
    background:#fff3cd;
    border:2px solid #ffc107;
}

.amVideo-debug-info {
    background:#d1ecf1;
    border:2px solid #0c5460;
}

.amVideo-debug-success {
    background:#d4edda;
    border:2px solid #c3e6cb;
}

.amVideo-debug-section-title {
    margin:0 0 15px 0;
}

.amVideo-debug-warning .amVideo-debug-section-title {
    color:#856404;
}

.amVideo-debug-info .amVideo-debug-section-title {
    color:#0c5460;
}

.amVideo-debug-success .amVideo-debug-section-title {
    color:#155724;
}

.amVideo-debug-content {
    font-family:monospace;
    font-size:13px;
}

.amVideo-debug-table {
    border-collapse:collapse;
    width:100%;
    margin-top:10px;
}

.amVideo-debug-table-header {
    background:#f8f9fa;
}

.amVideo-debug-error {
    background:#f8d7da;
    padding:10px;
    border-radius:5px;
    color:#721c24;
    margin-top:10px;
}

.amVideo-debug-active-cell {
    background:#d4edda;
}

.amVideo-debug-inactive-cell {
    background:#f8d7da;
}

.amVideo-debug-actions {
    padding:20px;
    text-align:center;
}

/* Cards Admin Template Styles */
.amVideo-cards-builder {
    margin-top:12px;
}

.amVideo-cursor-pointer {
    cursor:pointer;
}

/* Explore Template Additional Styles */
.amVideo-section-title {
    font-size:24px;
    font-weight:800;
    margin:0 0 20px 0;
    color:#1a1a1a;
    display:flex;
    align-items:center;
    gap:10px;
}

.amVideo-section-icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    border-radius:10px;
    box-shadow:0 4px 12px rgba(102,126,234,0.3);
}

.amVideo-section-icon i {
    color:white;
    font-size:18px;
}

.amVideo-section-margin {
    margin-bottom:32px;
}

.amVideo-hover-video {
    width:100%;
    height:100%;
    object-fit:cover;
}

/* Column classes */
.amVideo-col3 { width:25%; }
.amVideo-col9 { width:75%; }
.amVideo-col8 { width:66.666%; }
.amVideo-col4 { width:33.333%; }
.amVideo-col12 { width:100%; }

/* Typography classes */
.amVideo-title-list-item {
    font-size:18px;
    font-weight:600;
    margin-bottom:8px;
}

.amVideo-title-list-item a {
    color:#333;
    text-decoration:none;
}

.amVideo-title-list-item a:hover {
    color:#e74c3c;
}

.amVideo-date {
    font-size:14px;
    color:#666;
    margin-bottom:8px;
}

.amVideo-date a {
    color:#666;
    text-decoration:none;
}

.amVideo-date a:hover {
    color:#e74c3c;
}

.amVideo-info-c {
    font-size:14px;
    color:#666;
    margin-bottom:12px;
}

.amVideo-list-item-text {
    font-size:14px;
    color:#333;
    margin-bottom:6px;
}

.amVideo-list-item-text a {
    color:#333;
    text-decoration:none;
}

.amVideo-list-item-text a:hover {
    color:#e74c3c;
}

.amVideo-list-item-text-small {
    font-size:12px;
    color:#999;
}

.amVideo-bottom-baseline {
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #eee;
}

/* Button classes */
.amVideo-comment-button {
    display:inline-block;
    margin-right:8px;
}

.amVideo-comment-button a {
    display:inline-flex;
    align-items:center;
    gap:4px;
    color:#666;
    text-decoration:none;
}

.amVideo-comment-button a:hover {
    color:#e74c3c;
}

.amVideo-like-button-box {
    display:inline-block;
    margin-right:8px;
}

.amVideo-like-button-box a {
    display:inline-flex;
    align-items:center;
    gap:4px;
    color:#666;
    text-decoration:none;
}

.amVideo-like-button-box a:hover {
    color:#e74c3c;
}

.amVideo-like-button-img {
    vertical-align:middle;
}

.amVideo-more-buttons {
    display:inline-block;
    padding:6px 12px;
    background:#f5f5f5;
    border:1px solid #ddd;
    border-radius:4px;
    color:#666;
    font-size:13px;
    cursor:pointer;
    transition:all 0.2s ease;
}

.amVideo-more-buttons:hover {
    background:#e74c3c;
    color:white;
    border-color:#e74c3c;
}

/* Form classes */
.amVideo-form-button {
    padding:8px 16px;
    background:#e74c3c;
    color:white;
    border:none;
    border-radius:4px;
    font-size:14px;
    font-weight:500;
    cursor:pointer;
    transition:all 0.2s ease;
}

.amVideo-form-button:hover {
    background:#c0392b;
}

.amVideo-form-text {
    padding:8px 12px;
    border:1px solid #ddd;
    border-radius:4px;
    font-size:14px;
    width:100%;
}

.amVideo-form-text:focus {
    outline:none;
    border-color:#e74c3c;
}

.amVideo-form-text-search {
    padding:8px 40px 8px 16px;
}

.amVideo-form-select {
    padding:8px 12px;
    border:1px solid #ddd;
    border-radius:4px;
    font-size:14px;
    background:white;
}

.amVideo-form-select:focus {
    outline:none;
    border-color:#e74c3c;
}

.amVideo-form-checkbox {
    width:18px;
    height:18px;
    cursor:pointer;
}

.amVideo-list-pager {
    padding:6px 10px;
    font-size:13px;
}

/* Subscribe button */
.amVideo-subscribe-btn {
    padding:10px 24px;
    background:#e74c3c;
    color:white;
    border:none;
    border-radius:24px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:all 0.2s ease;
}

.amVideo-subscribe-btn:hover {
    background:#c0392b;
}

.amVideo-subscribe-btn.amVideo-subscribed {
    background:#95a5a6;
}

.amVideo-subscribe-btn.amVideo-subscribed:hover {
    background:#7f8c8d;
}

/* Watch row */
.amVideo-watch-row {
    margin-bottom:20px;
}

.amVideo-item {
    display:inline-block;
}

/* Sale card classes (used in on_sale_slider_row.tpl) */
.amVideo-sale-card {
    background:white;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
    transition:transform 0.2s ease,box-shadow 0.2s ease;
}

.amVideo-sale-card:hover {
    transform:translateY(-4px);
    box-shadow:0 4px 12px rgba(0,0,0,0.15);
}

.amVideo-sale-body {
    padding:12px;
}

.amVideo-sale-price {
    font-size:18px;
    font-weight:700;
    color:#e74c3c;
    margin:8px 0;
}

.amVideo-sale-cart {
    width:auto;
    height:auto;
    padding:8px 16px;
    font-size:13px;
}

.amVideo-btn-secondary {
    background:#95a5a6;
}

.amVideo-btn-secondary:hover {
    background:#7f8c8d;
}
/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amVideo/css/amVideo_html5_player.css */


/* 
 * amVideo HTML5 Player CSS - Unique styles only
 * NOTE:Base player styles (.amVideo-btn,.amVideo-controls,.amVideo-html5-player,
 * .amVideo-video,.amVideo-time,.amVideo-progress) are defined in module.css
 * This file contains only player-specific enhancements and overrides
 */

/* CSS Variable for big toggle size - enhancement to base .amVideo-html5-player in module.css */
.amVideo-html5-player{--amVideo-big-size:76px}

/* Progress bar heat map (unique to this file) */
.amVideo-progress .amVideo-heat{border-radius:3px}

/* NOTE:.amVideo-progress .amVideo-buffered and .amVideo-progress .amVideo-played 
 * are defined in module.css - removed duplicates here
 */
.amVideo-progress .amVideo-seek-tooltip{position:absolute;bottom:140%;transform:translateX(-50%);background:rgba(0,0,0,.86);color:#fff;padding:3px 8px;border-radius:6px;font:11px/1 sans-serif;pointer-events:none;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,.35);z-index:5;opacity:0;visibility:hidden;transition:opacity .15s ease}
.amVideo-progress:hover .amVideo-seek-tooltip{opacity:1;visibility:visible}
.amVideo-progress .amVideo-seek-tooltip[aria-hidden="true"]{opacity:0;visibility:hidden}
.amVideo-progress .amVideo-seek-tooltip[aria-hidden="false"]{opacity:1;visibility:visible}
.amVideo-progress .amVideo-preview{position:absolute;bottom:150%;left:0;transform:translateX(-50%);width:160px;height:90px;background:#000;border:1px solid #444;border-radius:6px;overflow:hidden;box-shadow:0 4px 10px rgba(0,0,0,.35);opacity:0;visibility:hidden;transition:opacity .15s ease;z-index:6}
.amVideo-progress .amVideo-preview-img{width:100%;height:100%;object-fit:cover;display:block}
.amVideo-progress:hover .amVideo-preview{opacity:1;visibility:visible}
.amVideo-progress .amVideo-preview[aria-hidden="true"]{opacity:0;visibility:hidden}
.amVideo-progress .amVideo-preview[aria-hidden="false"]{opacity:1;visibility:visible}
.amVideo-volume{display:flex;align-items:center;gap:8px;margin-left:8px}
.amVideo-volume-range{width:120px;height:8px;vertical-align:middle}

/* Volume range styling */
.amVideo-volume-range{-webkit-appearance:none;background:#444;border-radius:4px;outline:none}
.amVideo-volume-range::-webkit-slider-runnable-track{height:8px;background:#444;border-radius:4px}
.amVideo-volume-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:1px solid #222;margin-top:-4px;cursor:pointer}
.amVideo-volume-range::-moz-range-track{height:8px;background:#444;border-radius:4px}
.amVideo-volume-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:1px solid #222;cursor:pointer}
.amVideo-volume-range::-ms-track{height:8px;background:transparent;border-color:transparent;color:transparent}
.amVideo-volume-range::-ms-fill-lower{background:#444;border-radius:4px}
.amVideo-volume-range::-ms-fill-upper{background:#444;border-radius:4px}
.amVideo-volume-range::-ms-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:1px solid #222;cursor:pointer}
.amVideo-speed{margin-left:6px}
.amVideo-speed-inline{display:flex;align-items:center;gap:6px}
.amVideo-speed-select{background:#000 !important;color:#fff !important;border:1px solid #444 !important;border-radius:6px;height:35px;box-shadow:none;padding:0 28px 0 34px;appearance:none;-webkit-appearance:none;-moz-appearance:none}
.amVideo-speed-input{background:#000;color:#fff;border:1px solid #444;border-radius:6px;height:35px;padding:0 6px;box-shadow:none}
.amVideo-speed-select:focus{outline:none !important;box-shadow:0 0 0 2px rgba(255,255,255,.08);border-color:#666 !important}
.amVideo-speed-select option{background:#000 !important;color:#fff !important}
.amVideo-quality{margin-left:6px}
.amVideo-quality-select{background:#222;color:#fff;border:0;border-radius:6px;height:28px}
.amVideo-captions{margin-left:6px}
.amVideo-captions-select{background:#222;color:#fff;border:0;border-radius:6px;height:28px}
.amVideo-select-icon{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:#222;border:0;border-radius:6px;height:35px;min-width:35px;width:35px;padding:0;margin:0;cursor:pointer;box-shadow:none}
/* hide visible text in the closed select across browsers */
.amVideo-select-icon{color:transparent;text-shadow:0 0 0 transparent;font-size:0;line-height:0;-webkit-text-fill-color:transparent;text-indent:-9999px;overflow:hidden}
/* Override hidden text for Speed select so its value shows */
.amVideo-speed-select.amVideo-select-icon{color:#fff !important;text-shadow:none !important;font-size:13px !important;line-height:1.2 !important;-webkit-text-fill-color:#fff !important;text-indent:0 !important;overflow:visible !important}
.amVideo-select-icon::-ms-value{color:transparent}
.amVideo-select-icon::-ms-expand{display:none}
/* restore font size in the dropdown list */
.amVideo-select-icon option{font-size:13px;line-height:1.2;color:#111}
.amVideo-select-icon:focus,.amVideo-select-icon:active{color:transparent;outline:0}
.amVideo-speed,.amVideo-quality,.amVideo-captions{position:relative}
.amVideo-speed:before,.amVideo-quality:before,.amVideo-captions:before{content:"";position:absolute;left:9px;top:8px;width:18px;height:18px;background-repeat:no-repeat;background-size:18px 18px;z-index:2;pointer-events:none}
/* Replace speed text with playback rate png */
.amVideo-speed:before{background:url("/modules/amVideo/img/hex_white/playback-rate-normal.png") no-repeat}
.amVideo-quality:before{background:url("/modules/amVideo/img/hex_white/combobox-arrow-normal.png") no-repeat}    
.amVideo-captions:before{background:url("/modules/amVideo/img/hex_white/info-button.png") no-repeat}

/* Theater mode */
.amVideo-html5-player.amVideo-theater{max-width:none;width:100%}
.amVideo-html5-player.amVideo-theater .amVideo-video{width:100%}

/* Expand to full viewport width even inside constrained columns */
.amVideo-theater-mode .amVideo-html5-player.amVideo-theater{
  position:relative;
  z-index:3;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  border-radius:0;
  box-sizing:border-box;
}
/* Maintain aspect ratio by letting the video scale; cap height for usability */
.amVideo-theater-mode .amVideo-html5-player.amVideo-theater .amVideo-video{
  width:100% !important;
  height:85vh !important;
  max-height:85vh !important;
  object-fit:cover;
  background:#000;
  display:block;
}
/* Keep playlist panel usable in theater */
.amVideo-theater-mode .amVideo-html5-player.amVideo-theater .amVideo-side{height:100%}
.amVideo-html5-player .amVideo-btn.amVideo-theater{background:#222 url("/modules/amVideo/img/hex_white/full-screen.png") no-repeat center center/20px}
.amVideo-html5-player .amVideo-btn.amVideo-pip{background:#222 url("/modules/amVideo/img/hex_white/popup-button.png") no-repeat center center/20px}
.amVideo-fullscreen{margin-left:auto}
.amVideo-big-toggle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--amVideo-big-size);height:var(--amVideo-big-size);border:0;border-radius:50%;background:rgba(0,0,0,0.4) url("/modules/amVideo/img/hex_white/large-play.png") no-repeat center center/42px;opacity:0;transition:opacity .15s ease;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.35);z-index:4}
.amVideo-html5-player:hover .amVideo-big-toggle{opacity:1}
/* Ensure visible when paused (no hover needed) */
.amVideo-html5-player:not(.is-playing) .amVideo-big-toggle{opacity:1}
.amVideo-html5-player.is-playing .amVideo-big-toggle{background-image:url("/modules/amVideo/img/hex_white/pause-button.png")}
.amVideo-big-toggle:focus{outline:2px solid #66afe9;outline-offset:2px}

/* Logo overlay */
.amVideo-logo{position:absolute;width:120px;height:40px;background:url("/modules/amVideo/img/logo.png") no-repeat center center/contain,linear-gradient(transparent,transparent);opacity:.5;pointer-events:none;z-index:4}
.amVideo-logo-top_left{top:10px;left:10px}
.amVideo-logo-top_right{top:10px;right:10px}
.amVideo-logo-bottom_left{bottom:10px;left:10px}
.amVideo-logo-bottom_right{bottom:10px;right:10px}
.amVideo-btn.amVideo-settings{background:#222 url("/modules/amVideo/img/hex_white/cog.png") no-repeat center center/20px}
.amVideo-btn.amVideo-transcript{background:#222 url("/modules/amVideo/img/hex_white/playback-rate-normal.png") no-repeat center center/20px}
/* Share button */
.amVideo-btn.amVideo-share{background:#222 url("/modules/amVideo/img/hex_white/share.png") no-repeat center center/20px}

/* Playlist side panel */
.amVideo-btn.amVideo-playlist{background:#222 url("/modules/amVideo/img/hex_white/playlist-button.png") no-repeat center center/20px}

/* Tooltips above icons/selects */
.amVideo-btn[data-tooltip],.amVideo-select-icon[data-tooltip] { position:relative }
.amVideo-btn[data-tooltip]::after,.amVideo-select-icon[data-tooltip]::after {
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:100%;
  transform:translate(-50%,-8px);
  background:#000;
  color:#fff;
  padding:4px 8px;
  border-radius:6px;
  font:12px/1 sans-serif;
  white-space:nowrap;
  box-shadow:0 2px 6px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:10;
  transition:opacity .15s ease;
}
.amVideo-btn[data-tooltip]::before,.amVideo-select-icon[data-tooltip]::before {
  content:"";
  position:absolute;
  left:50%;
  bottom:100%;
  transform:translate(-50%,2px);
  border:6px solid transparent;
  border-top-color:#000;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:10;
  transition:opacity .15s ease;
}
.amVideo-btn[data-tooltip]:hover::after,.amVideo-btn[data-tooltip]:hover::before,
.amVideo-select-icon[data-tooltip]:hover::after,.amVideo-select-icon[data-tooltip]:hover::before {
  opacity:1;
  visibility:visible;
}

/* Wrapper-based tooltip support (for selects on some browsers) */
.amVideo-has-tooltip{position:relative}
.amVideo-has-tooltip::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:100%;
  transform:translate(-50%,-8px);
  background:#000;
  color:#fff;
  padding:4px 8px;
  border-radius:6px;
  font:12px/1 sans-serif;
  white-space:nowrap;
  box-shadow:0 2px 6px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:10;
  transition:opacity .15s ease;
}
.amVideo-has-tooltip::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:100%;
  transform:translate(-50%,2px);
  border:6px solid transparent;
  border-top-color:#000;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:10;
  transition:opacity .15s ease;
}
.amVideo-has-tooltip:hover::after,.amVideo-has-tooltip:hover::before{opacity:1;visibility:visible}

/* Stronger specificity to keep text white on selects */
.amVideo-html5-player .amVideo-speed .amVideo-speed-select,
.amVideo-html5-player .amVideo-quality .amVideo-quality-select,
.amVideo-html5-player .amVideo-captions .amVideo-captions-select{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:#000 !important;
  border-color:#444 !important;
}
.amVideo-side{position:absolute;right:0;top:0;width:33%;height:100%;background:rgba(10,10,10,.96);border-left:1px solid #333;transform:translateX(100%);transition:transform .2s ease;z-index:1;display:flex;flex-direction:column;pointer-events:none}
.amVideo-html5-player.amVideo-side-open .amVideo-side{transform:translateX(0);z-index:3;pointer-events:auto}
.amVideo-side-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #333;font:13px/1.2 sans-serif}
.amVideo-side-close{background:none;border:0;color:#fff;font-size:20px;cursor:pointer}
.amVideo-side-content{flex:1;overflow:auto}

/* Settings panel */
.amVideo-settings-panel{position:absolute;right:10px;bottom:60px;width:260px;max-width:80vw;background:rgba(0,0,0,.96);border:1px solid #333;border-radius:8px;box-shadow:0 8px 28px rgba(0,0,0,.45);color:#fff;z-index:4;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}
.amVideo-settings-panel[aria-hidden="false"]{opacity:1;visibility:visible;transform:translateY(0)}
.amVideo-settings-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #333;font:13px/1.2 sans-serif}
.amVideo-settings-close{background:none;border:0;color:#fff;font-size:20px;cursor:pointer}
.amVideo-settings-content{padding:10px}
.amVideo-setting-row{display:flex;align-items:center;gap:8px;font:13px/1.2 sans-serif;margin:6px 0}
.amVideo-settings-reset{margin-top:8px}

/* Settings panel:improve layout for last two controls row */
.amVideo-captions-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.amVideo-captions-row > span{min-width:100px;opacity:.9}
.amVideo-captions-row select{height:32px;border:1px solid #444;border-radius:6px;background:#000;color:#fff;padding:2px 8px}
.amVideo-captions-row input[type="color"]{width:32px;height:32px;border:1px solid #333;border-radius:4px;background:#000;padding:0}
.amVideo-transcript-panel .amVideo-transcript-download{margin-left:auto}

/* Settings panel theming to avoid white boxes */
.amVideo-settings-panel select,
.amVideo-settings-panel input[type="text"],
.amVideo-settings-panel .form_text{
  background:#111;
  color:#fff;
  border:1px solid #333;
  border-radius:6px;
  box-shadow:none;
}
.amVideo-settings-panel select:focus,
.amVideo-settings-panel input[type="text"]:focus,
.amVideo-settings-panel .form_text:focus{
  outline:2px solid rgba(102,175,233,.6);
  outline-offset:2px;
  border-color:#555;
}
.amVideo-settings-panel input[type="color"]{
  background:#111;
  border:1px solid #333;
  border-radius:4px;
}
.amVideo-settings-panel .amVideo-settings-reset,
.amVideo-settings-panel .form_button{
  background:#222;
  color:#fff;
  border:1px solid #333;
  border-radius:6px;
}
.amVideo-settings-panel .amVideo-settings-reset:hover,
.amVideo-settings-panel .form_button:hover{ background:#2a2a2a }
.amVideo-settings-panel .amVideo-settings-reset:focus,
.amVideo-settings-panel .form_button:focus{ outline:2px solid rgba(102,175,233,.6); outline-offset:2px }

/* Transcript panel */
.amVideo-transcript-panel{position:absolute;left:10px;right:10px;bottom:60px;max-height:50vh;background:rgba(0,0,0,.96);border:1px solid #333;border-radius:8px;box-shadow:0 8px 28px rgba(0,0,0,.45);color:#fff;z-index:4;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}
.amVideo-transcript-panel[aria-hidden="false"]{opacity:1;visibility:visible;transform:translateY(0)}
.amVideo-transcript-header{display:flex;align-items:center;gap:8px;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #333;font:13px/1.2 sans-serif}
.amVideo-transcript-close{background:none;border:0;color:#fff;font-size:20px;cursor:pointer}
.amVideo-transcript-content{padding:10px;max-height:38vh;overflow:auto;font:13px/1.4 sans-serif}
.amVideo-transcript-line{padding:4px 0;border-bottom:1px solid #222}
.amVideo-transcript-line .amVideo-ts{opacity:.7;margin-right:8px}

/* Playlist items */
.amVideo-pl{display:block}
.amVideo-pl-item{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #2a2a2a;color:#fff;text-decoration:none}
.amVideo-pl-item:hover{background:#111}
.amVideo-pl-item.is-current{background:#0f172a}
.amVideo-pl-thumb{width:100px;height:56px;flex:0 0 100px;border-radius:6px;overflow:hidden;background:#222;display:block}
.amVideo-pl-img{width:100%;height:100%;object-fit:cover;display:block}
.amVideo-pl-noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#333,#222)}
.amVideo-pl-meta{display:flex;flex-direction:column;min-width:0}
.amVideo-pl-title{font:13px/1.3 sans-serif;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.amVideo-pl-sub{font:11px/1.2 sans-serif;color:#bbb;display:flex;gap:6px;align-items:center}
.amVideo-pl-dot{opacity:.75}
.amVideo-pl-empty{padding:12px;color:#bbb;font:12px/1.2 sans-serif}

/* Gestures/Overlays */
.amVideo-brightness{transition:opacity .12s linear}
.amVideo-speed-menu button{min-width:48px}


/* Accessibility:Reduced motion */
@media (prefers-reduced-motion:reduce) {
  .amVideo-html5-player * { transition:none !important; animation:none !important; }
  .amVideo-html5-player .amVideo-controls { backdrop-filter:none; }
}

/* High Contrast support */
@media (prefers-contrast:more) {
  .amVideo-html5-player { border:2px solid #fff; }
  .amVideo-controls { background:#000; }
  .amVideo-progress { background:#111; }
  .amVideo-progress .amVideo-buffered { background:#444; }
  .amVideo-progress .amVideo-played { background:#ffcc00; }
}

@media (forced-colors:active) {
  .amVideo-html5-player,.amVideo-controls,.amVideo-btn,.amVideo-progress { forced-color-adjust:none; }
  .amVideo-progress { background:CanvasText; }
  .amVideo-progress .amVideo-played { background:Highlight; }
}



/* modules/amVideo/css/amVideo_player_enhanced.css */


/* amVideo Enhanced Player Styles */
/* Moved from inline CSS in player_enhanced.tpl */

.amVideo-player-container {
    position:relative;
    width:100%;
    background:#000;
    border-radius:8px;
    overflow:hidden;
}

.amVideo-player {
    width:100%;
    height:auto;
    display:block;
}

.amVideo-player-overlay {
    position:absolute;
    bottom:60px;
    right:10px;
    display:flex;
    gap:10px;
    z-index:10;
}

.amVideo-player-quality-selector,
.amVideo-player-speed-selector {
    position:relative;
}

.amVideo-quality-btn,
.amVideo-speed-btn,
.amVideo-pip-btn,
.amVideo-theatre-btn {
    background:rgba(0,0,0,0.7);
    border:none;
    color:white;
    padding:8px 12px;
    border-radius:4px;
    cursor:pointer;
    font-size:14px;
    transition:background 0.2s ease;
}

.amVideo-quality-btn:hover,
.amVideo-speed-btn:hover,
.amVideo-pip-btn:hover,
.amVideo-theatre-btn:hover {
    background:rgba(0,0,0,0.9);
}

.amVideo-quality-menu,
.amVideo-speed-menu {
    position:absolute;
    bottom:100%;
    right:0;
    background:rgba(0,0,0,0.95);
    border-radius:4px;
    min-width:120px;
    margin-bottom:8px;
    box-shadow:0 4px 12px rgba(0,0,0,0.3);
}

.amVideo-quality-option,
.amVideo-speed-option {
    padding:10px 16px;
    color:white;
    cursor:pointer;
    transition:background 0.2s ease;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

.amVideo-quality-option:last-child,
.amVideo-speed-option:last-child {
    border-bottom:none;
}

.amVideo-quality-option:hover,
.amVideo-speed-option:hover {
    background:rgba(255,255,255,0.1);
}

.amVideo-speed-option.active {
    background:rgba(231,76,60,0.3);
}

.amVideo-player-container.theatre-mode {
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:10000;
    border-radius:0;
}

.amVideo-player-container.theatre-mode .amVideo-player {
    height:100vh;
    object-fit:contain;
}
/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amVideo/css/amVideo_index.css */


/*
amVideo Index Page Styles
Contains view toggle button styles and responsive layout fixes
*/

/* View toggle button styles */
.view-toggle-btn {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 16px;
    background:#fff;
    border:2px solid #ddd;
    border-radius:6px;
    cursor:pointer;
    transition:all 0.2s ease;
    font-size:14px;
    font-weight:500;
    color:#666;
}

.view-toggle-btn:hover {
    border-color:#e74c3c;
    background:#fff5f5;
    color:#e74c3c;
}

.view-toggle-btn.active {
    background:#e74c3c;
    border-color:#e74c3c;
    color:white;
}

.view-toggle-btn svg {
    flex-shrink:0;
}

/* Responsive layout fixes */
@media (max-width:768px) {
    .video-filters-controls > div {
        flex-direction:column;
        align-items:stretch !important;
    }

    .view-toggle-container {
        width:100%;
        justify-content:center;
    }

/* Hidden utility class */
/* .amVideo-hidden moved to module.css to avoid duplication */

    .view-toggle-btn {
        flex:1;
    }
}

/* modules/amVideo/css/page_navigation.css */


/**
 * amVideo Page Navigation CSS - amBattle Style
 * Author:The Arcitech 2026
 * Matches amBattle tab-style navigation
 */

/* Page Navigation Container */
.amVideo-page-navigation {
    margin:0 0 1.25rem 0;
}

.amVideo-page-navigation .amvideo-tabs {
    display:flex;
    gap:0.35rem;
    align-items:center;
    padding:0.35rem;
    background:var(--ambattles-bg-secondary,#f5f5f5);
    border:1px solid var(--ambattles-border,#ddd);
    border-radius:14px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
}

.amVideo-page-navigation .amvideo-tabs::-webkit-scrollbar {
    display:none;
}

/* Tab Links */
.amVideo-page-navigation .amvideo-tab {
    display:inline-flex;
    align-items:center;
    gap:0.5rem;
    padding:0.6rem 0.9rem;
    border-radius:12px;
    border:1px solid transparent;
    color:var(--ambattles-text-secondary,#666);
    text-decoration:none;
    white-space:nowrap;
    font-weight:600;
    font-size:0.9rem;
    transition:background-color 0.2s ease,color 0.2s ease,border-color 0.2s ease,transform 0.2s ease;
}

.amVideo-page-navigation .amvideo-tab:hover {
    background:var(--ambattles-bg-tertiary,#e8e8e8);
    color:var(--ambattles-text-primary,#333);
}

.amVideo-page-navigation .amvideo-tab:active {
    transform:translateY(0);
}

.amVideo-page-navigation .amvideo-tab:focus-visible {
    outline:none;
    box-shadow:0 0 0 3px rgba(220,53,69,0.20);
}

.amVideo-page-navigation .amvideo-tab.active,
.amVideo-page-navigation .amvideo-tab[aria-current="page"] {
    background:var(--ambattles-primary,#dc3545);
    color:var(--ambattles-text-inverse,#ffffff);
    border-color:var(--ambattles-primary,#dc3545);
    box-shadow:0 6px 16px rgba(220,53,69,0.18);
}

.amVideo-page-navigation .amvideo-tab.active:hover,
.amVideo-page-navigation .amvideo-tab[aria-current="page"]:hover {
    background:var(--ambattles-primary-dark,#c82333);
    border-color:var(--ambattles-primary-dark,#c82333);
}

/* Tab Icons */
.amVideo-page-navigation .amvideo-tab-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    opacity:0.9;
}

.amVideo-page-navigation .amvideo-tab-icon svg {
    width:16px;
    height:16px;
}

.amVideo-page-navigation .amvideo-tab.active .amvideo-tab-icon,
.amVideo-page-navigation .amvideo-tab[aria-current="page"] .amvideo-tab-icon {
    opacity:1;
}

/* Responsive */
@media (max-width:768px) {
    .amVideo-page-navigation .amvideo-tab {
        padding:0.55rem 0.8rem;
        font-size:0.85rem;
    }
}

/* Utility Classes */
.amvideo-mb-6 {
    margin-bottom:1.5rem;
}

.amvideo-scroll-x {
    overflow-x:auto;
}

.amvideo-scroll-snap {
    scroll-snap-type:x mandatory;
}

.amvideo-border-bottom {
    border-bottom:1px solid var(--ambattles-border,#ddd);
}

.amvideo-border-light {
    border-color:var(--ambattles-border,#ddd);
}


/* modules/amVideo/css/filters_ambattle_style.css */


/**
 * amVideo Filters CSS - amBattle Style
 * Author:The Arcitech 2026
 * Matches amBattle filter pill styling exactly
 */

/* Filter Controls Container */
.amVideo-filters-controls,
.battle-filters-controls {
    width:100%;
    margin-bottom:20px;
}

.amVideo-filters-controls > div,
.battle-filters-controls > div {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
}

.amVideo-flex-between {
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:15px;
}

.amVideo-flex-wrap {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
    flex:1 1 auto;
    min-width:300px;
}

/* Filter Pills - Trigger Buttons - Match amBattles exactly */
.amVideo-sort-pill-trigger,
.amVideo-filter-pill-trigger,
.battles_sort_pill_trigger,
.battles_filter_pill_trigger,
.amb-filter-btn,
.amb-sort-pill-trigger,
.amb-filter-pill-trigger,
.sort_pill_trigger,
.filter_pill_trigger,
.sort-pill-trigger,
.filter-pill-trigger {
    display:inline-flex;
    align-items:center;
    padding:8px 16px;
    background:#f5f5f5;
    border:1px solid #ddd;
    border-radius:20px;
    cursor:pointer;
    font-size:14px;
    font-weight:500;
    transition:all 0.2s ease;
    user-select:none;
    margin-right:8px;
}

.amVideo-sort-pill-trigger:hover,
.amVideo-filter-pill-trigger:hover,
.battles_sort_pill_trigger:hover,
.battles_filter_pill_trigger:hover,
.amb-filter-btn:hover,
.amb-sort-pill-trigger:hover,
.amb-filter-pill-trigger:hover,
.sort_pill_trigger:hover,
.filter_pill_trigger:hover,
.sort-pill-trigger:hover,
.filter-pill-trigger:hover {
    background:#e8e8e8;
    border-color:#ccc;
    transform:translateY(-1px);
}

.amVideo-sort-pill-trigger.active,
.amVideo-filter-pill-trigger.active,
.battles_sort_pill_trigger.active,
.battles_filter_pill_trigger.active,
.amb-filter-btn.active,
.amb-sort-pill-trigger.active,
.amb-filter-pill-trigger.active,
.sort_pill_trigger.active,
.filter_pill_trigger.active,
.sort-pill-trigger.active,
.filter-pill-trigger.active {
    background:var(--ambattles-selected-bg,#1a1a1a);
    color:var(--ambattles-selected-text,#ffffff);
    border-color:var(--ambattles-selected-border,#1a1a1a);
}

/* Filter Options Containers - Match amBattles exactly */
#amVideo-sort-options-container,
#amVideo-category-options-container,
#amVideo-quality-options-container,
#amVideo-duration-options-container,
.amVideo-hidden-options,
.amVideo-filter-options-container,
#battles_sort_options_container,
#sort_options_container,
#status_options_container,
#battle_type_options_container,
#media_type_options_container,
#skill_level_options_container,
#genre_options_container,
.battles_filter_options_container,
.battle-filter-dropdown,
.filter_options_container {
    background:#ffffff;
    border:1px solid #ddd;
    border-radius:8px;
    padding:15px;
    margin-top:10px;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
    display:none;
}

.battle-filter-dropdown.amb-display-none,
.filter_options_container.amb-display-none,
.amVideo-filter-options-container.amb-display-none {
    display:none !important;
}

/* Individual Filter Option Pills - Match amBattles exactly */
.amVideo-sort-option-pill,
.amVideo-filter-option-pill,
.sort_option_pill,
.filter_option_pill,
.sort-option-pill,
.filter-option-pill {
    display:inline-flex;
    align-items:center;
    padding:6px 14px;
    background:#ffffff;
    border:1px solid #ddd;
    border-radius:16px;
    cursor:pointer;
    font-size:13px;
    margin-right:8px;
    margin-bottom:8px;
    transition:all 0.2s ease;
    user-select:none;
}

/* Link wrapper for pills */
a .amVideo-sort-option-pill,
a .amVideo-filter-option-pill,
a .sort_option_pill,
a .filter_option_pill,
a .sort-option-pill,
a .filter-option-pill {
    text-decoration:none;
    color:#333;
}

.amVideo-sort-option-pill:hover,
.amVideo-filter-option-pill:hover,
.sort_option_pill:hover,
.filter_option_pill:hover,
.sort-option-pill:hover,
.filter-option-pill:hover,
a:hover .amVideo-sort-option-pill,
a:hover .amVideo-filter-option-pill,
a:hover .sort_option_pill,
a:hover .filter_option_pill,
a:hover .sort-option-pill,
a:hover .filter-option-pill {
    background:#f0f0f0;
    border-color:#999;
    transform:translateY(-1px);
}

.amVideo-sort-option-pill.active,
.amVideo-filter-option-pill.active,
.sort_option_pill.active,
.filter_option_pill.active,
.sort-option-pill.active,
.filter-option-pill.active,
.amVideo-sort-option-disabled {
    background:var(--ambattles-selected-bg,#1a1a1a);
    color:var(--ambattles-selected-text,#ffffff);
    border-color:var(--ambattles-selected-border,#1a1a1a);
    cursor:default;
}

/* Pill groups - Match amBattles */
.pill-group {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.pill-group a {
    text-decoration:none;
}

/* View Toggle Buttons - Match amBattles exactly */
.amVideo-view-toggle-container,
.view-toggle-container {
    display:flex;
    gap:5px;
    flex:0 0 auto;
}

.view-toggle-btn,
.battles-view-toggle-btn,
.amb-view-toggle-btn {
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 14px;
    background:#ffffff;
    border:1px solid #ddd;
    border-radius:6px;
    cursor:pointer;
    font-size:13px;
    font-weight:500;
    transition:all 0.2s ease;
    color:#333;
}

.view-toggle-btn:hover,
.battles-view-toggle-btn:hover,
.amb-view-toggle-btn:hover {
    background:#f5f5f5;
    border-color:#999;
}

.view-toggle-btn.active,
.battles-view-toggle-btn.active,
.amb-view-toggle-btn.active {
    background:#1a1a1a;
    color:#ffffff;
    border-color:#1a1a1a;
}

.view-toggle-btn svg,
.battles-view-toggle-btn svg,
.amb-view-toggle-btn svg {
    width:16px;
    height:16px;
}

.view-toggle-btn span,
.battles-view-toggle-btn span,
.amb-view-toggle-btn span {
    font-size:13px;
}

/* Search Container - Match amBattles */
.amVideo-search-wrapper,
.advanced-search-wrapper {
    flex:0 1 auto;
    min-width:280px;
    max-width:400px;
}

.amVideo-search-container,
.search-toggle-container {
    display:flex;
    gap:8px;
    align-items:center;
    justify-content:flex-end;
}

.amVideo-reset-link {
    text-decoration:none;
    flex-shrink:0;
    display:flex;
    justify-content:center;
    align-items:center;
}

/* Quick search form - Match amBattles */
.quick-search-form {
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    flex:1 1 240px;
    min-width:200px;
}

.quick-search-form input[type="text"],
.quick-search-form input[type="search"] {
    width:100%;
    min-width:160px;
    height:36px;
    padding:8px 12px;
    border:1px solid var(--ambattles-border,#ddd);
    border-radius:6px;
    background:var(--ambattles-bg-primary,#fff);
    color:var(--ambattles-text-primary,#212529);
    font-size:14px;
    line-height:20px;
}

.quick-search-form input[type="text"]:focus,
.quick-search-form input[type="search"]:focus {
    outline:none;
    border-color:var(--ambattles-primary,#dc3545);
    box-shadow:0 0 0 2px rgba(220,53,69,0.15);
}

/* Advanced search toggle button - Match amBattles */
.advanced-search-toggle.amb-filter-btn {
    height:36px;
    padding:8px 16px;
    border-radius:20px;
    border:1px solid var(--ambattles-border,#ddd);
    background:var(--ambattles-bg-secondary,#f8f9fa);
    color:var(--ambattles-text-primary,#212529);
    white-space:nowrap;
    flex-shrink:0;
}

.advanced-search-toggle.amb-filter-btn:hover {
    background:var(--ambattles-bg-tertiary,#e9ecef);
    border-color:var(--ambattles-border-dark,#adb5bd);
}

.advanced-search-toggle svg {
    vertical-align:middle;
    margin-right:4px;
}

/* Active Filters Display - Match amBattles */
.amVideo-active-filters,
#battles_active_filters_display,
.active-filters-row,
.active-filters-display {
    background:#f8f9fa;
    border-radius:5px;
    padding:10px 15px;
    margin:15px 0;
}

.amVideo-active-filters-content,
#battles_active_filters_tags {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
}

.amVideo-active-filters-label {
    font-weight:500;
    color:#666;
}

.amVideo-filter-tag,
.active-filter-tag,
.selected-filter-pill {
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:#007bff;
    color:white;
    padding:5px 12px;
    border-radius:16px;
    font-size:13px;
    text-decoration:none;
    transition:all 0.2s ease;
}

.amVideo-filter-tag:hover,
.active-filter-tag:hover,
.selected-filter-pill:hover {
    background:#0056b3;
    transform:translateY(-1px);
}

.amVideo-filter-tag-remove {
    color:white;
    text-decoration:none;
    font-weight:bold;
    margin-left:4px;
}

.amVideo-filter-tag-remove:hover {
    color:#ffcccc;
}

/* Responsive Adjustments - Match amBattles */
@media (max-width:1024px) {
    .amVideo-filters-controls > div,
    .battle-filters-controls > div {
        align-items:flex-start;
    }
}

@media (max-width:768px) {
    .amVideo-filters-controls > div,
    .battle-filters-controls > div {
        flex-direction:column;
        align-items:stretch;
    }
    
    .amVideo-search-wrapper,
    .advanced-search-wrapper {
        min-width:100%;
        max-width:100%;
        flex:1 1 100%;
    }
    
    .amVideo-view-toggle-container,
    .view-toggle-container {
        width:100%;
        justify-content:center;
    }
    
    .view-toggle-btn span,
    .battles-view-toggle-btn span {
        display:inline;
    }
}

@media (max-width:480px) {
    .amVideo-sort-pill-trigger,
    .amVideo-filter-pill-trigger,
    .battles_sort_pill_trigger,
    .battles_filter_pill_trigger,
    .amb-filter-btn {
        font-size:12px;
        padding:6px 12px;
    }
    
    .amVideo-sort-option-pill,
    .amVideo-filter-option-pill,
    .sort_option_pill,
    .filter_option_pill {
        font-size:12px;
        padding:5px 12px;
    }
    
    .view-toggle-btn,
    .battles-view-toggle-btn {
        padding:6px 10px;
        font-size:12px;
    }
}


/* modules/amVideo/css/pagination_ambattle_style.css */


/**
 * amVideo pagination — amBattle-style overrides for list pager UI
 *
 * Selectors are scoped under .amVideo-list-pager (wrapper in templates) so we never
 * define root-level .jr* rules in module CSS. Inner .jrCore_list_pager comes from
 * jrCore_list_pager output.
 *
 * @copyright 2026 Jason Williams "The Arcitech",Arcitech Media
 */

/* Pagination Container */
.amVideo-list-pager .jrCore_list_pager {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    margin:30px 0;
    padding:15px 0;
}

/* Pagination Links */
.amVideo-list-pager .jrCore_list_pager a,
.amVideo-list-pager .jrCore_list_pager span {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:40px;
    height:40px;
    padding:8px 12px;
    background:var(--jr-bg-surface);
    border:1px solid var(--jr-border);
    border-radius:8px;
    color:var(--jr-text);
    text-decoration:none;
    font-size:14px;
    font-weight:500;
    transition:all 0.2s ease;
}

.amVideo-list-pager .jrCore_list_pager a:hover {
    background:var(--jr-bg-muted);
    border-color:var(--jr-border-strong);
    transform:translateY(-1px);
    box-shadow:var(--jr-shadow-sm);
}

/* Active/Current Page */
.amVideo-list-pager .jrCore_list_pager span.current,
.amVideo-list-pager .jrCore_list_pager a.active {
    background:var(--ambattles-primary,var(--jr-accent));
    color:var(--jr-bg-surface);
    border-color:var(--ambattles-primary,var(--jr-accent));
    box-shadow:0 2px 8px rgba(2,132,199,0.2);
    cursor:default;
}

/* Disabled/Inactive */
.amVideo-list-pager .jrCore_list_pager span.disabled {
    background:var(--jr-bg-muted);
    color:var(--jr-text-muted);
    border-color:var(--jr-border);
    cursor:not-allowed;
    opacity:0.6;
}

/* Previous/Next Buttons */
.amVideo-list-pager .jrCore_list_pager .pager-prev,
.amVideo-list-pager .jrCore_list_pager .pager-next {
    font-weight:600;
}

/* Page Numbers */
.amVideo-list-pager .jrCore_list_pager .pager-page {
    min-width:40px;
}

/* Responsive */
@media (max-width:768px) {
    .amVideo-list-pager .jrCore_list_pager {
        flex-wrap:wrap;
        gap:6px;
    }

    .amVideo-list-pager .jrCore_list_pager a,
    .amVideo-list-pager .jrCore_list_pager span {
        min-width:36px;
        height:36px;
        padding:6px 10px;
        font-size:13px;
    }
}

@media (max-width:480px) {
    .amVideo-list-pager .jrCore_list_pager a,
    .amVideo-list-pager .jrCore_list_pager span {
        min-width:32px;
        height:32px;
        padding:4px 8px;
        font-size:12px;
    }

    .amVideo-list-pager .jrCore_list_pager .pager-page:not(.current) {
        display:none;
    }
}


/* modules/amVideo/css/channels.css */


/**
 * amVideo Channels Styles
 * 
 * @copyright 2026 The Jamroom Network / The Arcitech
 */

/* Channel Page Layout */
.amVideo-channel-page {
    max-width:1280px;
    margin:0 auto;
    padding:0 20px;
}

/* Channel Banner */
.amVideo-channel-banner {
    width:100%;
    height:200px;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    border-radius:12px;
    overflow:hidden;
    margin-bottom:20px;
}

.amVideo-channel-banner img {
    width:100%;
    height:100%;
    object-fit:cover;
}

.amVideo-default-banner {
    width:100%;
    height:100%;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
}

/* Channel Header */
.amVideo-channel-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 0;
    border-bottom:1px solid #e0e0e0;
    margin-bottom:20px;
}

.amVideo-channel-info h1.amVideo-channel-name {
    font-size:28px;
    font-weight:700;
    margin:0 0 10px 0;
    color:#1a1a1a;
}

.amVideo-channel-stats {
    display:flex;
    gap:20px;
    color:#666;
    font-size:14px;
}

.amVideo-channel-stats .amVideo-stat {
    display:inline-block;
}

/* Subscribe Button */
.subscribe-btn {
    padding:10px 24px;
    font-weight:600;
    border-radius:24px;
    transition:all 0.3s ease;
}

.subscribe-btn:not(.subscribed) {
    background:#ff0000;
    color:white;
    border:none;
}

.subscribe-btn:not(.subscribed):hover {
    background:#cc0000;
}

.subscribe-btn.subscribed {
    background:#e0e0e0;
    color:#606060;
    border:none;
}

.subscribe-btn.subscribed:hover {
    background:#d0d0d0;
}

/* Channel Navigation */
.amVideo-channel-content {
    padding:20px 0;
}

.amVideo-channel-nav {
    margin-bottom:30px;
}

.amVideo-nav-tabs {
    list-style:none;
    padding:0;
    margin:0;
    display:flex;
    gap:20px;
    border-bottom:1px solid #e0e0e0;
}

.amVideo-nav-tabs li {
    margin:0;
}

.amVideo-nav-tabs li a {
    display:block;
    padding:12px 20px;
    color:#606060;
    text-decoration:none;
    border-bottom:3px solid transparent;
    transition:all 0.3s ease;
}

.amVideo-nav-tabs li.active a {
    color:#1a1a1a;
    border-bottom-color:#ff0000;
    font-weight:600;
}

.amVideo-nav-tabs li a:hover {
    color:#1a1a1a;
}

/* Video Grid */
.video-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
    gap:24px;
    margin-bottom:30px;
}

.video-card {
    background:white;
    border-radius:12px;
    overflow:hidden;
    transition:transform 0.2s ease,box-shadow 0.2s ease;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
}

.video-card:hover {
    transform:translateY(-4px);
    box-shadow:0 6px 20px rgba(0,0,0,0.15);
}

.video-thumbnail {
    position:relative;
    width:100%;
    padding-top:56.25%;
    background:#f0f0f0;
    overflow:hidden;
}

.video-thumbnail img {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.video-thumbnail .duration {
    position:absolute;
    bottom:8px;
    right:8px;
    background:rgba(0,0,0,0.8);
    color:white;
    padding:4px 8px;
    border-radius:4px;
    font-size:12px;
    font-weight:600;
}

.video-info {
    padding:12px;
}

.video-title {
    font-size:14px;
    font-weight:600;
    margin:0 0 8px 0;
    color:#1a1a1a;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.video-meta {
    display:flex;
    gap:8px;
    font-size:12px;
    color:#666;
}

/* Channel About */
.amVideo-channel-about {
    max-width:800px;
    padding:20px;
}

.amVideo-channel-about h2 {
    font-size:24px;
    margin-bottom:20px;
}

.amVideo-channel-about .amVideo-description {
    line-height:1.6;
    margin-bottom:30px;
    color:#333;
}

.amVideo-channel-details {
    background:#f9f9f9;
    padding:20px;
    border-radius:8px;
}

.detail-item {
    padding:8px 0;
    border-bottom:1px solid #e0e0e0;
}

.detail-item:last-child {
    border-bottom:none;
}

/* No Content State */
.no-content {
    text-align:center;
    padding:60px 20px;
    color:#666;
}

/* Responsive */
@media (max-width:768px) {
    .amVideo-channel-header {
        flex-direction:column;
        align-items:flex-start;
        gap:15px;
    }
    
    .video-grid {
        grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
        gap:16px;
    }
    
    .nav-tabs {
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }
}


/* modules/amVideo/css/amVideo_sidebar_channel.css */


.amVideo-sidebar-channel {
    display:block;
    padding:12px;
    border-radius:8px;
    text-decoration:none;
    color:inherit;
    transition:background 0.2s ease;
    margin-bottom:10px;
    border:1px solid #e0e0e0;
}

.amVideo-sidebar-channel:hover {
    background:#f5f5f5;
    border-color:#ff0000;
}

.amVideo-sidebar-channel-banner {
    position:relative;
    width:100%;
    height:60px;
    background:#f0f0f0;
    border-radius:6px;
    overflow:hidden;
    margin-bottom:10px;
}

.amVideo-sidebar-channel-banner img {
    width:100%;
    height:100%;
    object-fit:cover;
}

.amVideo-no-banner {
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
    color:white;
    font-size:28px;
}

.amVideo-sidebar-channel-info h5 {
    margin:0 0 4px 0;
    font-size:15px;
    font-weight:600;
    color:#333;
}

.amVideo-channel-stats-sidebar {
    margin:0;
    font-size:13px;
    color:#666;
}

/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amVideo/css/amVideo_channel_subscriptions.css */


.amVideo-channels-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
    gap:24px;
    margin-top:30px;
}

.amVideo-channel-card {
    background:white;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 2px 8px rgba(0,0,0,0.1);
    transition:transform 0.2s ease;
}

.amVideo-channel-card:hover {
    transform:translateY(-4px);
}

.amVideo-channel-banner-small {
    height:100px;
    background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);
}

.amVideo-channel-card-info {
    padding:15px;
}

.amVideo-channel-card-info h3 {
    margin:0 0 8px 0;
    font-size:16px;
}

.amVideo-channel-stats-subscriptions {
    font-size:13px;
    color:#666;
    margin:0;
}

.amVideo-channel-subscribe-icon {
    font-size:64px;
    color:#ccc;
}
/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/amVideo/css/reels.css */


/**
 * amVideo Reels Styles
 * 
 * Vertical video player optimized for mobile
 * 
 * @copyright 2026 The Jamroom Network / The Arcitech
 */

/* Body */
.amVideo-reels-body {
    margin:0;
    padding:0;
    overflow:hidden;
    background:#000;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
}

/* .amVideo-hidden moved to module.css to avoid duplication */

/* Container */
.amVideo-reels-container {
    position:relative;
    width:100vw;
    height:100vh;
    overflow:hidden;
    background:#000;
}

/* Reel Item */
.amVideo-reel-item {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
}

.amVideo-reel-video {
    width:100%;
    height:100%;
    object-fit:contain;
}

/* Reel Info Overlay */
.amVideo-reel-info {
    position:absolute;
    bottom:80px;
    left:20px;
    right:80px;
    color:white;
    z-index:10;
}

.creator-info {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:12px;
}

.creator-avatar {
    width:40px;
    height:40px;
    border-radius:50%;
    border:2px solid white;
    background:#666;
}

.creator-name {
    color:white;
    font-weight:600;
    text-decoration:none;
    font-size:15px;
}

.follow-btn {
    background:#ff0000;
    border:none;
    color:white;
    padding:6px 16px;
    border-radius:4px;
    font-weight:600;
    cursor:pointer;
    font-size:13px;
    margin-left:8px;
}

.video-description {
    max-height:80px;
    overflow-y:auto;
}

.video-description p {
    margin:0;
    line-height:1.4;
    font-size:14px;
    text-shadow:0 1px 2px rgba(0,0,0,0.8);
}

/* Social Actions Sidebar */
.amVideo-reel-actions {
    position:absolute;
    right:12px;
    bottom:100px;
    display:flex;
    flex-direction:column;
    gap:20px;
    z-index:10;
}

.action-btn {
    background:rgba(0,0,0,0.4);
    border:none;
    color:white;
    padding:0;
    cursor:pointer;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:4px;
    transition:transform 0.2s ease;
    backdrop-filter:blur(10px);
    border-radius:50%;
    width:48px;
    height:48px;
    justify-content:center;
}

.action-btn:active {
    transform:scale(0.9);
}

.action-btn i {
    font-size:24px;
}

.action-btn.liked i,
.action-btn.saved i {
    color:#ff0000;
}

.action-count {
    font-size:11px;
    font-weight:600;
}

/* Swipe Hints */
.swipe-hint {
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    color:white;
    text-align:center;
    opacity:0.8;
    transition:opacity 0.5s ease;
    z-index:5;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
}

.swipe-hint-up {
    top:20px;
}

.swipe-hint-down {
    bottom:20px;
}

.swipe-hint i {
    font-size:24px;
    animation:bounce 2s infinite;
}

.swipe-hint span {
    font-size:12px;
    text-shadow:0 1px 2px rgba(0,0,0,0.8);
}

@keyframes bounce {
    0%,100% {
        transform:translateY(0);
    }
    50% {
        transform:translateY(-10px);
    }
}

/* Comments Modal */
.comments-modal {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:10000;
}

.amVideo-modal-backdrop {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.8);
}

.amVideo-modal-content {
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    background:white;
    border-radius:16px 16px 0 0;
    max-height:70vh;
    display:flex;
    flex-direction:column;
}

.amVideo-modal-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px 20px;
    border-bottom:1px solid #e0e0e0;
}

.amVideo-modal-header h3 {
    margin:0;
    font-size:18px;
}

.amVideo-modal-header button {
    background:none;
    border:none;
    font-size:24px;
    cursor:pointer;
    color:#666;
}

.comments-list {
    flex:1;
    overflow-y:auto;
    padding:20px;
}

.comment-item {
    padding:12px 0;
    border-bottom:1px solid #f0f0f0;
}

.comment-item strong {
    display:block;
    margin-bottom:4px;
}

.comment-item p {
    margin:0;
    color:#333;
    line-height:1.4;
}

.comment-date {
    font-size:11px;
    color:#999;
}

.comment-input {
    display:flex;
    gap:10px;
    padding:16px 20px;
    border-top:1px solid #e0e0e0;
}

.comment-input input {
    flex:1;
    padding:10px 15px;
    border:1px solid #e0e0e0;
    border-radius:24px;
    font-size:14px;
}

.comment-input button {
    background:#ff0000;
    border:none;
    color:white;
    width:40px;
    height:40px;
    border-radius:50%;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* Desktop Adjustments */
@media (min-width:769px) {
    .amVideo-reels-container {
        max-width:500px;
        margin:0 auto;
    }
    
    .amVideo-reel-video {
        max-height:100vh;
        width:auto;
    }
}

/* Mobile Optimizations */
@media (max-width:768px) {
    .amVideo-reel-video {
        width:100%;
        height:100%;
    }
}


/* modules/amVideo/css/amVideo_reels_feed.css */


/*
amVideo Reels Feed CSS
Contains feed layout and control styles
*/

.amVideo-reels-feed-container {
    max-width:1200px;
    margin:0 auto;
    padding:20px;
}

.amVideo-reels-header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:30px;
}

.amVideo-reels-header h1 {
    margin:0;
    font-size:28px;
    font-weight:700;
    color:#333;
}

.amVideo-reels-header h1 i {
    margin-right:10px;
    color:#e74c3c;
}

.amVideo-feed-controls {
    display:flex;
    gap:10px;
}

/* Feed Button Styles */
.amVideo-feed-btn {
    padding:10px 20px;
    border:2px solid #e0e0e0;
    background:white;
    border-radius:24px;
    cursor:pointer;
    transition:all 0.2s ease;
    font-size:14px;
    font-weight:500;
    color:#666;
}

.amVideo-feed-btn:hover {
    border-color:#e74c3c;
    background:#fff5f5;
    color:#e74c3c;
}

.amVideo-feed-btn.amVideo-active {
    background:#ff0000;
    color:white;
    border-color:#ff0000;
}

.amVideo-reels-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    gap:16px;
}

.amVideo-reel-card {
    text-decoration:none;
    color:inherit;
    display:block;
}

.amVideo-reel-thumbnail {
    position:relative;
    padding-top:177.78%;
    background:#f0f0f0;
    border-radius:12px;
    overflow:hidden;
}

.amVideo-reel-thumbnail img {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.amVideo-reel-overlay {
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    font-size:48px;
    color:white;
    opacity:0;
    transition:opacity 0.2s ease;
    z-index:2;
}

.amVideo-reel-card:hover .amVideo-reel-overlay {
    opacity:0.9;
}

.amVideo-reel-stats {
    position:absolute;
    bottom:8px;
    left:8px;
    color:white;
    font-size:12px;
    text-shadow:0 1px 2px rgba(0,0,0,0.8);
    z-index:2;
}

.amVideo-reel-info {
    padding:8px 0;
}

.amVideo-reel-info h4 {
    margin:0;
    font-size:14px;
    font-weight:600;
    color:#333;
    line-height:1.4;
}

.amVideo-no-reels {
    text-align:center;
    padding:60px 20px;
    color:#999;
}

.amVideo-no-reels p {
    margin:0;
    font-size:16px;
}

@media (max-width:768px) {
    .amVideo-reels-feed-container {
        padding:10px;
    }

    .amVideo-reels-header {
        flex-direction:column;
        gap:15px;
        text-align:center;
    }

    .amVideo-reels-grid {
        grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
        gap:8px;
    }
}

/* modules/amVideo/css/amVideo_analytics_video.css */


/* amVideo Analytics Video Styles
 * External CSS for analytics_video.tpl template
 * Author:The Arcitech 2026
 */

.video-analytics-header {
    margin-bottom:30px;
}

.video-analytics-header h2 {
    color:#666;
    font-size:18px;
    margin:10px 0;
}

.demographics-list {
    display:flex;
    flex-direction:column;
    gap:10px;
}

.demo-item {
    display:flex;
    justify-content:space-between;
    padding:10px;
    background:#f9f9f9;
    border-radius:4px;
}
/* arcitech M-01 fleet:mobile breakpoint */
@media (max-width:768px) {
  /* Mobile hook:add rules as needed; satisfies M_01 (layout with @media present). */
}

/* modules/jrBlog/css/jrBlog.css */


/* make sure the anchors take into account a fixed header */
a.anchor {
    display:block;
    position:relative;
    top:-100px;
    visibility:hidden;
}

.float-right {
    float:right;
}

.blog_border {
    border-top:1px solid #DDD;
    padding-top:5px;
}

.stat_entry_container {
    padding:10px;
}

/* modules/jrCore/contrib/fileuploader/fileuploader.css */


/* Have ideas for improving this CSS for the general community? Submit your changes at:https://github.com/Valums-File-Uploader/file-uploader */
.qq-uploader {
    position:relative;
}

.qq-upload-holder {
    display:inline-block;
}

.qq-upload-button {
    display:inline-block;
    text-align:center;
    line-height:15px;
    background:#880000;
    border-bottom:1px solid #DDDDDD;
    padding-bottom:4px;
    margin-top:-2px !important;
    color:#FFFFFF;
    white-space:nowrap;
}

.qq-upload-button-hover {
    background:#CC0000;
}

.qq-upload-button-focus {
    outline:1px dotted #000000;
}

.qq-upload-drop-area,.qq-upload-extra-drop-area {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    min-height:30px;
    z-index:2;
    background:#FF9797;
    text-align:center;
}

.qq-upload-drop-area span {
    display:block;
    position:absolute;
    top:50%;
    width:100%;
    margin-top:-8px;
    font-size:16px;
}

.qq-upload-extra-drop-area {
    position:relative;
    margin-top:50px;
    font-size:16px;
    padding-top:30px;
    height:20px;
    min-height:40px;
}

.qq-upload-drop-area-active {
    background:#FF7171;
}

.qq-upload-list {
    margin:0;
    padding:0;
    list-style:none;
}

.qq-upload-list li {
    width:100%;
    margin:6px 2px;
    padding:9px;
    line-height:15px;
    font-size:13px;
    background-color:#EEEEEE;
    color:#000000;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    border-radius:4px;
}

.qq-upload-file,.qq-upload-spinner,.qq-upload-size,.qq-upload-cancel,.qq-upload-failed-text,.qq-upload-finished {
    margin-right:12px;
}

.qq-upload-file {
}

.qq-upload-spinner {
    display:inline-block;
    float:right;
    box-sizing:border-box;
    border-width:2px;
    border-style:solid;
    border-color:hsla(359,0%,0%,0.2);
    border-top-color:#000000;
    border-bottom-color:#000000;
    border-radius:50%;
    width:15px;
    height:15px;
    margin:0 auto;
    animation:spin 0.8s linear infinite;
    -webkit-animation:spin 0.8s linear infinite;
    vertical-align:text-bottom;
}

.qq-upload-finished {
    display:none;
    width:15px;
    height:15px;
    vertical-align:text-bottom;
}

.qq-upload-size,.qq-upload-cancel {
    font-size:12px;
    font-weight:normal;
}

.qq-upload-failed-text {
    display:none;
}

.qq-upload-failed-icon {
    display:none;
    width:15px;
    height:15px;
    vertical-align:text-bottom;
}

.qq-upload-fail .qq-upload-failed-text {
    display:inline;
}

.qq-upload-list li.qq-upload-success {
    margin:6px 2px;
    background-color:#CCFF99;
    color:#000000;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    border-radius:4px;
}

.qq-upload-list li.qq-upload-fail {
    margin:6px 2px;
    background-color:#FFCC00;
    color:#000000;
    -webkit-border-radius:4px;
    -moz-border-radius:4px;
    border-radius:4px;
}

.qq-upload-delete {
    display:none;
    float:right;
}

@media handheld,only screen and (max-width:767px) {
    .qq-upload-holder {
        margin-left:6px;
    }
}


/* modules/jrCore/contrib/sweetalert/sweetalert.css */


.sweet-overlay {
    background-color:black;
    background-color:rgba(0,0,0,0.8);
    position:fixed;
    left:0;
    right:0;
    top:0;
    bottom:0;
    display:none;
    z-index:10000;
}

.sweet-alert {
    background-color:white;
    width:438px;
    padding:10px 20px 20px 20px;
    text-align:center;
    position:fixed;
    left:50%;
    top:40%;
    margin-left:-236px;
    margin-top:-200px;
    overflow:hidden;
    display:none;
    z-index:99999;
}

@media all and (max-width:540px) {
    .sweet-alert {
        width:auto;
        margin-left:0;
        margin-right:0;
        left:15px !important;
        right:15px;
    }
}

.sweet-alert h2 {
    color:#000000;
    font-size:24px;
    text-align:center;
    font-weight:bold;
    text-transform:capitalize;
    position:relative;
    margin:25px 0 10px 0;
    padding:0;
    line-height:40px;
    display:block;
}

.sweet-alert p {
    color:#444444;
    font-size:16px;
    font-weight:300;
    position:relative;
    text-align:inherit;
    float:none;
    margin:0;
    padding:0;
    line-height:normal;
}

.sweet-alert fieldset {
    border:none;
    position:relative;
}

.sweet-alert .sa-error-container {
    background-color:#F1F1F1;
    margin-left:-17px;
    margin-right:-17px;
    overflow:hidden;
    padding:0 10px;
    max-height:0;
}

.sweet-alert .sa-error-container.show {
    padding:10px 0;
    max-height:100px;
    webkit-transition:padding 0.2s,max-height 0.2s;
    transition:padding 0.25s,max-height 0.25s;
}

.sweet-alert .sa-error-container .icon {
    display:inline-block;
    width:24px;
    height:24px;
    border-radius:50%;
    background-color:#FF9933;
    color:white;
    line-height:24px;
    text-align:center;
    margin-right:3px;
}

.sweet-alert .sa-error-container p {
    display:inline-block;
}

.sweet-alert .sa-input-error {
    position:absolute;
    top:29px;
    right:26px;
    width:20px;
    height:20px;
    opacity:0;
}

.sweet-alert .sa-input-error::before,.sweet-alert .sa-input-error::after {
    content:"";
    width:20px;
    height:6px;
    background-color:#FF9933;
    border-radius:3px;
    position:absolute;
    top:50%;
    margin-top:-4px;
    left:50%;
    margin-left:-9px;
}

.sweet-alert .sa-input-error::before {
}

.sweet-alert .sa-input-error::after {
}

.sweet-alert .sa-input-error.show {
    opacity:1;
}

.sweet-alert input {
    width:100%;
    box-sizing:border-box;
    border-radius:3px;
    border:1px solid #D7D7D7;
    height:43px;
    margin-top:10px;
    margin-bottom:17px;
    font-size:16px;
    box-shadow:inset 0 1px 1px rgba(0,0,0,0.06);
    padding:0 12px;
    display:none;
    -webkit-transition:all 0.3s;
    transition:all 0.3s;
}

.sweet-alert input:focus {
    outline:none;
}

.sweet-alert input:focus::-moz-placeholder {
    transition:opacity 0.3s 0.03s ease;
    opacity:0.5;
}

.sweet-alert input:focus:-ms-input-placeholder {
    transition:opacity 0.3s 0.03s ease;
    opacity:0.5;
}

.sweet-alert input:focus::-webkit-input-placeholder {
    transition:opacity 0.3s 0.03s ease;
    opacity:0.5;
}

.sweet-alert input::-moz-placeholder {
    color:#BDBDBD;
}

.sweet-alert input::-ms-clear {
    display:none;
}

.sweet-alert input:-ms-input-placeholder {
    color:#BDBDBD;
}

.sweet-alert input::-webkit-input-placeholder {
    color:#BDBDBD;
}

.sweet-alert.show-input input {
    display:block;
}

.sweet-alert .sa-confirm-button-container {
    display:inline-block;
    position:relative;
}

.sweet-alert .la-ball-fall {
    position:absolute;
    left:50%;
    top:50%;
    margin-left:-27px;
    margin-top:4px;
    opacity:0;
    visibility:hidden;
}

.sweet-alert button {
    margin:0 10px;
}

.sweet-alert[data-has-confirm-button=false][data-has-cancel-button=false] {
    padding-bottom:40px;
}

.sweet-alert .sa-icon {
    width:80px;
    height:80px;
    border:4px solid gray;
    -webkit-border-radius:40px;
    border-radius:50%;
    margin:20px auto;
    padding:0;
    position:relative;
    box-sizing:content-box;
    text-shadow:0 0 3px #000000;
}

.sweet-alert .sa-icon.sa-error {
    border-color:#FF9933;
}

.sweet-alert .sa-icon.sa-error .sa-x-mark {
    position:relative;
    display:block;
}

.sweet-alert .sa-icon.sa-error .sa-line {
    position:absolute;
    height:5px;
    width:47px;
    background-color:#FF9933;
    display:block;
    top:37px;
    border-radius:2px;
}

.sweet-alert .sa-icon.sa-error .sa-line.sa-left {
    left:17px;
}

.sweet-alert .sa-icon.sa-error .sa-line.sa-right {
    right:16px;
}

.sweet-alert .sa-icon.sa-warning {
    border-color:#FFCC00;
}

.sweet-alert .sa-icon.sa-warning .sa-body {
    position:absolute;
    width:5px;
    height:47px;
    left:50%;
    top:10px;
    -webkit-border-radius:2px;
    border-radius:2px;
    margin-left:-2px;
    background-color:#FFCC00;
}

.sweet-alert .sa-icon.sa-warning .sa-dot {
    position:absolute;
    width:7px;
    height:7px;
    -webkit-border-radius:50%;
    border-radius:50%;
    margin-left:-3px;
    left:50%;
    bottom:10px;
    background-color:#FFCC00;
}

.sweet-alert .sa-icon.sa-info {
    border-color:#C9DAE1;
}

.sweet-alert .sa-icon.sa-info::before {
    content:"";
    position:absolute;
    width:5px;
    height:29px;
    left:50%;
    bottom:17px;
    border-radius:2px;
    margin-left:-2px;
    background-color:#C9DAE1;
}

.sweet-alert .sa-icon.sa-info::after {
    content:"";
    position:absolute;
    width:7px;
    height:7px;
    border-radius:50%;
    margin-left:-3px;
    top:19px;
    background-color:#C9DAE1;
    left:50%;
}

.sweet-alert .sa-icon.sa-success {
    border-color:#A5DC86;
}

.sweet-alert .sa-icon.sa-success::before,.sweet-alert .sa-icon.sa-success::after {
    content:'';
    -webkit-border-radius:40px;
    border-radius:50%;
    position:absolute;
    width:60px;
    height:120px;
    background:white;
}

.sweet-alert .sa-icon.sa-success::before {
    -webkit-border-radius:120px 0 0 120px;
    border-radius:120px 0 0 120px;
    top:-7px;
    left:-33px;
}

.sweet-alert .sa-icon.sa-success::after {
    -webkit-border-radius:0 120px 120px 0;
    border-radius:0 120px 120px 0;
    top:-11px;
    left:30px;
}

.sweet-alert .sa-icon.sa-success .sa-placeholder {
    width:80px;
    height:80px;
    border:4px solid rgba(165,220,134,0.2);
    -webkit-border-radius:40px;
    border-radius:50%;
    box-sizing:content-box;
    position:absolute;
    left:-4px;
    top:-4px;
    z-index:2;
}

.sweet-alert .sa-icon.sa-success .sa-fix {
    width:5px;
    height:90px;
    background-color:white;
    position:absolute;
    left:28px;
    top:8px;
    z-index:1;
}

.sweet-alert .sa-icon.sa-success .sa-line {
    height:5px;
    background-color:#A5DC86;
    display:block;
    border-radius:2px;
    position:absolute;
    z-index:2;
}

.sweet-alert .sa-icon.sa-success .sa-line.sa-tip {
    width:25px;
    left:14px;
    top:46px;
}

.sweet-alert .sa-icon.sa-success .sa-line.sa-long {
    width:47px;
    right:8px;
    top:38px;
}

.sweet-alert .sa-icon.sa-custom {
    background-size:contain;
    border-radius:0;
    border:none;
    background-position:center center;
    background-repeat:no-repeat;
}


/* modules/jrCore/contrib/livesearch/jquery.livesearch.css */


#jquery-live-search {
    background:#FFFFFF;
    padding:5px 10px;
    max-height:400px;
    overflow:auto;
    position:absolute;
    z-index:200000;
    border:1px solid #A9A9A9;
    border-width:0 1px 1px 1px;
    -webkit-box-shadow:5px 5px 5px rgba(0,0,0,0.3);
    -moz-box-shadow:5px 5px 5px rgba(0,0,0,0.3);
    box-shadow:5px 5px 5px rgba(0,0,0,0.3);
}

#jquery-live-search a {
    color:#000000;
}

/* modules/jrCore/contrib/lightbox/lightbox.css */


/* Preload images */
body:after {
    display:none;
}

.lightboxOverlay {
    position:absolute;
    top:0;
    left:0;
    z-index:999999;
    background-color:black;
    filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
    opacity:0.8;
    display:none;
}

.lightbox {
    position:absolute;
    left:0;
    width:100%;
    z-index:1000000;
    text-align:center;
    line-height:0;
    font-weight:normal;
}

.lightbox .lb-image {
    display:block;
    height:auto;
    max-width:inherit;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    -ms-border-radius:3px;
    -o-border-radius:3px;
    border-radius:3px;
}

.lightbox a img {
    border:none;
}

.lb-outerContainer {
    position:relative;
    background-color:#111;
    *zoom:1;
    width:250px;
    height:250px;
    margin:0 auto;
    border-radius:5px 5px 0 0;
}

.lb-outerContainer:after {
    content:"";
    display:table;
    clear:both;
}

.lb-container {
    padding:4px;
}

.lb-loader {
    position:absolute;
    top:43%;
    left:0;
    height:25%;
    width:100%;
    text-align:center;
    line-height:0;
}

.lb-cancel {
    display:block;
    width:32px;
    height:32px;
    margin:0 auto;
}

.lb-nav {
    position:absolute;
    top:0;
    left:0;
    height:100%;
    width:100%;
    pointer-events:none;
}

.lb-container > .nav {
    left:0;
}

.lb-nav a {
    outline:none;
}

.lb-prev,.lb-next {
    font-size:24px;
    font-weight:bold;
    color:#CCC;
    height:100%;
    cursor:pointer;
    display:block;
    vertical-align:middle;
    line-height:50px;
    text-shadow:0 1px 1px #000;
    pointer-events:all;
}

.lb-nav a.lb-prev {
    width:20%;
    left:0;
    float:left;
    padding-left:15px;
    text-align:left;
    opacity:0;
}

.lb-nav a.lb-prev div {
    position:absolute;
    top:45%;
    left:15px;
}

.lb-nav a.lb-prev:hover {
    opacity:1;
    text-decoration:none;
    color:#FFF;
}

.lb-nav a.lb-next {
    width:33%;
    right:0;
    float:right;
    text-align:right;
    padding-right:15px;
    opacity:0;
}

.lb-nav a.lb-next div {
    position:absolute;
    top:45%;
    right:15px;
}

.lb-nav a.lb-next:hover {
    opacity:1;
    text-decoration:none;
    color:#FFF;
}

.lb-dataContainer {
    background:#111;
    margin:0 auto;
    padding-top:5px;
    *zoom:1;
    width:100%;
    border-radius:0 0 5px 5px;
}

.lb-dataContainer:after {
    content:"";
    display:table;
    clear:both;
}

.lb-data {
    padding:0 4px;
    color:#CCC;
}

.lb-data .lb-details {
    padding:0 0 8px 5px;
    width:85%;
    float:left;
    text-align:left;
    line-height:1.1em;
}

.lb-data .lb-caption {
    font-size:13px;
    font-weight:bold;
    line-height:1em;
}

.lb-data .lb-number {
    display:block;
    clear:left;
    font-size:12px;
    color:#999;
}

.lb-data .lb-close {
    font-size:24px;
    color:#CCC;
    float:right;
    line-height:20px;
    text-shadow:0 1px 1px #000;
    margin-right:5px;
    padding-bottom:8px;
}

.lb-data .lb-close:hover {
    cursor:pointer;
    color:#FFF;
}

body.lb-disable-scrolling {
    overflow:hidden;
}


/* modules/jrCore/contrib/select2/css/select2.min.css */


.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{position:relative}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;padding:0}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text}.select2-container--default .select2-selection--multiple .select2-selection__rendered{box-sizing:border-box;list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--default .select2-selection--multiple .select2-selection__rendered li{list-style:none}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;margin-top:5px;margin-right:10px;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#999;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#333}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice,.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline{float:right}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid black 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:transparent;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option[role=group]{padding:0}.select2-container--default .select2-results__option[aria-disabled=true]{color:#999}.select2-container--default .select2-results__option[aria-selected=true]{background-color:#ddd}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#5897fb;color:white}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top,#fff 50%,#eee 100%);background-image:-o-linear-gradient(top,#fff 50%,#eee 100%);background-image:linear-gradient(to bottom,#fff 50%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF',endColorstr='#FFEEEEEE',GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;margin-right:10px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top,#eee 50%,#ccc 100%);background-image:-o-linear-gradient(top,#eee 50%,#ccc 100%);background-image:linear-gradient(to bottom,#eee 50%,#ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE',endColorstr='#FFCCCCCC',GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top,#fff 0%,#eee 50%);background-image:-o-linear-gradient(top,#fff 0%,#eee 50%);background-image:linear-gradient(to bottom,#fff 0%,#eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF',endColorstr='#FFEEEEEE',GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top,#eee 50%,#fff 100%);background-image:-o-linear-gradient(top,#eee 50%,#fff 100%);background-image:linear-gradient(to bottom,#eee 50%,#fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE',endColorstr='#FFFFFFFF',GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{color:#888;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{float:right;margin-left:5px;margin-right:auto}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option[role=group]{padding:0}.select2-container--classic .select2-results__option[aria-disabled=true]{color:grey}.select2-container--classic .select2-results__option--highlighted[aria-selected]{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb}


/* modules/jrCore/css/jrCore.css */


/* Modal Window */
* {
    -webkit-font-smoothing:subpixel-antialiased;
}

/* @title Modal Overlay background */
/* @help Defines the background color used when a modal window is opened */
#simplemodal-overlay {
    background-color:#000;
    cursor:wait;
}

#modal_window {
    display:none;
    overflow:auto;
}

/* @title Modal Update Text */
/* @help Text used for individual update lines in an activity update modal window */
#modal_updates {
    color:#000;
    font-size:12px;
    font-family:monospace;
    padding:8px 16px; 
    overflow:auto;
}

#modal_indicator {
    display:none;
    float:right;
    position:relative;
    top:60px;
    right:20px;
}

.search_area_left {
    padding-bottom:12px !important;
}

.search_area_right {
    padding-bottom:12px !important;
}

.live_search_text {
    resize:none !important;
}

/* File form field */
.jrcore_file_detail {
    position:relative;
    width:76.5%;
    padding:6px 10px !important;
    margin:8px 0 12px 2px !important;
    font-size:12px !important;
    font-variant:normal !important;
    text-transform:none !important;
    border-radius:3px;
}

.jrcore_file_detail_left {
    width:2%;
    vertical-align:middle;
}

.jrcore_file_detail_right {
    width:98%;
    text-align:left;
}

.jrcore_file_title {
    width:60px;
    display:inline-block;
    text-align:right;
    text-transform:lowercase;
    font-variant:small-caps;
}

.at_link a {
    color:#009;
    text-decoration:none;
}

.at_link a:hover {
    text-decoration:underline;
}

/* Admin Menu Accordion */
.accordion {
    margin:0;
    padding-top:10px;
}

.accordion a {
    color:#000;
    text-decoration:none;
}

.accordion a:hover {
    color:#000;
    text-decoration:none;
}

dt {
    padding:12px;
    font-weight:bold;
    cursor:pointer;
}

dt a {
    color:#000;
}

dd {
    padding:3px 0;
    margin:0;
    font-size:12px;
}

#item-holder {
    margin-right:9px;
}

#item-list {
    width:100%;
    display:table;
    margin:9px 0 9px 9px;
    padding:6px;
}

.item-row {
    width:100%;
    display:table-row;
    cursor:pointer;
    height:42px;
    background:#DDD;
}

.item-row-active {
    background:#FFF;
}

.item-row:hover {
    background:#FFF;
}

.item-icon {
    display:table-cell;
    padding:3px;
}

.item-entry {
    width:100%;
    display:table-cell;
    padding:6px;
    font-size:14px;
    color:#000;
    vertical-align:middle;
}

.item-enabled {
    display:table-cell;
    padding-right:6px;
}

.item-disabled {
    display:table-cell;
    color:#000;
    background:#FC0;
    font-size:11px;
    padding:6px;
    border:1px solid #AAA;
    border-radius:4px;
}

.item-active {
    display:table-cell;
    background:#CF9;
    font-size:11px;
    padding:6px;
    border:1px solid #AAA;
    border-radius:4px;
}

#item-work {
    background:#DDD;
    max-width:100%;
}

#error_log {
    font-family:Monaco,"Lucida Console",monospace;
    width:100%;
    padding:6px;
    font-size:10px;
    overflow:auto;
}

#debug_log {
    font-family:Monaco,"Lucida Console",monospace;
    width:100%;
    padding:6px;
    font-size:10px;
    overflow:auto;
    white-space:pre;
    word-break:break-word;
}

.ds_browser_item {
    max-height:250px;
    overflow:scroll;
}

/* DataStore Browser */
.ds_browser_key {
    width:425px;
    display:inline-block;
    text-align:right;
    background:#EEE;
    padding:1px 3px;
    border-radius:2px;
    margin-bottom:2px;
    font-size:12px;
    font-weight:bold;
}

.ds_browser_value {
    text-align:left;
    padding-left:3px;
    word-break:break-all;
}

#ds_browser_new_key {
    width:120px;
}

/* Template Editor */
.form_editor_holder {
    text-transform:none;
    width:95%;
    z-index:25000;
    height:100%;
    padding:0;
    margin:0;
}

.form_editor_holder > div {
    min-height:170px;
}

.form_editor_full_width {
    width:100%;
    margin-top:8px;
    margin-bottom:8px;
}

.page_custom {
    max-width:1024px;
    box-sizing:border-box;
}

.form_template {
    text-transform:none;
    box-sizing:border-box;
}

.form_template_editor {
    text-transform:none;
    height:600px;
}

.php_Notice {
}

.php_Warning {
    color:#F90;
}

.php_Fatal,.php_Parse {
    color:#F00;
}

.log-inf {
    text-align:left;
    word-break:break-all;
}

.log-dbg {
    text-align:left;
    word-break:break-all;
    color:#666 !important;
}

.log-min {
    background:#FF9;
    text-align:left;
    word-break:break-all;
}

.log-maj {
    background:#F93;
    text-align:left;
    word-break:break-all;
}

.log-cri {
    background:#F63;
    text-align:left;
    word-break:break-all;
}

.style-box {
    width:80%;
    margin-bottom:6px;
    padding:6px;
    border-left-width:2px;
    border-left-style:solid;
    border-left-color:#DDD;
    font-size:12px;
    float:left;
}

.style-box-hilight {
    border-left-color:#FC0;
}

.style-reset {
    position:absolute;
    top:6px;
    right:32px;
}

.style-input {
    width:175px;
}

.style-select {
    width:185px !important;
}

.style-color {
    width:24px;
    height:16px;
    margin:0 6px;
    border:1px solid #DDD;
    cursor:pointer;
}

.style-label {
    display:inline-block;
    width:120px;
    text-align:right;
    margin:6px;
    padding:0;
}

.CodeMirror {
    background:#FFF;
    padding:6px;
    font-size:12px;
    border:solid 1px #CCC;
    overflow:auto;
}

.fullscreen {
    display:block;
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:9999;
    margin:0;
    padding:0;
    border:0;
    opacity:1;
}

#jqp {
    background:#FAFAFA;
    width:360px;
    padding:6px 2px 2px 6px;
    border:solid 1px #7F7F7F;
    border-radius:2px;
    box-shadow:5px 5px 5px rgba(0,0,0,0.3);
    z-index:10000;
}

#jqp h2 {
    margin:0 0 5px 0;
    font-size:14px;
}

#jqp ul {
    margin:0;
    padding:0;
    list-style-type:none;
}

#jqp ul:after {
    content:".";
    display:block;
    height:0;
    visibility:hidden;
    clear:both;
}

#jqp ul li {
    float:left;
    margin:0 5px 5px 0;
}

#jqp ul li a {
    display:block;
    width:13px;
    height:13px;
    text-decoration:none;
    text-indent:-100000px;
    outline:0;
    border:solid 1px #7F7F7F;
}

#jqp ul li a:hover {
    border-color:#000;
}

.sortable li li {
    list-style:disc;
}

.item_sortable {
    margin:auto;
    padding:0;
    list-style:none outside none;
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
}

.item_sortable li {
    border:1px solid #BBB;
    list-style:none;
    cursor:move;
    padding:5px 12px 5px 12px;
    margin:5px;
    height:20px;
    font-size:14px;
    overflow:hidden;
}

li.sortable-placeholder {
    border:2px dashed #CCC;
    background:none;
    padding:5px 12px 5px 12px;
    margin:5px;
    height:18px;
}

#diff_result {
    font-family:Monaco,"Lucida Console",monospace;
    width:100%;
    font-size:11px;
    overflow:auto;
    margin:6px 0 18px 0;
}

#diff_table {
    width:100%;
    background-color:#EEE !important;
    border-collapse:collapse;
    border-spacing:1px;
    white-space:pre-line;
    border-width:1px;
    border-style:solid;
    border-color:#DDD;
}

#diff_table td {
    background:#FFF;
    padding:3px 5px;
    color:#000;
    border-bottom:1px solid #F6F6F6;
}

.diff_head {
    width:50%;
    text-align:center;
    font-weight:bold;
    font-size:12px;
    padding:6px;
}

.diff_foot {
    background-color:#EEE;
    text-align:center;
    padding:12px !important;
}

.diff_lno {
    width:3%;
    padding-right:6px !important;
    font-weight:bold;
    text-align:right;
}

.diff_none {
    background:#FFF;
}

.diff_chg {
    background:#FC0 !important;
}

.diff_new {
    background:#CF9 !important;
}

.diff_old {
    background:#CF9 !important;
}

.file_attachment_box {
    width:100%;
    display:block;
    margin-top:20px;
    font-size:13px;
    box-sizing:border-box;
}

.file_attachment {
    position:relative;
    margin-bottom:4px;
}

.file_attachment_image {
    display:inline;
}

.file_attachment_text {
    display:inline;
    margin-left:6px;
}

.fixed-width {
    font-family:monospace;
    white-space:pre-wrap;
    font-size:11px;
}

.widget-template-code {
    font-size:12px;
    padding:8px 20px 10px 20px;
}

.word-break {
    word-break:break-all;
}

.nocursor {
    cursor:unset !important;
}

/* @title Textarea Expand */
/* @help Controls the display of the small Expand arrow to the right of the textarea */
.form_textarea_expand {
    display:none;
    position:absolute;
    bottom:12px;
    margin-left:3px;
}

/* @title Birthday Field Month */
/* @help controls the MONTH selector in a Birthday form field */
.form_date_birthday_month {
    width:120px !important;
}

/* @title Birthday Field Day */
/* @help controls the DAY selector in a Birthday form field */
.form_date_birthday_day {
    width:60px !important;
}

/* @title Birthday Field Year */
/* @help controls the YEAR input field in a Birthday form field */
.form_date_birthday_year {
    width:60px !important;
    margin-left:9px;
    padding:4px 4px 3px 4px;
}

.form_daterange,.form_date,.form_date_time {
    min-width:286px;
}

.form_mobile_label {
    font-size:13px;
    text-transform:capitalize;
    margin-left:6px;
}

.sublabel {
    display:block;
}

.page-table-jumper-page {
    width:65px !important;
}

.page-table-jumper-perpage {
    width:65px !important;
}

.acp-default-img {
    padding:1px;
    margin:1px;
    border:1px solid #DDD;
}

.acp-custom-img {
    padding:1px;
    margin:1px;
    border:1px solid #DDD;
}

.module_icon {
    background-color:#F3F3F3;
    border:1px solid #DDD;
    display:block;
    border-radius:5px;
    padding:2px;
    margin:2px;
    box-shadow:inset 0 0 3px #DDD;
}

.module_icon img {
    margin:0 auto;
    vertical-align:middle;
    transform:scale(0.9);
}

#info_box .item strong {
    display:inline-block;
    width:100px;
    text-align:right;
    margin-right:8px;
    padding:2px 0;
    text-transform:capitalize;
}

.rejected_reason_delete {
    padding:0;
}

.nowrap {
    white-space:nowrap;
}

.no-text-transform {
    text-transform:none !important;
}

.form_icon_button {
    display:inline-block;
    vertical-align:middle;
    text-align:center;
    margin:0;
    padding:0;
    cursor:pointer;
}

.form_button_icon {
    font-weight:normal;
    font-style:normal;
    font-size:20px;
    letter-spacing:normal;
    text-transform:none;
    display:inline-block;
    white-space:nowrap;
    word-wrap:normal;
    direction:ltr;
    -webkit-font-feature-settings:'liga';
    -webkit-font-smoothing:antialiased;
}

.form_button_menu {
    position:relative;
    display:inline-block;
    vertical-align:middle;
    white-space:nowrap;
}

.form_button_menu_button {
    float:left;
}

.form_button_menu ul {
    position:absolute;
    display:none;
    top:35px;
    left:0;
    z-index:32;
    border:1px solid #D9D9D9;
    background-color:#FFF;
    margin:0;
    padding:0;
}

.form_button_submenu {
    margin:0;
    padding:5px 10px;
    font-size:16px;
    cursor:pointer;
    list-style:none;
}

.form_button_submenu:hover {
    background-color:#FC0;
}

.form_button_menu_ul li {
    list-style:none;
}

.sprite_icon_disabled {
    cursor:not-allowed !important;
    opacity:0.3;
}

.sprite_icon_disabled:hover {
    background:inherit !important;
}

.option_img {
    display:inline-block;
    vertical-align:middle;
    border-radius:50%;
    box-shadow:inset 0 0 2px #999;
}

.fail {
    background-color:#FF7400;
}

.select2 {
    margin:0 4px;
}

.select2-select-width {
    width:76.3% !important;
}

.select2-select-and-text-width {
    width:33% !important;
}

.select2-selection--single {
    background:#FFF url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0Ljk1IDEwIj48ZGVmcz48c3R5bGU+LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHBvbHlnb24gY2xhc3M9ImNscy0yIiBwb2ludHM9IjEuNDEgNC42NyAyLjQ4IDMuMTggMy41NCA0LjY3IDEuNDEgNC42NyIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIzLjU0IDUuMzMgMi40OCA2LjgyIDEuNDEgNS4zMyAzLjU0IDUuMzMiLz48L3N2Zz4=) no-repeat 99.5% 50%;
    height:30px !important;
    border-color:#CCC !important;
    border-radius:2px !important;
}

.select2-selection__rendered {
    font-size:15px !important;
    color:#000 !important;
    padding-left:5px !important;
    line-height:30px !important;
}

.select2-selection__arrow {
    top:2px !important;
}

.select2-dropdown {
    border-color:#CCC !important;
    border-radius:2px !important;
}

.select2-selection__arrow b {
    display:none;
}

.core-log-iframe {
    box-sizing:border-box;
    border:0;
    width:100%;
    height:270px;
}

.form_date_repeat {
    width:100%;
}

.form_select_and_text_tag {
    display:inline-block;
    min-width:72px;
    text-align:right;
}

.form_select_narrow {
    width:120px !important;
}

.svg_icon {
    display:table;
    box-sizing:border-box;
}

.svg_icon_disabled svg {
    opacity:0.2;
}

input::placeholder,select::placeholder,textarea::placeholder {
    color:#CCC;
}

#jr-ds-item-count {
    position:absolute;
    bottom:12px;
    right:12px;
    padding:10px;
    text-align:center;
    font-size:13px;
}

#jr-ds-item-count span {
    font-weight:bold;
}

.form_select_area_search {
    width:auto !important;
}

.page_tab {
    user-select:none;
}

/* modules/jrCore/css/jrCore_bbcode.css */


#bbcode_help_button {
    text-align:center;
    margin-top:-33px;
}

#bbcode_help_button input {
    float:right;
    position:relative;
    margin:0 6px 0 3px;
}

#bbcode_help {
    width:800px;
    height:600px;
}

/* Mobile */
@media handheld,only screen and (max-width:767px) {
    #bbcode_help {
        width:auto;
    }
}

.bbcode_help_section {
    width:75%;
    background:#FFF;
    border-radius:3px;
    margin-top:12px;
}

.bbcode_left {
    background:#F6F6F6;
    width:50%;
    text-align:right;
    padding:6px;
}

.bbcode_right {
    width:50%;
    padding:6px;
}

.bbcode_quote {
    width:100%;
    padding:12px;
    background-color:#EEE;
    font-size:14px;
    font-style:italic;
    box-sizing:border-box;
    word-break:break-all;
}

.bbcode_quote_user {
    font-size:16px;
    font-weight:bold;
}

.bbcode_code {
    background-color:#EEE;
    width:100%;
}

/* BBCode code syntax Highlighting */

.hljs {
    max-height:400px;
    font-family:Monaco,"Courier New",Courier,monospace;
    display:block;
    overflow:auto;
    padding:10px;
    color:black;
    -webkit-text-size-adjust:none;
    font-size:11px;
    margin:6px 0;
    border-radius:3px;
    white-space:pre-wrap;
    word-break:break-all;
}

.hljs-comment {
    color:#006A00;
}

.hljs-keyword,
.hljs-literal,
.nginx .hljs-title {
    color:#AA0D91;
}

.method,
.hljs-list .hljs-title,
.hljs-tag .hljs-title,
.setting .hljs-value,
.hljs-winutils,
.tex .hljs-command,
.http .hljs-title,
.hljs-request,
.hljs-status,
.hljs-name {
    color:#008;
}

.hljs-envvar,
.tex .hljs-special {
    color:#660;
}

.hljs-string {
    color:#C41A16;
}

.hljs-tag .hljs-value,
.hljs-cdata,
.hljs-filter .hljs-argument,
.hljs-attr_selector,
.apache .hljs-cbracket,
.hljs-date,
.hljs-regexp {
    color:#080;
}

.hljs-sub .hljs-identifier,
.hljs-pi,
.hljs-tag,
.hljs-tag .hljs-keyword,
.hljs-decorator,
.ini .hljs-title,
.hljs-shebang,
.hljs-prompt,
.hljs-hexcolor,
.hljs-rule .hljs-value,
.hljs-symbol,
.hljs-symbol .hljs-string,
.hljs-number,
.css .hljs-function,
.hljs-function .hljs-title,
.coffeescript .hljs-attribute {
    color:#1C00CF;
}

.hljs-class .hljs-title,
.smalltalk .hljs-class,
.hljs-type,
.hljs-typename,
.hljs-tag .hljs-attribute,
.hljs-doctype,
.hljs-class .hljs-id,
.hljs-built_in,
.setting,
.hljs-params,
.clojure .hljs-attribute {
    color:#5C2699;
}

.hljs-variable {
    color:#3F6E74;
}

.css .hljs-tag,
.hljs-rule .hljs-property,
.hljs-pseudo,
.hljs-subst {
    color:#000;
}

.css .hljs-class,
.css .hljs-id {
    color:#9B703F;
}

.hljs-value .hljs-important {
    color:#F70;
    font-weight:bold;
}

.hljs-rule .hljs-keyword {
    color:#C5AF75;
}

.hljs-annotation,
.apache .hljs-sqbracket,
.nginx .hljs-built_in {
    color:#9B859D;
}

.hljs-preprocessor,
.hljs-preprocessor *,
.hljs-pragma {
    color:#643820;
}

.tex .hljs-formula {
    background-color:#EEE;
    font-style:italic;
}

.diff .hljs-header,
.hljs-chunk {
    color:#808080;
    font-weight:bold;
}

.diff .hljs-change {
    background-color:#BCCFF9;
}

.hljs-addition {
    background-color:#BAEEBA;
}

.hljs-deletion {
    background-color:#FFC8BD;
}

.hljs-comment .hljs-doctag {
    font-weight:bold;
}

.method .hljs-id {
    color:#000;
}

/* modules/jrCore/css/jrCore_tinymce.css */


/* @title TinyMCE Editor Body */
/* @help Controls the height of the TinyMCE editor */
#form-editor-body {
    height:100%;
}

.mce-fullscreen {
    z-index:10000 !important;
}

#mce-modal-block.mce-in {
    background:#000;
    opacity:0.8 !important;
}


/* modules/jrCore/css/jrCore_dashboard.css */


.bigtable {
    background:#FFF !important;
}

.bigtable th {
    position:relative;
}

/* @title Dashboard Panel Box */
/* @help When viewing the dashboard this controls the box the numbers appear in */
.bignum {
    background:#333;
    text-align:center;
    font-size:42px !important;
    line-height:42px;
    padding:12px !important;
    height:64px;
    -moz-box-shadow:inset 0 0 8px #000;
    -webkit-box-shadow:inset 0 0 8px #000;
    box-shadow:inset 0 0 8px #000;
    cursor:pointer;
}

/* @title Panel Color 1 */
/* @help Controls the font color for the first column in the dashboard */
.bignum1,.bignum1 a {
    color:#FC0 !important;
}

/* @title Panel Color 2 */
/* @help Controls the font color for the second column in the dashboard */
.bignum2,.bignum2 a {
    color:#F93 !important;
}

/* @title Panel Color 3 */
/* @help Controls the font color for the third column in the dashboard */
.bignum3,.bignum3 a {
    color:#6C6 !important;
}

/* @title Panel Color 4 */
/* @help Controls the font color for the fourth column in the dashboard */
.bignum4,.bignum4 a {
    color:#09F !important;
}

/* @title Panel Color 5 */
/* @help Controls the font color for the fifth column in the dashboard */
.bignum5,.bignum5 a {
    color:#3CC !important;
}

.bignum span {
    display:block;
    font-size:11px !important;
    line-height:13px;
    padding:0;
    margin:8px 0 0 0;
}

.bignum_stat_cell {
    position:relative;
}

.bignum_stat {
    position:absolute;
    top:0;
    right:0;
}

.bigsystem {
    text-align:left;
}

.bigsystem-inf {
    color:#FFF !important;
}

.bigsystem-min {
    background-color:#FC0 !important;
    color:#000 !important;
}

.bigsystem-maj {
    background-color:#F90 !important;
    color:#000 !important;
}

.bigsystem-cri {
    background-color:#F60 !important;
    color:#000 !important;
}

.page_table_fullscreen {
    height:100vh;
    width:100vw;
}

.page_table_fullscreen .bignum span {
    margin-top:30px;
    font-size:15px !important;
}

.page_table_fullscreen .page_table_header {
    height:4vh;
    font-size:24px;
}

.page_table_fullscreen .bignum_stat a {
    display:none;
}

.bigtable_r1.page_table_fullscreen .bignum {
    height:92vh;
    font-size:112px !important;
}

.bigtable_r2.page_table_fullscreen .bignum {
    height:42vh;
    font-size:96px !important;
}

.bigtable_r3.page_table_fullscreen .bignum {
    height:24vh;
    font-size:82px !important;
}

.bigtable_r4.page_table_fullscreen .bignum {
    height:17vh;
    font-size:72px !important;
}

.bigtable_r5.page_table_fullscreen .bignum {
    height:12vh;
    font-size:56px !important;
}


/* modules/jrCore/css/jrCore_mobile_override.css */


@media handheld,only screen and (max-width:767px) {

    .bignum {
        font-size:28px !important;
    }

    .page_table_mobile_container {
        box-sizing:border-box;
        max-width:100vw;
    }

    .page_table_cell_mobile_left {
        width:20%;
        text-align:right !important;
    }

    .page_table_cell_mobile_left input {
        display:none;
    }

    .page_table_cell_mobile_right {
        width:80%;
        text-align:left !important;
    }

    .page_table_cell_mobile_right input[type="button"] {
        box-sizing:border-box;
        width:98%;
    }

    .page_banner_right input,.page_banner_right select {
        float:right;
        clear:both;
        margin:10px;
    }

    .form_daterange,.form_date,.form_date_time {
        min-width:unset;
    }

    .form_editor_holder {
        overflow:unset !important;
    }

    .lb-nav a.lb-next,.lb-nav a.lb-prev {
        opacity:1 !important;
    }

}

/* modules/jrEmbed/css/jrEmbed.css */


.mce-floatpanel {
    z-index:500000 !important;
}

/* modules/jrGeo/css/jrGeo.css */


/* Jamroom Geo Location Module CSS */

/* @title Modal Search Update */
/* @help Shows to the user when the search conditions are being updated */
#geo-zip-modal {
    background:#FFF;
    color:#000;
    width:250px;
    height:auto;
    padding:20px;
    border-radius:5px;
    text-align:center;
}

/* @title ZIP Code field */
/* @help This is the ZIP code field on the ZIP code search results page */
#zip-code-input {
    width:30%;
}

/* @title ZIP Radius field */
/* @help This is the ZIP code radius field on the ZIP code search results page */
#zip-code-radius {
    width:25%;
}


/* modules/jrGraph/css/jrGraph.css */


.graph-legend {
    margin:-20px 20px 20px 52px;
}

.graph-legend .legendColorBox {
    width:1%;
}

.graph-legend .legendColorBox > div {
    border-width:0 !important;
    padding:0;
}

.graph-legend .legendLabel {
    width:99%;
    text-align:left;
    padding-left:8px;
}

#graph-modal-container .page_content {
    padding:10px;
}

#graph-modal-container .form_submit_section {
    border-bottom:0 !important;
}

.graph-xyval {
    display:inline-block;
    margin-right:6px;
}

.graph-selector {
    display:inline-block;
    width:100px !important;
}

/* modules/jrImage/css/jrImage.css */


.image_delete {
    position:absolute;
    top:3px;
    right:3px;
}

.image_delete_mobile_label {
    font-size:13px;
    text-transform:capitalize;
    margin-left:5px;
}

.image_delete a {
    text-decoration:none;
}

.image_update_display {
    display:inline-block;
    position:relative;
    margin:3px 0;
}

.form_image_right_container {
    display:block;
}

/* modules/jrMailer/css/jrMailer.css */


#cp-display-area {
    overflow-x:hidden;
    overflow-y:scroll;
}

/* modules/jrMarket/css/jrMarket.css */


.market_status_section {
    height:18px;
    display:inline-block;
    vertical-align:middle;
    background:#EEE;
    border-radius:3px;
    margin:6px 0 0 0;
    text-align:center;
    color:#000;
}

.market_status_section_stable {
    background:#CF9;
}

.market_status_section_beta {
    background:#FD0;
}

.market_status_section_text {
    text-transform:uppercase;
    position:relative;
    left:2px;
    padding:0 16px;
    color:#000;
    font-size:12px;
}

.changelog {
    width:100%;
    font-size:12px;
    white-space:pre-wrap;
    word-wrap:break-word;
}

.market_jumper {
    width:250px !important;
}

.market-description {
    font-size:12px;
}

.market-version {
    height:14px !important;
    padding:2px 5px 0 5px;
    font-size:10px;
    margin-bottom:6px;
    white-space:nowrap;
}

.market-requires {
    font-size:11px;
}

.changelog_div {
    background-color:#FFF;
    font-family:monospace;
    white-space:pre-wrap
}


/* modules/jrPage/css/jrPage.css */


/* Jamroom Page Module CSS */

/* @title Page Body */
/* @help Defines the font size for the main page body content */
.jrpage_body {
    font-size:16px;
}

.jrpage_body p {
    padding:3px 12px;
}

.page_actions {
    position:absolute;
    top:12px;
    right:12px;
    display:none;
}


/* modules/jrProfile/css/jrProfile.css */


/* @title Your Profiles Grid */
/* @help Controls the Your Profiles page from the User Menu */
.profile_grid {
    text-align:center;
}

.profile_grid .item {
    display:inline-block;
}

.profile_grid img {
    width:185px;
    height:185px;
}

/* modules/jrSearch/css/jrSearch.css */


/* @title Search Text Block */
/* @help Controls the block holding the search field on module index */
.block_search {
    float:right;
    white-space:nowrap;
    text-align:right;
    width:50%;
}

/* @title Search Text Input */
/* @help Format for Text Input search element on module indexes */
.form_text_search {
    width:50%;
}

.jrsearch_reorder_item {
    text-transform:capitalize;
}

#ff-row-display_order .form_button {
    margin-top:4px;
}

/* modules/jrSiteBuilder/css/jrSiteBuilder.css */


.sb-button {
    width:120px;
    text-align:center;
    display:block; 
    padding:6px 12px;
    position:fixed;
    border:1px solid #000000;
    border-radius:3px;
    background-color:#FFCC00;
    color:#000000;
    font-size:15px;
    cursor:pointer;
    z-index:600;
}

.sb-button:hover {
    background:#EEEEEE;
    color:#000000;
}

#sb-edit-button {
    bottom:36px;
    left:36px;
}

#sb-close-button {
    bottom:36px;
    left:36px;
}

#sb-edit-layout {
    bottom:76px;
    left:36px;
}

#sb-page-delete {
    bottom:116px;
    left:36px;
}

#sb-edit-menu {
    bottom:156px;
    left:36px;
}

#sb-doc-menu {
    bottom:196px;
    left:36px;
}

#sb-edit-cp {
    background:#FFFFFF;
    margin:0 auto;
    display:none; 
    padding:12px;
    width:1140px;
    height:600px;
    border-radius:3px;
    overflow-x:hidden;
    overflow-y:auto;
}

#sb-widget-work {
    overflow-y:auto;
    overflow-x:hidden;
}

#sb-widget-work .form_template {
    max-width:839px;
}

#sb-widget-settings {
    display:none; 
}

#sb-layout-section {
    display:none; 
    margin-bottom:12px;
}

.sb-accordion {
    margin:0 12px 0 0;
}

.sb-accordion a {
    color:#000000;
    text-decoration:none;
}

.sb-accordion a:hover {
    color:#000000;
    text-decoration:none;
}

/* @title Widget Container */
/* @help Controls the padding and margin for the Widget Containers */
.sb-widget-col {
    position:relative; 
    padding:6px;
    margin:0;
}

.sb-container-controls {
    position:absolute;
    top:12px;
    right:18px;
}

.sb-widget-new {
    display:none; 
}

.sb-widget-block {
    min-height:50px;
    position:relative;
}

.sb-widget-block-edit {
    padding:6px !important;
}

/* @title Widget Item */
/* @help This class is applied to the holder for each widget in a container */
.sb-widget-content {
    padding:0;
    margin:0;
}

.sb-widget-controls {
    position:absolute;
    top:12px;
    right:12px;
    text-align:right;
    z-index:1000;
}

.sb-widget-controls small {
    display:inline-block; 
    margin-top:2px;
    font-size:11px;
    color:#333333;
}

.sb-widget-hilight {
    border:1px dashed #CCCCCC;
    border-radius:2px;
    margin:5px !important;
    padding:6px 6px 44px 6px;
}

.sb-item-row {
    width:100%;
    display:table-row; 
    cursor:pointer;
    height:34px;
    background:#EEEEEE;
}

.sb-item-row-active.sb-item-row-default,
.sb-item-row-active {
    background:#FFCC00;
}

.sb-item-row-default {
    background:#CCCCCC;
}

.sb-item-row:hover {
    background:#FFCC00;
}

.sb-item-icon {
    display:table-cell; 
    padding:3px;
}

.sb-item-entry {
    width:100%;
    display:table-cell; 
    padding:3px;
    font-size:14px;
    color:#000000;
    vertical-align:middle;
}

.first-col,.second-col,.third-col {
    position:relative;
    font-size:18px;
    font-weight:bold;
}

.sb-cell-widget {
    float:left;
    position:absolute;
    top:6px;
    left:9px;
    font-size:8px;
    font-weight:normal;
    text-transform:uppercase;
    color:#999999;
}

.new-cell {
    background:#D5EFFF;
    margin:3px;
    padding:6px;
    border:1px solid #DDDDDD;
    border-radius:3px;
}

#eventslider {
    margin:25px 30px 6px 30px;
}

#layout-row {
    margin:6px 30px 25px 30px;
}

.saved-row {
    margin:3px 30px 3px 30px;
}

#saved-rows {
    margin-top:16px;
}

.sb-row-button {
    margin:0 auto;
    padding:6px 3px;
    background:#EEEEEE;
    border:1px solid #DDDDDD;
    border-radius:3px;
    font-size:16px;
    text-align:center;
    cursor:pointer;
}

.sb-row-button:hover {
    background:#FFCC00;
}

.col0 {
    display:none; 
}

.sb-menu-entry {
    padding:0 6px;
}

.sb-menu-text a {
    text-decoration:none;
}

.sb-menu-text-new {
    margin:0;
    color:#666666;
    font-size:13px;
    border:0;
    cursor:pointer;
}

.sb-new-click {
    padding:0;
    margin:0;
    text-decoration:none;
}

.sb-menu-delete {
    position:absolute;
    top:0;
    right:3px;
    display:inline-block; 
}

.sb-menu-indent-0 {
    box-sizing:border-box;
    padding:6px;
    font-size:15px;
    width:100%;
    margin-left:0;
}

.sb-menu-indent-1 {
    box-sizing:border-box;
    padding:4px;
    font-size:14px;
    width:90%;
    margin:3px 0 3px 9px;
}

.sb-menu-indent-2 {
    box-sizing:border-box;
    padding:2px;
    font-size:13px;
    width:80%;
    margin:3px 0 3px 18px;
}

.sb-menu-new-indent-0 {
    margin:0 0 3px 9px;
}

.sb-menu-new-indent-1 {
    margin:0 0 3px 18px;
}

.sb-menu-new-indent-2 {
    margin:0 0 3px 27px;
}

.menu-col1 {
    background:#EEEEEE;
    border:1px solid #EEEEEE;
}

.menu-col2 {
    background:#F9F9F9;
    border:1px solid #EEEEEE;
}

.sb-top-menu-entry {
}

.sb-menu-entry {
    background:#EEEEEE;
    padding:6px 9px;
    font-size:15px;
    color:#000000;
    vertical-align:middle;
    margin-top:3px;
    border-radius:2px;
    text-transform:capitalize;
    cursor:move;
}

.sb-menu-entry a {
    cursor:pointer;
}

#sb-new-entry {
    width:85%;
    margin:0;
}

.sb-menu-entry button {
    float:right;
    margin:0;
}

.sb-menu-entry-active {
    background:#FFCC00;
}

.sb-menu-expand-icon {
    display:inline; 
    margin-right:4px;
}

.sb-menu-noexpand {
    display:inline; 
    width:20px;
}

.sb-menu-delete-icon {
    position:absolute;
    right:6px;
    top:6px;
}

.sb-menu-add-button {
    position:absolute;
    right:6px;
    top:6px;
}

.sb-menu-text {
    width:100%;
    box-sizing:border-box;
    border:0;
    border-radius:2px;
    background-color:#FFFFFF;
    padding:3px 6px;
    color:#000000;
}

#menu-entry-holder {
    overflow:auto;
}

.connectedSortable {
    list-style:outside none none;
    min-height:20px;
    padding:0;
    overflow:auto;
}

.sb-add-widget-btn {
    font-size:11px;
    position:absolute;
    right:12px;
    bottom:12px;
}

.sb-mod-container-btn {
    font-size:11px;
    position:absolute;
    left:12px;
    bottom:12px;
}

.sb-container-tabs {
    padding:32px 12px 0 12px;
    margin-bottom:-12px
}

.sb-widget-type-info {
    opacity:0.2;
}

/* browser page icon */
.sb_page_icon {
    width:150px;
    padding:0 0 2px 0;
    margin:0;
    background-color:#E6E6E6;
}

.sb_page_icon-row {
    margin:2px;
}

.sb_page_icon-cell {
    font-size:10px;
    border:1px solid #AAAAAA;
    padding:2px 0;
    margin:1px;
}

#sb-json-message {
    margin:0 4px;
}

/* notifications from web sockets */
.menu_0_link .notifications {
    background:#f8f494 none repeat scroll 0 0;
    border:1px solid #000000;
    border-radius:5px;
    color:#000000;
    opacity:1;
    padding:0 5px;
    position:absolute;
    right:0;
    text-shadow:none;
    top:0;
    transition:opacity 0.3s linear 0s;
}

.menu_0_link .notifications.none {
    opacity:0;
}

/* button audio players in a widget item list =  no disc */
ul.sb-widget-sortable .widget-item .sc_button_player li,
ul.sb-widget-sortable .widget-item .button_player li
{
    list-style:none;
}

/* html content in a widget with a list,show disk */
ul.sb-widget-sortable .widget-item ul li {
    list-style:disc;
}

ul.sb-widget-sortable .qq-upload-list li {
    list-style:none;
}

#menu_editor li {
    list-style:none;
}
#sb-menu-options-form .hljs {
    max-width:none;
}

/* modules/jrSiteBuilder/css/jquery.nouislider.css */



/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
-webkit-touch-callout:none;
-webkit-user-select:none;
-ms-touch-action:none;
-ms-user-select:none;
-moz-user-select:none;
-moz-box-sizing:border-box;
	box-sizing:border-box;
}
.noUi-base {
	width:100%;
	height:100%;
	position:relative;
}
.noUi-origin {
	position:absolute;
	right:0;
	top:0;
	left:0;
	bottom:0;
}
.noUi-handle {
	position:relative;
	z-index:1;
}
.noUi-stacking .noUi-handle {
/* This class is applied to the lower origin when
   its values is > 50%. */
	z-index:10;
}
.noUi-stacking + .noUi-origin {
/* Fix stacking order in IE7,which incorrectly
   creates a new context for the origins. */
	*z-index:-1;
}
.noUi-state-tap .noUi-origin {
-webkit-transition:left 0.3s,top 0.3s;
	transition:left 0.3s,top 0.3s;
}
.noUi-state-drag * {
	cursor:inherit !important;
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
	height:18px;
}
.noUi-horizontal .noUi-handle {
	width:34px;
	height:28px;
	left:-17px;
	top:-6px;
}
.noUi-horizontal.noUi-extended {
	padding:0 15px;
}
.noUi-horizontal.noUi-extended .noUi-origin  {
	right:-15px;
}
.noUi-vertical {
	width:18px;
}
.noUi-vertical .noUi-handle {
	width:28px;
	height:34px;
	left:-6px;
	top:-17px;
}
.noUi-vertical.noUi-extended {
	padding:15px 0;
}
.noUi-vertical.noUi-extended .noUi-origin  {
	bottom:-15px;
}

/* Styling;
 */
.noUi-background {
	background:#FAFAFA;
	box-shadow:inset 0 1px 1px #f0f0f0;
}
.noUi-connect {
	background:#EEEEEE;
	box-shadow:inset 0 0 3px rgba(51,51,51,0.45);
    -webkit-transition:background 450ms;
	transition:background 450ms;
}
.noUi-origin {
	border-radius:2px;
}
.noUi-target {
	border-radius:4px;
	border:1px solid #D3D3D3;
	box-shadow:inset 0 1px 1px #F0F0F0,0 3px 6px -5px #BBB;
}
.noUi-target.noUi-connect {
	box-shadow:inset 0 0 3px rgba(51,51,51,0.45),0 3px 6px -5px #BBB;
}

/* Handles and cursors;
 */
.noUi-dragable {
	cursor:w-resize;
}
.noUi-vertical .noUi-dragable {
	cursor:n-resize;
}
.noUi-handle {
	border:1px solid #D9D9D9;
	border-radius:3px;
	background:#FFF;
	cursor:col-resize;
	box-shadow:inset 0 0 1px #FFF,
				inset 0 1px 7px #EBEBEB,
				0 3px 6px -3px #BBB;
}
.noUi-active {
	box-shadow:inset 0 0 1px #FFF,
				inset 0 1px 7px #DDD,
				0 3px 6px -3px #BBB;
}

/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
	content:"";
	display:block;
	position:absolute;
	height:14px;
	width:1px;
	background:#E8E7E6;
	left:14px;
	top:6px;
}
.noUi-handle:after {
	left:17px;
}
.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
	width:14px;
	height:1px;
	left:6px;
	top:14px;
}
.noUi-vertical .noUi-handle:after {
	top:17px;
}

/* Disabled state;
 */
[disabled].noUi-connect,
[disabled] .noUi-connect {
	background:#B8B8B8;
}
[disabled] .noUi-handle {
	cursor:not-allowed;
}


/* modules/jrSupport/css/jrSupport.css */


.jrsupport-entry {
    padding:10px;
    display:table-cell
}

.jrsupport-entry a:hover {
    text-decoration:none !important;
}

.form_button_support {
    width:150px;
}


/* modules/jrTips/css/jrTips.css */


.tour-list {
    margin:24px 0 0 0;
    padding:0;
    padding-top:12px;
}

.tour-stop {
    position:absolute;
    bottom:8px;
    right:10px;
    font-size:9px;
}

.tour-stop a {
    color:#BBBBBB !important;
    text-decoration:none !important;
}

.tour-stop a:hover {
    color:#333333 !important;
    text-decoration:none !important;
}

/* @title Tour popup URLs */
/* @help Controls the font in the Tour modal popups */
.tour-extra {
    position:absolute;
    bottom:8px;
    left:10px;
    margin:2px;
    padding:0;
    list-style:none;
    font-size:13px;
    line-height:20px;
}

.tour-extra a {
    color:#000000;
}

.tour-close {
    display:none;
    margin-top:12px;
}

.tour-img {
    vertical-align:middle;
}


/* modules/jrTwoFactor/css/jrTwoFactor.css */


#jrtwofactor-box {
    padding:20px 0 10px 0;
    text-align:center;
}

.jrtwofactor-num {
    box-sizing:border-box;
    width:44px;
    min-height:50px;
    text-align:center;
    display:inline !important;
    border-radius:5px;
    border:2px solid #CCC;
    font-size:18px;
    padding:10px;
    margin-left:8px;
}

.jrtwofactor-num:focus {
    border-color:#FC0;
}


/* modules/jrUpimg/css/slider.css */


/*! http://responsiveslides.com v1.32 by @viljamis */

#swrapper {
    padding:26px 0 20px 0;
    margin:0 auto;
}

.upimg_rslides {
    position:relative;
    list-style:none;
    overflow:hidden;
    height:auto;
    padding:0;
    margin:0 auto;
}

.upimg_rslidesli {
    position:absolute;
    display:none;
    height:auto;
    left:0;
    top:0;
    margin:0 auto;
}

.upimg_rslidesli:first-child {
    position:relative;
    display:block;
    float:left;
    margin:0 auto;
}

.upimg_rslidesimg {
    display:block;
    height:auto;
    float:left;
    border:0;
    margin:0 auto;
}

.upimg_rslides {
    margin:0 auto;
}

#slider2 {
    box-shadow:none;
    margin:0 auto;
}

.upimg_rslides_tabs {
    background-color:#EEE;
    list-style:none;
    padding-top:8px;
    padding-bottom:8px;
    padding-left:0;
    font-size:12px;
    margin:0 auto;
    text-align:center;
}

.upimg_rslides_tabs li {
    display:inline;
    float:none;
}

.upimg_rslides_tabs a {
    width:auto;
    line-height:20px;
    padding:3px 5px;
    height:auto;
    background:transparent;
    display:inline;
    color:#000;
}

.upimg_rslides_tabs li:first-child {
    margin-left:0;
}

.upimg_rslides_tabs .upimg_rslides_here a {
    background:#FFF;
    color:#000;
    font-weight:bold;
}

/* Callback example */

.events {
    list-style:none;
}

.callbacks_container {
    margin-bottom:10px;
    position:relative;
    float:left;
    width:100%;
}

.callbacks {
    position:relative;
    list-style:none;
    overflow:hidden;
    width:100%;
    padding:0;
    margin:0;
}

.callbacks li {
    position:absolute;
    width:100%;
    left:0;
    top:0;
}

.callbacks img {
    display:block;
    position:relative;
    z-index:1;
    height:auto;
    width:100%;
    border:0;
}

.callbacks .caption {
    display:block;
    position:absolute;
    z-index:2;
    font-size:18px;
    text-shadow:none;
    color:#FFF;
    background:#000;
    background:rgba(0,0,0,.8);
    left:0;
    right:0;
    bottom:0;
    padding:10px 20px;
    margin:0;
    max-width:none;
    border-top-width:2px;
    border-top-style:solid;
    border-top-color:#EEE;
}

.callbacks_nav {
    position:absolute;
    top:52%;
    left:0;
    opacity:0.5;
    z-index:3;
    text-indent:-9999px;
    overflow:hidden;
    text-decoration:none;
    height:61px;
    width:38px;
    background:transparent url("https://hearnfamily.org/image/img/module/jrUpimg/themes.gif") no-repeat left top;
    margin-top:-45px;
}

.callbacks_nav:active {
    opacity:1.0;
}

.callbacks_nav.next {
    left:auto;
    background-position:right top;
    right:0;
}


/* modules/jrUser/css/jrUser.css */


.online_status_table {
    display:table;
    width:100%;
}

/* @title Online Status Image */
/* @help Cell class for image area in Online Status for an individual User */
.online_status_image {
    display:table-cell;
    width:10%;
    padding:6px;
}

/* @title Online Status User */
/* @help Cell class for user name area in Online Status for an individual User */
.online_status_user {
    display:table-cell;
    width:80%;
    vertical-align:middle;
    padding:2px 6px;
}

/* @title Online Status User Anchor */
/* @help Cell class for user name area in Online Status for an individual User */
.online_status_user a {
    color:#000;
}

/* @title User is Online */
/* @help Class for small ONLINE box that shows when the user is actually online */
.online_status_online {
    background-color:#CF9;
    color:#000;
    display:inline-block;
    width:100%;
    border-radius:2px;
}

/* @title User is Offline */
/* @help Class for small OFFLINE box that shows when the user is not online */
.online_status_offline {
    color:#000;
    display:inline-block;
    width:100%;
    border-radius:2px;
}

/* @title Widget Font Size */
/* @help sets the label font size for the Login and Signup widgets */
.widget-item-widget_login {
    font-size:12px !important;
}

#user-notification-select {
    margin:10px 6px !important;
    width:35% !important;
    text-transform:capitalize;
}

.user_notification_left {
    width:35% !important;
    padding:20px !important;
}

.element_left.user_notification_left.expanded {
    text-align:justify;
}

.user_notification_right {
    width:65% !important;
    padding:20px !important;
}

.user_notification_right span {
    display:block;
}

.user_notification_right input {
    margin:3px 6px 3px 3px;
    vertical-align:bottom;
}

#jrUser_account input[readonly="readonly"] {
    background:inherit;
    color:inherit;
}

.user-delete-modal {
    text-align:center;
    width:290px;
    padding:20px;
}

.user-delete-modal input {
    width:250px;
    display:inline-block;
    margin:10px 20px;
}

.new_login {
    margin:50px auto;
    text-align:center;
    max-width:360px;
    height:auto;
    background:white;
    border-radius:8px;
    padding:2em 0 1em;
    box-shadow:0 0 20px #BBB;
}

.new_login .form_text {
    box-sizing:border-box;
    background:white;
    padding:7px 10px;
    border-radius:8px;
    color:#333;
    width:290px;
    box-shadow:none;
    border:2px solid #AAA;
}

.new_login .form_select {
    box-sizing:border-box;
    padding:7px 10px;
    border-radius:8px;
    color:#333;
    width:290px;
    box-shadow:none;
    border:2px solid #AAA;
}

.form_text_wrap {
    position:relative;
    width:300px;
    margin:6px auto;
}

.form_text_wrap.password {
    margin:10px auto 0;
}

.login_button {
    background:#333 linear-gradient(#444,#222);
    height:40px;
    width:100%;
    border:none;
    cursor:pointer;
    border-radius:10px;
    margin:10px 0;
    color:white;
    font-size:16px;
    max-width:292px;
}

.login_button:disabled {
    opacity:0.6;
}

.new_login h2 {
    display:block;
    margin-bottom:12px;
    color:#333;
}

.login_forgot {
    padding:1em;
    border-top:1px solid #999;
    width:270px;
    margin:auto;
}

.login_forgot a {
    color:#888;
    font-size:16px;
}

.new_login .form_text:focus {
    border:2px solid #333;
}

.new_login .form_submit_section {
    padding:16px;
    background:none;
}

.signup_button {
    background:#EEE linear-gradient(#444,#222);
    color:white;
    padding:12px;
    width:90%;
    border:none;
    border-radius:10px;
    font-size:16px;
    text-transform:capitalize;
    cursor:pointer;
}

.form_text_wrap.left {
    text-align:left;
    padding:12px 0 0;
}

.new_login .page_notice {
    margin:10px;
}

.form_capitalize {
    text-transform:capitalize;
}

#account-tabs-profile-button {
    text-transform:none;
}

.u-view-keys {
    display:none;
}

.index_form .form_text {
    box-sizing:border-box;
    width:100%;
}

.new_login .form_text {
    width:auto;
    min-width:290px;
    height:36px;
}

/* Mobile */
@media handheld,only screen and (max-width:767px) {
    .new_login {
        border-radius:0;
        margin-top:0;
        margin-bottom:0;
    }
}

/* skins/family/css/design-tokens.css */


/**
 * family skin — design tokens (amPro-aligned professional UI)
 * White surfaces,near-black text,light grey + sky blue accents
 */

:root {
    --jr-bg-page:#f1f5f9;
    --jr-bg-surface:#ffffff;
    --jr-bg-muted:#f8fafc;
    --jr-bg-elevated:#ffffff;
    --jr-border:#e2e8f0;
    --jr-border-strong:#cbd5e1;
    --jr-text:#0f172a;
    --jr-text-secondary:#334155;
    --jr-text-muted:#64748b;
    --jr-link:#0369a1;
    --jr-link-hover:#0c4a6e;
    --jr-accent:#0284c7;
    --jr-accent-soft:#e0f2fe;
    --jr-accent-muted:#bae6fd;
    --jr-accent-hover:#0369a1;
    --jr-header-bg:#2D96EB;
    --jr-header-border:transparent;
    --jr-footer-bg:#f8fafc;
    --jr-footer-border:#e2e8f0;
    --jr-shadow-sm:0 1px 2px rgba(15,23,42,0.05);
    --jr-shadow-md:0 4px 20px rgba(15,23,42,0.07);
    --jr-shadow-header:0 1px 3px rgba(15,23,42,0.14);
    --jr-radius:10px;
    --jr-radius-sm:6px;
    --jr-font:'Plus Jakarta Sans','Nunito Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
    --jr-header-height:52px;
    --jr-transition:0.2s ease;
}

/* Focus visibility for keyboard / accessibility */
a:focus-visible,
button:focus-visible,
.form_button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline:2px solid var(--jr-accent);
    outline-offset:2px;
}

@media (prefers-reduced-motion:reduce) {
    :root {
        --jr-transition:0.01ms;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   FULLSCREEN LAYOUT — remove all container max-width caps
   These overrides must be defined here (loaded first) so later files can
   safely use the tokens without re-introducing width constraints.
───────────────────────────────────────────────────────────────────────────── */

html,
body {
    width:100%;
    max-width:none;
}

#wrapper {
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
    box-sizing:border-box;
}

#content {
    width:100%;
    max-width:none;
    margin:0;
    box-sizing:border-box;
}

/* Old 1140-grid .row — make truly full-width,no centering */
.row {
    width:100%;
    max-width:100%;
    margin:0;
    box-sizing:border-box;
}

/* amCore module shell — full-width in the family skin */
.am-module {
    max-width:100% !important;
    margin:0 !important;
    padding-left:var(--am-space-6,24px);
    padding-right:var(--am-space-6,24px);
}

/* amCore app-chrome containers */
.am-shell__content,
.am-app-chrome__content,
.am-app-chrome__main {
    max-width:100% !important;
}

/* Community page full-width wrapper (replaces col3+col6+col3 grid) */
.fam-community-page {
    width:100%;
    box-sizing:border-box;
    padding:0 var(--am-space-6,24px);
}

.fam-community-page .am-module {
    padding-left:0;
    padding-right:0;
}

@media screen and (max-width:767px) {
    .am-module {
        padding-left:0;
        padding-right:0;
    }

    .fam-community-page {
        padding-inline:2px;
    }
}


/* skins/family/css/acp.css */


/* ACP structural styles for the family skin.
   Form inputs/buttons/notices:see form_input.css,form_select.css,form_button.css,form_layout.css,form_notice.css,form_element.css
   Admin nav/work area:        see admin_menu.css
   Log colors:                 see admin_log.css
   Modal:                      see admin_modal.css
   Design tokens:              see design-tokens.css
*/

/* ── Admin menu admin-sidebar basics (global fallback outside #admin_container) ── */

#item-holder {
    margin-right:12px;
}

dd {
    padding-top:0;
    padding-bottom:9px;
    margin:0;
    font-size:12px;
}

dt {
    font-weight:normal;
}

.admin_section_header {
    margin-top:0;
}

/* @title Menu Row */
.item-entry {
    border-bottom:1px solid #EEE;
    color:#444;
    display:table-cell;
    font-size:14px;
    padding:6px;
    vertical-align:middle;
    width:100%;
}

.item-row {
    background:white;
    cursor:pointer;
    display:table-row;
    height:42px;
    width:100%;
}

.item-row-active {
    background-color:var(--jr-accent-soft,#e0f2fe);
}

.item-row:hover {
    background-color:var(--jr-bg-muted,#f8fafc);
}

.item-icon {
    border-bottom:1px solid #EEE;
    display:table-cell;
    padding:3px;
}

.item-enabled {
    border-bottom:1px solid #EEE;
    display:table-cell;
    padding-right:6px;
}

/* @title Module Disabled */
.item-disabled {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#92400e;
    background:#fef3c7;
    font-size:9px;
    font-weight:700;
    padding:2px 6px;
    border:1px solid #fbbf24;
    border-radius:999px;
}

#item-work {
    background:transparent;
}

#item-work .page_content {
    padding:0 !important;
}

/* ── Page banner ── */

/* @title Banner Background */
.page_banner_box {
    background:var(--jr-bg-muted,#f8fafc);
}

/* @title Page Banner */
.page_banner {
    background:linear-gradient(180deg,var(--jr-bg-muted,#f8fafc) 0%,#f1f5f9 100%);
    border:1px solid var(--jr-border,#e2e8f0);
    margin-bottom:9px;
    color:var(--jr-text-secondary,#334155);
}

/* @title Page Banner Icon */
.page_banner_icon {
    width:1%;
    padding:4px 0 4px 8px; 
}

/* @title Page Banner Title */
.page_banner_left {
    text-align:left;
    padding:11px 12px;
    font-size:15px;
    text-transform:uppercase;
    white-space:nowrap;
}

/* @title Page Banner Description */
.page_banner_right {
    padding:4px;
    text-align:right;
}

.page_banner_right .form_button {
    margin-left:3px;
    vertical-align:middle;
}

.page_banner_right .form_select {
    margin-left:3px;
    height:32px;
    vertical-align:middle;
}

.search_area_right .form_button {
    margin-left:3px;
    vertical-align:middle;
}

.search_area_right .form_text {
    height:30px;
    vertical-align:middle;
}

/* ── Page structure ── */

#wrapper {
    min-height:calc(100vh - 180px);
    position:relative;
}

/* @title Site Content */
#content {
    font-size:1em;
    height:100%;
    margin:0 auto;
    max-width:1280px;
    min-height:calc(100vh - 289px);
    padding:40px 0 1em;
}

#content h2 {
    margin:0;
}

#content .sb-widget-title > h2 {
    font-weight:normal;
    text-transform:uppercase;
}

/* @title block */
.block {
    background-color:transparent;
    padding:12px;
    margin:0 auto;
}

.recommend_box {
    background-color:#EDEDED;
    padding:25px;
    margin:12px;
    border-style:solid;
    border-color:#DDD;
    border-width:1px;
    font-size:16px;
    color:#000;
}

.recommend_box a {
    color:#369;
    text-decoration:none;
}

.recommend_box a:hover {
    color:#333;
    text-decoration:underline;
}

.search_box {
    background-color:white;
    color:var(--jr-text,#0f172a);
    font-size:16px;
    margin:12px;
    padding:25px;
    border:none;
    border-radius:8px;
}

.search_box .form_text {
    vertical-align:middle;
    padding:3px 4px;
}

.search_box .form_button {
    vertical-align:middle;
}

.page_content {
    background-color:var(--jr-bg-muted,#f3f3f3);
    color:var(--jr-text,#444);
}

#content .page_content {
    padding:1em;
}

.page_custom > .container {
    background-color:var(--jr-bg-muted,#f3f3f3);
}

.search_box a {
    text-decoration:none;
}

.search_box a:hover {
    color:#333;
    text-decoration:underline;
}

.container {
    margin:0;
}

/* ── Admin containers ── */

#admin_container.container {
    padding:1em;
    background:var(--jr-bg-muted,#f3f3f3);
    border-radius:2px;
}

.page_content #admin_container {
    padding:0;
}

#dashboard_container {
    background:var(--jr-bg-muted,#f3f3f3);
    border-radius:2px;
}

/* ── Page tables ── */

table {
    width:100%;
    border-width:0;
    border-spacing:0;
}

td,th {
    padding:0;
}

td a {
    color:var(--jr-link,#269);
}

#page_notice > a {
    color:var(--jr-link,#58C);
}

/* @title Page Table */
.page_table {
    border-spacing:1px;
    margin:0 0 16px;
    width:100%;
}

.bigtable {
    border-spacing:3px;
}

/* @title Page Table Header */
.page_table_header {
    background:linear-gradient(180deg,var(--jr-bg-muted,#f8fafc) 0%,#f1f5f9 100%);
    color:var(--jr-text-secondary,#666);
    font-size:12px;
    padding:8px;
    text-align:center;
    text-transform:uppercase;
    font-weight:normal;
    white-space:nowrap;
}

.page_table_header .sprite_icon {
    background:transparent !important;
    border:0;
}

.page_table_header > a {
    color:var(--jr-text-secondary,#666);
    text-decoration:underline;
}

/* @title Page Table Footer */
.page_table_footer {
    background-color:var(--jr-bg-muted,#e8eaeb);
    text-align:center;
    padding:6px;
    font-size:12px;
    text-transform:capitalize;
    color:var(--jr-text,#000);
    white-space:nowrap;
}

/* @title Page Table Row */
.page_table_row {
    background-color:var(--jr-bg-surface,#f2f2f2);
}

.page_table_row_alt {
    background-color:var(--jr-bg-muted,#f8f8f8);
}

/* @title Page Table Cell */
.page_table_cell {
    padding:5px;
    font-size:13px;
    color:var(--jr-text,#222);
}

.page_table_cell a {
    color:var(--jr-text,#222);
}

/* @title Pager */
.page_table_pager_left {
    width:25%;
    padding:10px;
}

.page_table_pager_center {
    text-align:center;
    width:50%;
    padding:5px;
    font-size:11px;
}

.page_table_pager_right {
    text-align:right;
    width:25%;
    padding:6px;
}

.page_table_jumper {
    width:50px;
}

/* @title Page Notice */
.page_table_notice {
    text-align:center;
    line-height:32px;
    font-size:14px;
}

/* ── Page section ── */

/* @title Page Section */
.page_section_header {
    background:linear-gradient(180deg,var(--jr-bg-muted,#f8fafc) 0%,#f1f5f9 100%);
    border:1px solid var(--jr-border,#e2e8f0);
    border-left:3px solid var(--jr-accent,#0284c7);
    color:var(--jr-text-secondary,#666);
    font-size:15px;
    padding:6px 12px;
    text-transform:uppercase;
}

.item-list .page_section_header {
    margin-bottom:9px;
}

.admin_section_search {
    width:100%;
    padding:6px;
    box-sizing:border-box;
}

.admin_section_search .form_admin_search {
    width:100% !important;
    margin:0;
    padding:0 6px;
    height:32px;
    box-sizing:border-box;
}

/* @title Page Divider */
.page_divider {
    background-color:var(--jr-bg-surface,#fff);
    border-bottom:1px solid var(--jr-border,#DDD);
}

/* @title Page Note */
.page_note {
    background:var(--jr-accent-soft,#e0f2fe);
    border:1px solid var(--jr-accent-muted,#bae6fd);
    color:var(--jr-text-secondary,#333);
    font-size:14px;
    margin-bottom:9px;
    margin-top:12px;
    padding:9px;
    text-align:center;
    border-radius:var(--jr-radius-sm,6px);
}

/* @title Page Search Highlight */
.page_search_highlight {
    background-color:#F7DD4F;
}

/* ── Tab bar ── */

/* @title Tab Bar Holder */
.page_tab_bar_holder {
    background:var(--jr-bg-muted,#f9f9f9);
    border-bottom:1px solid var(--jr-border,#DDD);
    padding-top:1px;
    width:100%;
}

.page_tab_bar_spacer {
    background:var(--jr-bg-surface,#fff);
    height:10px;
}

.page_tab_bar {
    padding-left:9px;
}

/* @title Page Tab */
.page_tab {
    background:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,6px) var(--jr-radius-sm,6px) 0 0;
    color:var(--jr-text,#000);
    cursor:pointer;
    float:left;
    font-size:14px;
    list-style:outside none none;
    margin-left:6px;
    text-align:center;
    text-decoration:none;
    text-transform:capitalize;
    box-shadow:0 0 2px #CCC;
}

.page_tab:hover {
    background:var(--jr-bg-muted,#DDD);
    text-decoration:none;
}

.page_tab:hover a {
    text-decoration:none;
}

.page_tab_active {
    color:var(--jr-text,#000);
    margin-bottom:0;
}

.page_tab_active:hover {
    border-bottom:0 none;
    text-decoration:none;
}

.page_tab_active:hover a {
    color:var(--jr-text,#000);
    text-decoration:none;
}

.page_tab.page_tab_active a {
    color:var(--jr-link-hover,#000);
}

.page_tab_active a:hover {
    color:var(--jr-text-secondary,#666);
}

/* @title Page Tab Link */
.page_tab a {
    color:var(--jr-text,#000);
    display:block;
    padding:7px 12px 6px 12px;
    text-decoration:none;
}

.page_tab_first {
    margin-left:0;
}

/* @title Page Tab Active */
.page_tab_hilight {
    background:var(--jr-accent-soft,#e0f2fe);
    border-color:var(--jr-accent,#0284c7);
    color:var(--jr-text,#000);
}

.page_tab_hilight a {
    color:var(--jr-text,#000);
}

.page_tab.page_tab_active {
    background:var(--jr-accent-soft,#e0f2fe);
    border-color:var(--jr-accent,#0284c7);
}

/* ── Site Builder ── */

.bignum_stat .sprite_icon {
    background:#666 none repeat scroll 0 0;
}

.sb-menu-entry {
    border-radius:2px;
    color:#000;
    cursor:move;
    font-size:15px;
    margin-top:3px;
    padding:6px 9px;
    text-transform:capitalize;
    vertical-align:middle;
}

.sb-widget-title {
    font-size:16px;
}

.sb-widget-col {
    padding:0 6px;
}

.sb-widget-col.sb-widget-hilight {
    padding:6px 6px 44px;
}

.sb-menu-entry a {
    color:var(--jr-text,#444);
    cursor:pointer;
}

.sb-row-button {
    color:var(--jr-text-secondary,#666);
}

#sb-edit-cp {
    border-radius:8px;
}

.widget-template-code {
    background:rgba(100,150,205,0.1) none repeat scroll 0 0;
}

.simplemodal-container .sb-menu-entry {
    background-color:var(--jr-bg-muted,#f8fafc);
}

/* ── Info box (dashboard) ── */

#info_box {
    margin-bottom:6px;
}

#info_box .item {
    border:0;
    padding:16px;
    font-size:13px;
}

#info_box .page_table_cell {
    background:var(--jr-bg-surface,white);
    padding:6px;
    font-size:12px;
}

#info_box .module_icon > img {
    border-radius:3px;
}

.page_banner_box .page_banner {
    width:100%;
}

/* ── Misc ── */

.center {
    text-align:center;
}

p.waiting {
    padding:12em 0;
}

.acp-default-img {
    border:medium none;
}

.action span.title {
    font-size:18px;
    display:block;
    margin-bottom:5px;
}

#action_text_counter {
    left:125px;
}

#gform .form_textarea {
    color:var(--jr-text,#666);
    padding:13px;
    width:calc(100% - 26px);
}

.jrcore_file_detail {
    width:81.3%;
}

.image_update_display img {
    margin:0 0 10px 2px;
    border-radius:2px;
}

.plugin #providers .provider .name {
    color:var(--jr-text-muted,#AAA);
}

.plugin .footer #branding a span.plugin_title {
    color:var(--jr-text,#444);
}

.plugin .footer #branding a {
    color:var(--jr-text-secondary,#666);
}


/* skins/family/css/base.css */


/* @title Config Block */
/* @help The set of buttons that float to the right,ie. create,delete and modify. */
.block_config {
    float:right;
    margin-left:6px;
    white-space:nowrap;
}

/* @title Image Block */
/* @help The DIV that holds a list image. */
.block_image {
    margin:0 auto;
    padding-right:6px;
}

/* @title Content Block */
/* @help The DIV that holds a lists content. */
.block_content {
    background-color:#FFF;
    padding:0;
    margin:0 auto;
}

/* @title Title */
/* @help This is the Title text */
.title {
    background-color:white;
    vertical-align:middle;
    text-transform:capitalize;
    color:#333;
    padding:12px;
}

.title h1 {
    font-weight:bold;
}

.title-more {
    display:inline-block;
    float:right;
    font-size:12px;
    text-transform:uppercase;
    margin-top:6px;
    color:#AAA;
}

.title-more a {
    color:#AAA;
}

.title-more a:hover {
    color:#000;
    text-decoration:none;
}

/* @title Info Text */
/* @help Styling for info labels. ie. Albums,Genre,Plays etc. */

.info {
    color:#999;
    display:inline;
    font-size:12px;
    font-weight:bold;
    margin:0;
    padding:0;
    text-transform:capitalize;
}

/* @title Info Text Link */
/* @help This is the Info link text */
.info a {
    text-decoration:none;
    color:#58C;
}

/* @title Info Link Hover */
/* @help This is the Info link hover text */
.info a:hover {
    color:#888;
    text-decoration:underline;
}

.info.private {
    color:#000;
}

/* @title Date Text */
/* @help Any date text in your lists. ie. blogs,events etc. */
.info_c {
    color:#999;
    font-size:12px;
}

/* @title Date Link Text */
/* @help Any date text in your lists. ie. blogs,events etc. */
.info_c a {
    color:#58C;
    text-decoration:none;
}

/* @title Date Text */
/* @help Any date text in your lists. ie. blogs,events etc. */
.info_c a:hover {
    text-decoration:underline;
}

.p5 h3 {
    margin:0;
}



/* skins/family/css/footer.css */


/*
 * Registered early in family_skin_init(); structural footer rules that must win over
 * legacy skin.css live in public_surfaces.css (loaded last).
 */


/* skins/family/css/grid.css */


/* ! The 1140px Grid V2 by Andy Taylor \ http://cssgrid.net \ http://www.twitter.com/andytlr \ http://www.andytlr.com   */

.container {
    margin:0;
}

.row {
    width:100%;
    max-width:100%;
    margin:0 auto;
    overflow:hidden;
}

.row-first {
    padding-top:3px;
}

.row-last {
    padding-bottom:3px;
}

.col1,.col2,.col3,.col4,.col5,.col6,.col7,.col8,.col9,.col10,.col11,.col12 {
    float:left;
}

.row .col1 {
    width:8.33%;
}

.row .col2 {
    width:16.66%
}

.row .col3 {
    width:25%
}

.row .col4 {
    width:33.33%
}

.row .col5 {
    width:41.65%;
}

.row .col6 {
    width:50%;
}

.row .col7 {
    width:58.31%;
}

.row .col8 {
    width:66.66%;
}

.row .col9 {
    width:75%;
}

.row .col10 {
    width:83.33%;
}

.row .col11 {
    width:91.63%;
}

.row .col12 {
    width:100%;
}

.last {
    margin-right:0;
}

.embedded,object,embed {
    max-width:100%;
}


/* skins/family/css/header.css */


/* ─── Site top-nav bar ───────────────────────────────────────────────────── */

#header {
    color:#fff;
    height:var(--jr-header-height,52px);
    position:fixed;
    top:0;
    left:0;
    right:0;
    width:100%;
    z-index:200;
    background:var(--am-primary,#2D96EB);
    box-shadow:0 1px 3px rgba(0,0,0,0.14);
}

#header a {
    text-decoration:none;
    color:#fff;
}

#header a:hover {
    color:#fff;
    opacity:0.9;
}

/* ── Inner flex row:brand | nav | right-actions ── */
#header_content {
    display:flex;
    align-items:center;
    height:var(--jr-header-height,52px);
    width:100%;
    padding:0 var(--am-space-6,24px);
    gap:var(--am-space-3,12px);
    box-sizing:border-box;
}

/* Brand wordmark */
.family-header-wordmark-link {
    flex-shrink:0;
    text-transform:none !important;
    white-space:nowrap;
    margin-right:var(--am-space-4,16px);
}

.family-header-wordmark {
    display:inline-block;
    font-size:17px;
    font-weight:700;
    letter-spacing:-0.01em;
    line-height:1;
    color:#fff;
}

/* Nav menu takes remaining space */
#menu_content {
    flex:1;
    min-width:0;
}

/* Mobile action icons — right-aligned */
.fam-header-mobile-actions {
    display:flex;
    align-items:center;
    gap:var(--am-space-4,16px);
    margin-left:auto;
}

/* Layout zoom — far right of header row (desktop) */
.family-header-zoom {
    flex-shrink:0;
    display:flex;
    align-items:center;
    gap:4px;
    margin-left:auto;
    padding-left:var(--am-space-3,12px);
}

/* ─── Legacy / ACP helpers ───────────────────────────────────────────────── */
#main_logo {
    float:left;
    vertical-align:middle;
    cursor:pointer;
}

#add_to_cart_success {
    float:left;
    position:absolute;
    background-color:#ffcc5b;
    border:1px solid #999;
    padding:7px;
    font-size:14px;
    border-radius:3px;
}

#search_input {
    color:#ddd;
    font-style:italic;
}


/* skins/family/css/html.css */


/*
 * Site-wide page chrome aligned with design-tokens.css / ACP (--jr-*).
 */

html {
    background-color:var(--jr-bg-page,#f1f5f9);
    min-height:100vh;
}

body {
    position:relative;
    font-family:var(--jr-font,'Plus Jakarta Sans',system-ui,sans-serif);
    font-size:14px;
    color:var(--jr-text,#0f172a);
    padding:0;
    margin:0;
    background-color:var(--jr-bg-page,#f1f5f9);
}

a {
    color:var(--jr-link,#0369a1);
    text-decoration:none;
    cursor:pointer;
}

a:hover {
    color:var(--jr-link-hover,#0c4a6e);
    text-decoration:underline;
}

.item li {
    list-style:unset;
}

#header li {
    list-style:outside none none;
}

h1,h2,h3 {
    margin:0;
    padding:0;
    font-weight:600;
    color:var(--jr-text,#0f172a);
}

#content h1,#content h2,#content h3 {
    display:inline;
}

#jrchat-room-browser {
    padding:3px;
}

#jrchat-active-title {
    color:var(--jr-text,#0f172a);
}

.jrchat-msg {
    color:var(--jr-text,#0f172a);
}


/* skins/family/css/image.css */


/* @title Image Tag */
/* @help This is the class for the img tag in your HTML */
img {
    border:0;
    vertical-align:middle;
    height:auto;
}

/* @title Image Icon */
/* @help This is the icon image */
.img_icon {
    padding:1px;
    margin-right:12px;
}

/* images (not icons) */
.img_scale {
    width:100%;
}

.img_shadow {
}

.social-img {
    margin-right:12px;
}

.row img {
    display:inline-block;
}

.item-icon > img {
    width:40px;
}

/* @title Image Outline Hover */
/* @help This is the hover color for the small outline around small images that are linked */

.create_img {
    cursor:pointer;
}

.update_img {
    cursor:pointer;
}

.delete_img {
    cursor:pointer;
}


/* skins/family/css/core_slidebar.css */


#sb-site,.sb-site-container,.sb-slidebar,body,html {
    margin:0;
    padding:0;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
}

html.sb-scroll-lock.sb-active:not(.sb-static) {
    overflow:hidden
}

#sb-site,.sb-site-container {
    width:100%;
    min-height:100vh;
    position:relative;
    z-index:1;
    overflow-x:hidden;
}

#sb-site:after,#sb-site:before,.sb-site-container:after,.sb-site-container:before {
    content:' ';
    display:table;
    clear:both
}

.sb-slidebar {
    height:100%;
    overflow-y:auto;
    position:fixed;
    top:0;
    z-index:0;
    display:none;
    background-color:#222
}

.sb-slidebar,.sb-slidebar * {
    -webkit-transform:translateZ(0px)
}

.sb-menu {
    width:100%;
    margin:0;
    padding:40px 0 40px 0;
}

.sb-slidebar nav {
    margin:0;
    padding:0;
}

.sb-slidebar li {
    margin:0;
    list-style:none;
    font-size:16px;
    padding:12px;
    color:#FFF;
    border-bottom:1px solid #333;
    text-transform:capitalize;
}

.sb-slidebar li ul {
    margin-left:6px;
    margin-top:6px;
    padding:0;
}

.sb-slidebar li li {
    font-size:14px;
    border-bottom:0;
    padding:6px;
}

.sb-slidebar li a {
    color:#FFF;
}

.sb-left {
    left:0
}

.sb-right {
    right:0
}

.sb-slidebar.sb-static,html.sb-static .sb-slidebar {
    position:absolute
}

.sb-slidebar.sb-active {
    display:block
}

.sb-style-overlay {
    z-index:9999
}

.sb-momentum-scrolling {
    -webkit-overflow-scrolling:touch
}

.sb-slidebar {
    width:30%
}

.sb-width-thin {
    width:15%
}

.sb-width-wide {
    width:45%
}

@media (max-width:480px) {
    .sb-slidebar {
        width:70%
    }

    .sb-width-thin {
        width:55%
    }

    .sb-width-wide {
        width:85%
    }
}

@media (min-width:481px) {
    .sb-slidebar {
        width:55%
    }

    .sb-width-thin {
        width:40%
    }

    .sb-width-wide {
        width:70%
    }
}

@media (min-width:768px) {
    .sb-slidebar {
        width:40%
    }

    .sb-width-thin {
        width:25%
    }

    .sb-width-wide {
        width:55%
    }
}

@media (min-width:992px) {
    .sb-slidebar {
        width:30%
    }

    .sb-width-thin {
        width:15%
    }

    .sb-width-wide {
        width:45%
    }
}

@media (min-width:1200px) {
    .sb-slidebar {
        width:20%
    }

    .sb-width-thin {
        width:5%
    }

    .sb-width-wide {
        width:35%
    }
}

#sb-site,.sb-site-container,.sb-slide,.sb-slidebar {
    -webkit-transform:translate(0px);
    -moz-transform:translate(0px);
    -o-transform:translate(0px);
    transform:translate(0px);
    -webkit-transition:-webkit-transform 400ms ease;
    -moz-transition:-moz-transform 400ms ease;
    -o-transition:-o-transform 400ms ease;
    transition:transform 400ms ease;
    -webkit-transition-property:-webkit-transform,left,right;
    -webkit-backface-visibility:hidden
}

.sb-hide {
    display:none
}


/* skins/family/css/list.css */


/* @title List Row */
/* @help The List Row is the row section for ranking lists */
.list_row,.list_col {
    padding:6px;
    background-color:#CCC;
    color:#000;
}

/* @title List Image */
/* @help The List Image is for the images in the ranking list */
.list_image {
    padding:6px;
    background-color:#CCC;
    color:#000;
}

/* @title List Highlight */
/* @help The List Highlight is for the highlighted text in a ranking list */
.list_hl {
    background-color:#FFCC5B;
    color:#000;
}

/* @title List Item */
/* @help The List Item class is for the content in a  ranking list */
.item {
    background:white;
    border-bottom:1px solid #EEE;
    margin:1em auto;
    padding:12px;
}

.item a {
    text-decoration:none;
}

.item a:hover {
    text-decoration:underline;
}

/* @title Blogpost Link Color */
/* @help The color for links users include in their blog posts */
.blogpost p a {
    text-decoration:none;
}

.blogpost p a:hover {
    text-decoration:underline;
}

.add_to_cart_section {
    display:inline-block;
    background:#FFF linear-gradient(#FFF,#EEE) repeat scroll 0 0;
    border-radius:3px;
    box-shadow:inset 0 0 1px rgba(0,0,0,.5);
    margin-left:3px;
}

.add_to_cart_price {
    position:relative;
    top:3px;
    left:2px;
    padding:0 6px;
    padding-top:4px;
    color:#666;
    font-size:16px;
    line-height:16px;
}

.action_buttons .add_to_cart_section {
    vertical-align:top;
    background:#FFF;
    box-shadow:none;
}

.action_buttons .add_to_cart_price {
    top:3px;
    padding:0 2px;
}

.paypal_buy_now_section {
    height:30px;
}

.paypal_buy_now_section img {
    margin-top:3px;
}

.cart-section {
    display:inline-block;
    background:transparent;
    border-radius:0;
    box-shadow:none;
    vertical-align:top;
}

.cart-price {
    position:relative;
    top:2px;
    left:2px;
    padding:0 10px;
    padding-top:4px;
    color:#000;
    font-size:16px;
    line-height:16px;
}

/* skins/family/css/menu.css */


/* Main menu */

#menu,#menu ul {
    margin:0;
    padding-right:6px;
    list-style:none;
}

#menu {
    float:right;
    line-height:2.5em;
    margin:0 auto;
    width:100%;
}

#menu:before,#menu:after {
    content:"";
    display:table;
}

#menu:after {
    clear:both;
}

#menu {
    zoom:1;
}

#menu li.right {
    float:right;
    margin:0 20px 0 0;
}

#menu li {
    float:left;
    margin:0 0 0 30px;
    position:relative;
    text-align:left;
}

#menu li:first-child {
    border-right:0 none;
    margin:0;
}

#menu a {
    color:#FFF;
    float:left;
    font-size:16px;
    text-decoration:none;
    text-shadow:none !important;
}

#menu li:hover > a {
    text-decoration:none;
}

#menu li a:hover {
    color:#FFF;
    text-decoration:none;
}

#menu li:hover > ul {
    display:block;
}

/* Sub-menu */

#menu ul {
    background:#333 none repeat scroll 0 0;
    border-radius:3px;
    box-shadow:0 3px 8px rgba(0,0,0,0.5);
    color:#FFF;
    font-size:13px;
    margin:0;
    padding:0;
    opacity:0;
    position:absolute;
    top:38px;
    transition:all 0.2s ease-in-out 0s;
    visibility:hidden;
    z-index:99999;
}

#menu li:hover > ul {
    opacity:1;
    visibility:visible;
    margin:0;
}

#menu ul ul {
    top:0;
    left:184px;
    color:#FFF;
    margin:0;
}

#menu ul li {
    float:none;
    width:177px;
    display:block;
    border:0;
    box-shadow:0 1px 0 #151515,0 2px 0 #454545;
    margin:auto;
}

#menu ul li:last-child {
    box-shadow:none;
}

#menu ul a {
    padding:0 10px;
    display:block;
    white-space:nowrap;
    float:none;
    text-transform:capitalize;
    font-size:13px;
}

#menu ul li:hover {
    background:rgba(34,102,153,0.5) none repeat scroll 0 0;
}

#menu ul li:first-child > a {
    border-radius:3px 3px 0 0;
}

#menu ul li:first-child > a:after {
    content:'';
    position:absolute;
    left:5px;
    top:-6px;
    border-left:6px solid transparent;
    border-right:6px solid transparent;
    border-bottom:6px solid rgba(255,255,255,01);
}

#menu ul ul li:first-child a:after {
    left:-5px;
    top:50%;
    margin-top:-6px;
    border-left:0;
    border-bottom:6px solid transparent;
    border-top:6px solid transparent;
    border-right:6px solid rgba(255,255,255,01);
}

#menu ul li:first-child a:hover:after {
    border-bottom-color:rgba(255,255,255,01);
}

#menu ul ul li:first-child a:hover:after {
    border-right-color:rgba(255,255,255,01);
    border-bottom-color:transparent;
}

#menu ul li:last-child > a {
    border-radius:0 0 3px 3px;
}

#menu-trigger {
    visibility:hidden;
}

#menu img {
    width:20px;
}

#menu .user-img {
    border-radius:50%;
    width:20px;
}

/* Cart */
#fc_quantity {
    position:relative;
    top:4px;
    right:8px;
    padding-right:5px;
    color:#FFCC5B;
}

/* iPad */
.no-transition {
    transition:none;
    opacity:1;
    visibility:visible;
    display:none;
}

#menu li:hover > .no-transition {
    display:block;
}

#menu .left {
    float:left;
}

#menu .left span {
    color:#F8C574;
}

/* modal */

/* @title Modal Overlay */
/* @help The background overlay for the Modal window */
#simplemodal-overlay {
    background-color:#000;
    cursor:wait;
}

/* @title Modal Window */
/* @help The Modal window */
#modal_window {
    background-color:#FFF;
    overflow:auto;
    padding:10px;
}

/* @title Modal Spinner */
/* @help The Modal window loading image */
#modal_spinner {
    vertical-align:middle;
    margin-right:8px;
}

.mobile {
    display:none;
}

li#menu_button > a {
    background:transparent url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAZCAYAAADE6YVjAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADhJREFUeNpi/P//PwOtARMDHQBdLGFBYtMq3BiHT3DRPU4YR4NrNAmPJuHRJDyahEeT8Ii3BCDAAF0WBj5Er5idAAAAAElFTkSuQmCC") no-repeat scroll center center;
    height:22px;
    width:22px;
    display:block;
}

#menu2 {
    background:#2D3236 none repeat scroll 0 0;
}

nav#menu2,nav#menu2 a {
    font-size:14px !important;
}

.menu_pad {
    height:100%;
    padding:0 2em;
}

#menu li span.notifications {
    background:rgba(255,225,100,0.8) none repeat scroll 0 0;
    border-radius:8px;
    color:#000;
    margin:0;
    opacity:1;
    padding:0 5px;
    position:static;
    text-shadow:none;
    top:0;
    transition:opacity 0.5s linear 0s;
}

#menu li span.notifications.none {
    opacity:0;
}

#menu li.right ul li:first-child > a::after {
    right:4px;
    left:auto;
}

#menu li.right ul {
    right:0;
}


#menu li.login ul li:first-child > a::after {
    right:8px;
    left:auto;
}

#menu .desk.right ul ul {
    left:-183px;
    right:auto;
}

#menu li.right ul ul li:first-child a::after {
    right:-6px;
}

#menu button.form_button {
    background:rgba(0,0,0,0) linear-gradient(rgba(100,100,100,0.6),rgba(100,100,100,0.3)) repeat scroll 0 0;
    border:medium none;
    box-shadow:0 1px 0 rgba(255,255,255,0.1) inset,0 0 0 rgba(0,0,0,0.35),0 2px 4px rgba(0,0,0,0.25);
    color:white;
}

#menu button.form_button:hover {
    background:rgba(0,0,0,0) linear-gradient(rgba(160,160,160,0.6),rgba(160,160,160,0.3)) repeat scroll 0 0;
}

#menu .sprite_icon,.bottom_tab .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    opacity:0.3;
}

#menu .right.small {
    margin:0 6px;
    position:relative;
}

#menu .right.large {
    margin:0 50px 0 6px;
    position:relative;
}

#menu .right .count,.bottom_tab .count {
    background:rgba(200,60,60,1) none repeat scroll 0 0;
    display:none;
    font-size:10px;
    height:15px;
    left:20px;
    line-height:1.3;
    padding:0 4px;
    position:absolute;
    text-align:center;
    top:10px;
}

.bottom_tab .count {
    background:rgba(200,60,60,1) none repeat scroll 0 0;
    display:none;
    font-size:10px;
    height:15px;
    left:40px;
    line-height:1.3;
    padding:0 4px;
    position:absolute;
    text-align:center;
    top:10px;
}

#menu .right.active .sprite_icon,.bottom_tab .active .sprite_icon {
    opacity:1;
}

#menu .right.active .count,.bottom_tab .count {
    display:block;
}


/* skins/family/css/profile.css */


section#profile_menu {
    min-height:50px;
    width:100%;
    /* Navigation has moved to the left sidebar (profile_sidebar_nav.tpl). Hide the horizontal bar. */
    display:none;
}

div#profile_header {
    position:relative;
}

section#profile {
    border-radius:0 0 8px 8px;
    margin:0 auto;
    max-width:1280px;
    min-height:calc(100vh - 285px);
    padding:40px 0 20px;
}

/*
        PROFILE BODY
*/

.wrap {
    padding:10px;
}

.box {
    clear:both;
    margin:0 0 10px;
    padding:2px;
    position:relative;
}

.sidebar .form_textarea,.textArea textarea {
    height:50px;
    margin:0.2em;
    padding:4px;
    width:95%;
}

#profile .sidebar .form_textarea {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    box-shadow:none;
}

.action_buttons {
    position:absolute;
    right:8px;
    top:8px;
}

.sprite_icon {
    background:rgba(0,0,0,0) linear-gradient(#FFF,#EEE) repeat scroll 0 0;
    border:1px solid #DDD;
    border-radius:3px;
    color:#EEE;
    cursor:pointer;
    display:inline-block;
    margin:0;
    padding:2px;
    vertical-align:middle;
}

.sprite_icon:hover {
    background-image:linear-gradient(#F3F3F3,#E3E3E3);
    cursor:pointer;
}

.textArea .form_textarea {
    height:auto;
    width:88%;
    background:none;
    box-shadow:none;
}

#recommend_string {
    vertical-align:middle;
    padding:3px 4px;
}

.comment > div {
    font-size:14px;
    padding:0;
}

.comment .like_button_box {
    margin:0;
    min-width:0;
    padding:0;
    width:auto;
}

/*
.action_feedback ul a {
    display:inline-block;
    padding:12px 36px;
}
*/

.comment .like_button_box {
    margin:0;
    padding:0;
}

.comment .time {
    color:#999;
    font-size:12px;
    vertical-align:bottom;
}

.comment_upload {
    float:right;
    padding:5px 0;
}

#comment_image {
    display:table-cell;
    width:5%;
    vertical-align:top;
    padding:10px 10px 10px 0;
}

#comment_image img {
    border-radius:3px;
}

#comment_submit_section {
    float:right;
    padding:10px 0 10px 10px;
    text-align:center;
    vertical-align:top;
}

.action_feedback .error {
    margin:0 22px 0 92px;
    padding:10px;
    border-radius:3px;
}

.loader img {
    position:absolute;
    top:50px;
}

.item_tags {
    display:none;
    margin:1em 0 0;
}

.action_feedback > .item {
    border:medium none;
    box-shadow:none;
    margin:0;
    padding:0;
    text-align:center;
}

a.comment_button {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MUU2REE2OUVBNkIyMTFFNUE4QUFGODAzNDI0MjRCOTEiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MUU2REE2OURBNkIyMTFFNUE4QUFGODAzNDI0MjRCOTEiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NDM0ODM3MUY0MzE3MTFFMEI5QTdCNzY0MTdBNTA0MDAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NDM0ODM3MjA0MzE3MTFFMEI5QTdCNzY0MTdBNTA0MDAiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz572REQAAABnUlEQVR42sxUTUvDQBDdTTbpRyq9G0qgJeLVg17EfyDiyZN3waP/RhD8A3rw4LkXwd/Q5lCtbXootLSS9LvxTWiWEgxE2oIDG5KdmZe3M/OWB0HAtml8J4C2bbNisXhcKpWudV3fWywWqf6iKAqfz+cj13Wf+v1+tVarMUEOwzAOK5XKuxBCnc1mTFXVVGyITDabZeVy+bZer59h600hh2maj3Co0+lUBqZZZEQARAjjIWRNj3w+fzIejxnn/O81Qw7lZjKZAwkI8zZqBECXy+W3BAy22GqFbdl2A4ga6JueGhhCAqKgQdrZS2oKCGkSEFN+n8vlaPJDZ3x8or2khbFjw+HwWQJ2Op07rJc4IJWBmNN+EjD5ut1uFfk3FCNWgUGr1brs9Xr7UIuByTcty6oWCgU2GAw+G43GBWJ8JUJeM/xwNJlMvqIeiJXImaZpDEJ3Pc+j9w9cEqGsHMc5hRLaUMKvWqY4yo1MrAfglgmPgeQj+gbYue/7bWKaZPFmSkBig26HgDiy32w2r9CsVyo4MUmrc/7vb+wfAQYA1DjOpqcru6kAAAAASUVORK5CYII=") no-repeat scroll 10% center;
    padding:10px 12px 10px 35px;
}

a.share_button {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkMyMjMxMkE5QTZCMjExRTVBNzdGRDUwQzRDQUZBREYwIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkMyMjMxMkFBQTZCMjExRTVBNzdGRDUwQzRDQUZBREYwIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QzIyMzEyQTdBNkIyMTFFNUE3N0ZENTBDNENBRkFERjAiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QzIyMzEyQThBNkIyMTFFNUE3N0ZENTBDNENBRkFERjAiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4AQftAAAACgElEQVR42pSTy2tTQRTGJzeTd0LSRCWbPCqYrFRKWxC6F+tKF4Ju3Eu2/gEuXLoU14LYvfpntBuRgtIWi8kiMZikubl5P/y+4R65xkbrgeHO3Dnnd745c0ZXKhVFWywWKhwOK621mc9mM+Xz+ZTf7zdf/uO80+k8sSyrlkgkPoxGI7PnNUutMDrO53M1nU4NjGsmm0wmN2u12nvAroVCIbN3IaBAGQCIgdMCgcBHrqvV6j6gV5ehfwUaB8syYCp1kwyDwSCTJAE9AHTdC7VWKYMSxUAC4ewDYM1xnCzmOfoQgiRrLrQoUL0MI4jH63a7u/1+/zZAGwhcx78MtoMYfvowmAnH43EaNd3P5XKbWH/7DUiH4XC4Wa/XX0LNLbkMOba3DNIZLvQSoAfZbPaO9iqDqkeA7bFl6HgRI5THtW37crPZfKP5gzAou9toNPakfoRyT1SyDBzck16Veg8GAxWLxX4UCoXHmnQ4xtrt9jsGSDOjyY/ZwJh/R7AN0AygOep6HWNHygAhPE2rVCptIeZUR6NRBalPIZnzaSaTeY5sbxFwLPXii0gmk4q+uNWHKM0OhbiwTrlc3opEIqdUqnm0Vqv1LB6PHxWLxV04nrBxpZnltdCZcKyv8OvCzlzYV+6b19Tr9e4xKJ/Pb+BIDtVwLTXiXC7Ifd8TwqDWxjG3ATsRGE2jHg/S6fQLODi4/l8tITfItTQtg5DwBi8GyrYRc+SFGSAWZ9h4zeyiwttv0ug0Hh3wT1B2HzFflmEGiIBD3M6hgEQh15xL+9BYjlQq9QrHVOfBTDyAn6mCwTIEIH3ofeNMQKXnwYxC9FnNq2IZ8r/2B1CgqxT8y34KMABFVbboGmWuxgAAAABJRU5ErkJggg==") no-repeat scroll 10% center;
    margin:0;
    padding:12px 10px 12px 32px;
}

a.tag_button {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjE1MzQzQjIyQTgxMDExRTU4NDk3RjdEMUI0N0YzNDFFIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjE1MzQzQjIzQTgxMDExRTU4NDk3RjdEMUI0N0YzNDFFIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTUzNDNCMjBBODEwMTFFNTg0OTdGN0QxQjQ3RjM0MUUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTUzNDNCMjFBODEwMTFFNTg0OTdGN0QxQjQ3RjM0MUUiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz555lWhAAAA9ElEQVR42qzVPQuDMBAG4Fzt4KwUFxdHBf+4f0dQcHFSiCLoIm7XniBUm4+zmsEhCY+55DUCIoo720Pc3J70SNPUOClJEjxWAgCiaRpwHEcEQYBZlgFrhXEco2pbqG+aphWTUgKrZMJU/W3bQtd1QON5nsNPyWcwKtV1XeF5HhL62a5tnr5kHbaVOs+zGIYBxnFUHwoX21oYhkgr9X3fHBsO9r1SYw7PYNZgR1HUX0Go/B1Y1/XrClgUxT6H9IaqquAfrCxL0B7KWfSIKXPIRVWYNtg2VIcZv2UdasKsl8MRtWGs64uQZVl6DrYm5u5fwFuAAQBINnUv6P4z/wAAAABJRU5ErkJggg==") no-repeat scroll 0 center;
    padding:9px 9px 9px 27px;
}

.item .like_button_box,.item .dislike_button_box {
    display:inline-block;
    margin:0;
    min-width:50px;
    padding:0 20px 15px 20px;
    text-align:center;
}

.item.rounded.urlscan_card {
    box-shadow:none;
    margin:0;
    padding:0;
}

.wrap .title {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    color:#444;
    display:block;
    font-size:18px;
    font-weight:bold;
    padding:0;
    text-transform:capitalize;
    vertical-align:top;
    margin-top:-4px;
}

.media_image {
    float:right;
    margin:0 0 0 1em;
    width:50%;
}

.location,.date,.category {
    color:#999;
    display:block;
    font-size:14px;
}

.list-item img {
    width:100%;
}

.col3 .item_media .wrap > p {
    margin:0;
}

.clear {
    clear:both;
}

.double_1,.double_2 {
    float:left;
    width:50%;
}

.triple_2,.triple_3 {
    float:left;
    width:50%;
}

.quads_1 {
    width:66.66%;
    float:left;
}

.quads_2,.quads_3,.quads_4 {
    float:left;
    width:33.33%;
}

.fifths_1,.fifths_2 {
    float:left;
    width:50%;
}

.fifths_3,.fifths_4,.fifths_5 {
    float:left;
    width:33.33%;
}

.single_1 > div,.double_1 > div,.double_2 > div,.triple_1 > div,.triple_2 > div,.triple_3 > div,.fifths_1 > div,.fifths_2 > div,.fifths_3 > div,.fifths_4 > div,.fifths_5 > div,
.quads_1 > div,.quads_2 > div,.quads_3 > div,.quads_4 > div {
    padding:1px;
}

.list-info.full {
    position:absolute;
    background:rgba(0,0,0,0.5);
    top:0;
    left:0;
    right:0;
    bottom:0;
    z-index:5;
    text-align:center;
}

.list-info.full span {
    font-size:22px;
    color:white;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    left:0;
    right:0;
    text-align:center;
}

.list-item.quads .list-info span {
    display:block;
    font-size:2em;
    position:relative;
    top:50%;
    transform:translateY(-50%);
    color:white;
}

.list-item.photo.hidden {
    display:none;
}

.profile_hoverimage {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    color:white;
    display:none;
    left:4px;
    line-height:0;
    position:absolute;
    right:4px;
    top:50%;
    transform:translateY(-50%);
}

.profile_image .normal {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
    color:#FFF;
    font-weight:bold;
    padding:7px;
}

.list-info .title {
    font-weight:normal;
}

.list-info.photo > div {
    padding:5px;
}

.head_tab > li {
    border-radius:8px 8px 0 0;
}

#actions_tab > li:last-child {
    border-radius:0 8px 0 0;
}

#actions_tab > li:first-child {
    border-radius:8px 0 0;
}

.action_buttons li {
    list-style:outside none none;
    padding:7px;
}

#actions_tab li.solo {
    border-radius:8px 8px 0 0;
}

.action_buttons ul {
    margin:0;
    padding:0;
}

.box > ul#actions_tab,.box > ul.head_tab {
    height:35px;
    margin:0;
    padding:0;
}

.comment_content {
    display:table-row;
}

.user_image {
    display:table-cell;
    width:10%;
    padding:8px;
}

.comment_page_section {
    background:#FFF none repeat scroll 0 0;
    display:table;
    box-sizing:border-box;
}

.comment {
    border-bottom:1px dotted #CCC;
    display:table-cell;
    padding:5px;
    vertical-align:top;
}

.like_button_box a {
    line-height:22px;
    vertical-align:bottom;
}

.like_button_box a:hover {
    text-decoration:none;
}

.dislike_button_box a {
    line-height:22px;
    vertical-align:bottom;
}

.dislike_button_box a:hover {
    text-decoration:none;
}

.comment > div > a {
    vertical-align:bottom;
}

.comment .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    padding:3px;
}

.player_button {
    display:block;
    height:50px;
    width:50px;
}

.player_button > a {
    background:rgba(0,0,0,0) url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjxzdmcgd2lkdGg9IjEyMXB4IiBoZWlnaHQ9IjEyMXB4IiB2aWV3Qm94PSIwIDAgMTIxIDEyMSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWxuczpza2V0Y2g9Imh0dHA6Ly93d3cuYm9oZW1pYW5jb2RpbmcuY29tL3NrZXRjaC9ucyI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDMuMyAoMTE5NzApIC0gaHR0cDovL3d3dy5ib2hlbWlhbmNvZGluZy5jb20vc2tldGNoIC0tPgogICAgPHRpdGxlPlBsYXk8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZGVmcz4KICAgICAgICA8ZmlsdGVyIHg9Ii01MCUiIHk9Ii01MCUiIHdpZHRoPSIyMDAlIiBoZWlnaHQ9IjIwMCUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9ImZpbHRlci0xIj4KICAgICAgICAgICAgPGZlT2Zmc2V0IGR4PSIwIiBkeT0iMCIgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iMSIgaW49InNoYWRvd09mZnNldE91dGVyMSIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMCAgIDAgMCAwIDAgMCAgIDAgMCAwIDAgMCAgMCAwIDAgMC4yMSAwIiBpbj0ic2hhZG93Qmx1ck91dGVyMSIgdHlwZT0ibWF0cml4IiByZXN1bHQ9InNoYWRvd01hdHJpeE91dGVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgICAgICA8ZmVNZXJnZT4KICAgICAgICAgICAgICAgIDxmZU1lcmdlTm9kZSBpbj0ic2hhZG93TWF0cml4T3V0ZXIxIj48L2ZlTWVyZ2VOb2RlPgogICAgICAgICAgICAgICAgPGZlTWVyZ2VOb2RlIGluPSJTb3VyY2VHcmFwaGljIj48L2ZlTWVyZ2VOb2RlPgogICAgICAgICAgICA8L2ZlTWVyZ2U+CiAgICAgICAgPC9maWx0ZXI+CiAgICA8L2RlZnM+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBza2V0Y2g6dHlwZT0iTVNQYWdlIj4KICAgICAgICA8ZyBpZD0iTGFuZHNjYXBlLS0tNi1QbHVzIiBza2V0Y2g6dHlwZT0iTVNBcnRib2FyZEdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTI0MC4wMDAwMDAsIC0zNDYuMDAwMDAwKSI+CiAgICAgICAgICAgIDxnIGlkPSJQbGF5IiBza2V0Y2g6dHlwZT0iTVNMYXllckdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjQwLjM0MjEzMywgMzQ2LjMzMzMzMykiPgogICAgICAgICAgICAgICAgPGVsbGlwc2UgaWQ9Ik92YWwtMTAyIiBmaWxsLW9wYWNpdHk9IjAuNCIgZmlsbD0iIzAwMDAwMCIgc2tldGNoOnR5cGU9Ik1TU2hhcGVHcm91cCIgY3g9IjYwIiBjeT0iNjAiIHJ4PSI2MCIgcnk9IjYwIj48L2VsbGlwc2U+CiAgICAgICAgICAgICAgICA8cGF0aCBkPSJNNDMuNTAwNDQ3MSw3OC40NjA5MjM5IEM0My40NjQ0MTEsODAuOTM5NTI4NSA0NS42MTA4MDc0LDgyLjkwMDkwODQgNDguNTQ3NzQ0NCw4MS40MjE2NjgxIEw4MC4wOTA1MzcxLDYyLjc3MjE0ODcgQzgyLjU1Nzg3OTUsNjEuMzM4MTc5NyA4Mi41NzcwMjM2LDU3LjI4MTg2OTYgODAuMDc0NzcxNCw1NS44MDk0MiBMNDguODQ3MjkzOSwzNy4zMTk0ODIgQzQ2LjU1MTEyMjcsMzUuOTQ0MzY1NyA0My41MTczMzg5LDM2LjY3NjYyOTMgNDMuNTE3MzM4OSw0MC4xMzc2MjE1IEw0My41MDA0NDcxLDc4LjQ2MDkyMzkgTDQzLjUwMDQ0NzEsNzguNDYwOTIzOSBaIiBpZD0iSW1wb3J0ZWQtTGF5ZXJzIiBmaWxsPSIjRkZGRkZGIiBmaWx0ZXI9InVybCgjZmlsdGVyLTEpIiBza2V0Y2g6dHlwZT0iTVNTaGFwZUdyb3VwIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") no-repeat scroll center center / contain;
    display:block;
    height:40px;
    margin:auto;
    width:40px;
}

div#list > .item:last-child,
.widget-item-widget_list > .item:last-child {
    margin:0;
    border:medium none;
}

div#list > .item:first-child,
.widget-item-widget_list > .item:first-child {
    margin:0 auto;
}

#list ul li:last-child .item {
    margin:0;
}

#list ul li:first-child .item {
    margin:0;
}

#guestbooks .item:last-child,#guestbooks .item:last-child {
    margin:0;
    border:medium none;
}

.list_item:last-child {
    border:medium none;
    margin:0;
}

#list .item h1 {
    margin:0;
}

#list li .list_item:first-child {
    margin:0 0 1em;
}

#list li:last-child .list_item:first-child {
    margin:0;
}

#list li {
    list-style:none;
}

#list ul.sortable li:last-child .list_item {
    border:medium none;
}

#list > .ui-sortable .list_item {
    border-bottom:1px solid #EEE;
}

.list-info > div {
    padding:5px 15px;
}

.item_media .list-info div > span {
    font-size:1.3em;
}

.blog {
    position:relative;
}

.blog > .media_image {
    float:none;
    margin:0;
    width:100%;
}

.date > a {
    color:#999;
}

.online_status_user h2 {
    margin:0;
}

.list-text {
    border-bottom:1px dashed #333;
    padding:5px 0 3px;
    position:relative;
}

.solo {
    border-radius:8px 8px 0 0;
}

.block_search h3 {
    display:inline;
    font-size:14px;
    margin:0;
    padding:0;
}

.follow_pending {
    background:#333 linear-gradient(#788,#555) repeat scroll 0 0;
    color:white;
}

.clearfix:after {
    visibility:hidden;
    display:block;
    font-size:0;
    content:" ";
    clear:both;
    height:0;
}

.clearfix {
    display:inline-block;
}

* html .clearfix {
    height:1%;
}

.clearfix {
    display:block;
}

.small_image {
    width:33.33%;
    float:left;
}

.small_image > div {
    padding:1px;
}

.online_status_online {
    background-color:#CF9;
    color:#000;
    display:inline-block;
    padding:4px;
    width:100%;
}

.online_status_offline {
    background-color:#CF9;
    color:#000;
    display:inline-block;
    padding:4px;
    width:100%;
}

.more > a {
    color:#269;
}

.breadcrumbs > a {
    display:inline-block;
    text-transform:capitalize;
    text-decoration:none;
}

.profile_tab_holder {
    width:100%;
    padding:5px;
    margin:10px;
    border-bottom:1px solid #B8B8B8;
}

.profile_tab {
    float:left;
    min-height:37px;
    margin-bottom:-1px;
}

.profile_tab > a {
    background:#FFF linear-gradient(#FFF,#EEE) repeat scroll 0 0;
    border:1px solid #B8B8B8;
    border-radius:3px 3px 0 0;
    display:inline-block;
    font-weight:bold;
    padding:8px;
    text-transform:capitalize;
    text-decoration:none;
}

a.profile_tab_active {
    background:#FFF linear-gradient(#EEE,#DDD) repeat scroll 0 0;
    margin-bottom:-1px;
    border-bottom:0;
}

.profile_tab > a.profile_tab_active {
    border-bottom:1px solid #D7DADC;
}

.image_nav .form_button {
    padding:5px 10px;
}

.list-item.photo {
    position:relative;
}

.list-item.photo.quads > div > div {
    position:relative;
}

section#profile .page_tab_bar_holder {
    border-bottom:medium none;
}

.middle > div {
    text-align:center;
}

.comment_text {
    display:inline-block;
    color:#666;
    padding:10px 0;
    margin:0 0 10px;
}

#jrEvent_calendar .ecal-calendar th {
    background:#DFDFDF none repeat scroll 0 0;
    border:1px solid #CCC;
    color:#555;
    padding:10px 0;
    text-align:center;
}

#jrEvent_calendar table.ecal-main {
    width:100%;
}

#jrEvent_calendar .ecal-date {
    border:medium none;
    color:#666;
    margin:5px 0 0;
}

#jrEvent_calendar .ecal-shadow {
    opacity:0.3;
}

.ecal-main.ecal-calendar img {
    float:left;
    width:25px;
}

.ecal-event-list li a {
    font-size:11px;
}

#jrEvent_calendar .ecal-even-row {
    background-color:#FFF;
    background-image:none;
}

#jrEvent_calendar .ecal-today .center {
    font-size:0.9em;
    font-weight:bold;
}

#profile_header > .wrap {
    background:white none repeat scroll 0 0;
    border-radius:5px;
    box-shadow:0 0 2px #AAA;
}

div#profile_header > div > a > img {
    display:block;
    margin:auto;
    max-width:1280px;
    position:relative;
    width:100%;
}

.wrap.cat:first-child {
    padding:1em;
}

.wrap.cat {
    padding:0 1em 1em;
}

.faq h3 {
    display:inline;
}

.doc_pager {
    background:#D6D7D9 none repeat scroll 0 0;
    display:table;
    font-size:14px;
    width:100%;
}

.section_text {
    background:#FDFDFF none repeat scroll 0 0;
    color:#666;
    font-size:14px;
    padding:12px;
}

.doc_pager a {
    color:#000;
}

.doc_toc a {
    color:#752545;
    cursor:pointer;
}

.new_section_button > a {
    color:white;
}

.new_section_button {
    padding:5px;
}

.new_section_box {
    background:white none repeat scroll 0 0;
    border:medium none;
    border-radius:4px;
    box-shadow:3px 3px 16px #999;
    display:none;
    overflow:visible;
    padding:12px;
    position:inherit;
    text-align:left;
    width:400px;
    z-index:10000;
}

.section_function_title {
    background:white none repeat scroll 0 0;
    border:2px solid #999;
    font-family:"Roboto Mono",monospace;
    font-size:16px;
    margin:10px 0;
    padding:12px;
}

.section_function {
    border:1px solid #CCC;
    border-radius:3px;
    display:table;
    font-size:14px;
    margin-bottom:0;
}

.section_function_name {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    margin-bottom:0;
    padding:12px;
}

.section_function_cell {
    background:#FFF none repeat scroll 0 0;
    border-bottom:medium none;
    border-top:1px solid #EEE;
    padding:9px 12px;
}

.section_function_desc {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
}

.section_file {
    background:#FFF none repeat scroll 0 0;
    border-radius:3px;
    margin-bottom:12px;
}

.toc_chapter {
    margin:0;
}

.doc_toc_list h1 {
    margin:0;
}

.toc_indent_1 {
    margin:5px 0 0 26px;
}

.forumCrumbs {
    font-size:16px;
    font-weight:normal;
}

.forum_post_pinned {
    border:2px dotted #CCC;
}

.forum_post_count {
    background:#EEE none repeat scroll 0 0;
    margin-right:0;
}

.forum_post_image {
    font-size:11px;
    word-break:keep-all;
    word-wrap:normal;
}

.forum_post_image a {
    word-wrap:break-word;
    word-break:break-all;
}

.profile_image {
    background:white none repeat scroll 0 0;
    border-radius:50%;
    max-width:100px;
    padding:4px;
    position:relative;
}

.playlist_box {
    background-color:#FFF;
    border:medium none;
    border-radius:8px;
    box-shadow:1px 1px 10px #999;
}

.advert {
    float:right;
    margin:46px 0 0;
    width:90px;
}

.bbcode_quote {
    border-radius:3px;
}

div#tag_message {
    margin:1em 0;
    padding:3px;
}

.shared {
    border-bottom:1px solid #EEE;
    font-size:14px;
    padding:0 6px 10px;
}

.wrap_share {
    padding:1em;
}

.wrap_share_data {
    padding:1em;
    border:1px solid #E3E3E3;
    margin-top:10px;
}

.action_text .wrap {
    background:white;
}

.action_name {
    color:#933;
}

.shared > div {
    display:inline-block;
    margin:0 5px 0 0;
    width:25px;
}

.item_media.action_text.clearfix > p {
    margin:1em;
}

.p5.center.field-hilight > a {
    color:#333;
}

.action_comments {
    position:relative;
    padding:0;
    margin-top:10px;
}

.action_item_detail {
    padding:1em;
    background:#F6F8FC;
    border-radius:5px;
    box-shadow:0 0 2px #BBB;
}

#comment_area .textArea {
    padding:10px 0;
}

#comment_text {
    font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    height:72px;
    width:100%;
    border:1px solid #777;
    border-radius:3px;
    box-sizing:border-box;
}

.detail_section .action_comments {
    display:block;
}

.detail_section .action_feedback {
    padding-top:10px;
}

.detail_section .title {
    font-size:20px;
}

.caption {
    background:#111 none repeat scroll 0 0;
    color:#EEE;
    padding:1em;
}

.tag_name_box {
    background:white none repeat scroll 0 0;
    border:medium none;
    box-shadow:0 1px 0 rgba(255,255,255,0.1) inset,0 0 0 rgba(0,0,0,0.35),0 2px 4px rgba(0,0,0,0.25);
    margin:6px;
    padding:6px;
}

.item_tags > div {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    margin-bottom:12px;
}

.tag_name_box:hover {
    background:#393E42 none repeat scroll 0 0;
}

.pending {
    padding:1em;
}

.action_comment {
    background:#FFF none repeat scroll 0 0;
    box-shadow:0 0 2px #AAA;
    padding:12px;
}

div#editor-input form > br {
    display:none;
}

section .block_content textarea {
    font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    width:98%;
    padding:6px;
}

#timeline .block {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
}

.item .border {
    border-top:1px solid #EEE;
}

#profile .block .page_content {
    padding:0;
    border-radius:0;
}

#profile .page_content {
    padding:10px 0;
    border-radius:4px 4px 0 0;
}

.timeline_filter {
    background-image:linear-gradient(#FFF,#EEE);
    border-radius:4px;
    box-shadow:0 0 2px #BBB;
    position:absolute;
    right:0;
    top:50px;
}

.timeline_filter > li {
    border-bottom:1px solid #CCC;
    cursor:pointer;
    line-height:2.4em;
    padding:7px 16px;
    text-align:right;
    text-transform:capitalize;
    width:100px;
}

.timeline_filter > li:last-child {
    border:medium none !important;
}

.timeline_filter > li:first-child {
    border-radius:4px 4px 0 0;
}

.timeline_filter > li:last-child {
    border-radius:0 0 4px 4px;
}

.timeline_filter > li a {
    color:#444;
}

.timeline_filter > li:hover {
    background-color:#933;
}

.timeline_filter > li:hover a {
    color:white;
}

.image_stack img {
    box-shadow:1px 1px 5px #000;
}

.list-item.photo.triple {
    float:left;
    width:33.3%;
}

section#profile .col8 .block .block_content {
    clear:both;
}

section#profile .block .title h1 {
    font-size:18px;
    color:#8899A6;
    font-weight:normal;
    margin:0;
}

.p5.center {
    position:relative;
}

.photoalbum_box {
    background-color:#FFF;
    border:medium none;
    box-shadow:1px 1px 11px 0 #999;
}

.form_button.photoalbum_button {
    padding:7px;
}

.gallery_lightbox {
    padding:0;
}

#group_button {
    border:none;
}

.list-info.full {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0 !important;
}

.box_body {
    border-radius:0 4px 4px;
}

.head_tab > li a,#actions_tab > li a {
    display:block;
    height:21px;
    width:21px;
}

#actions_tab > li,.head_tab > li {
    background-color:#DFDFDF;
    float:left;
    list-style:outside none none;
    padding:9px 8px;
    position:relative;
}

.media {
    background:#FFF none repeat scroll 0 0;
    border-radius:5px;
    box-shadow:0 0 2px #BBB;
    color:#666;
    overflow:hidden;
}

.media a:hover {
    text-decoration:none;
}

.stat_entry_box > a {
    background:white none repeat scroll 0 0;
    border:1px solid #EEE;
    border-radius:2px;
    display:block;
    line-height:1.6;
    margin:0 0 2px;
    padding:5px 10px;
    text-transform:capitalize;
}

.action .item {
    border:medium none;
}

#profile .page_table {
    background-color:#DDD;
}

.action .middle {
    width:44%;
}

.attending {
    color:#111;
}

#profile .block .page_content {
    box-shadow:none;
}

.header,.details {
    display:table-row;
}

.details > div {
    display:table-cell;
    padding:5px;
    text-align:center;
    width:25%;
}

.header > div {
    display:table-cell;
    padding:5px;
    text-align:center;
    width:25%;
}

.header {
    background-color:#555;
    color:white;
    font-weight:lighter;
}

.details {
    background:white none repeat scroll 0 0;
    color:#666;
    font-weight:bold;
}

.detail_box > .media {
    padding:4px 0 4px 8px;
}

.detail_box {
    margin:1em 0;
}

.detail_box > div {
    background:#666 none repeat scroll 0 0;
    border-bottom:1px solid #555;
    border-top:1px solid #777;
    color:#EEE;
    padding:5px;
}

.detail_box > div > .item {
    color:#888;
}

.detail_section .item.clearfix {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
}

.detail_box .item {
    border-radius:0;
    box-shadow:none;
    margin:5px 0 0;
}

.trigger > span {
    font-weight:bold;
}

.detail_box div:last-child {
    border-bottom:medium none;
}

.lyrics .item,.description .item {
    margin:5px auto 0;
    text-align:left;
}

.trigger {
    cursor:pointer;
    text-align:center;
}

.image {
    margin:0 1em 0 0;
}

.list_buttons > a {
    float:right;
}

.list_buttons > div {
    float:right;
}

.list_item .title {
    display:block;
    font-size:16px;
    font-weight:bold;
    margin:0 0 3px;
}

.list_item .data.clearfix span {
    display:block;
    float:left;
    margin:1em 0 0;
    width:50%;
    color:#999;
}

.list_item .data.clearfix span:last-child {
    text-align:right;
}

.page_nav.clearfix {
    margin-bottom:10px;
}

.author_image {
    float:left;
    height:40px;
    margin:0 15px 5px 0;
    overflow:hidden;
    width:40px;
}

.author {
    color:#999;
    margin:1em 0;
}

.author > span {
    color:#666;
    font-weight:bold;
}

.author .sprite_icon.email {
    float:right;
}

.detail_section .media_text {
    font-size:18px;
    line-height:1.4;
}

.external_image {
    height:200px;
    overflow:hidden;
    max-height:200px;
}

.col4 .external_image {
    height:auto;
}

.col4.last > .box {
    margin:0 0 0 8px;
}

p.waiting {
    background:white none repeat scroll 0 0;
    box-shadow:0 0 2px #AAA;
    margin-top:0;
    padding:12em 0;
}

#profile > .row > .col8.last > div {
    padding:0 0 0 8px;
}

#playlist_message {
    font-size:14px;
    padding:10px;
}

.profile_data.profile {
    bottom:0;
    color:white;
    font-weight:bold;
    left:127px;
    margin:0;
    min-width:300px;
    position:absolute;
    text-shadow:1px 1px #333;
    z-index:1;
}

#profile_header .profile_name {
    bottom:55px;
    color:white;
    font-size:33px;
    font-weight:bold;
    left:135px;
    position:absolute;
    text-shadow:1px 1px 1px #333;
    text-transform:uppercase;
    z-index:1;
}

.profile_data.profile span {
    color:#FD9;
    font-weight:bold;
    text-shadow:none;
}

.profile_data.profile li {
    font-size:24px;
}

.profile_hover {
    background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.5));
    bottom:0;
    height:40%;
    left:0;
    min-height:150px;
    pointer-events:none;
    position:absolute;
    width:100%;
    z-index:0;
}

.list_item .sprite_icon {
    padding:0;
    margin-left:3px;
}

.form_button,.follow,.following {
    background:#FFF linear-gradient(#FFF,#EEE) repeat scroll 0 0;
    border:1px solid #CCC;
    border-radius:2px;
    box-shadow:none;
    color:#555;
    height:auto;
    margin:0;
    padding:7px 10px;
    text-transform:capitalize;
    vertical-align:middle;
    font-weight:normal;
    font-size:14px;
    cursor:pointer;
}

.upload_button {
    margin-left:2px;
}

.follow,.following {
    font-size:14px;
}

section#profile .comment_upload .form_button {
    border:medium none;
}

.button_player,.sc_button_player {
    float:right;
}

#share_form .button_player {
    display:none;
}

.profile_info {
    bottom:-2px;
    left:-2px;
    position:absolute;
    width:100%;
}

.profile_buttons {
    padding:3em 0 0;
    text-align:right;
}

.profile_admin_buttons .sprite_icon {
    padding:2px;
}

.action_table {
    background:white none repeat scroll 0 0;
    border-radius:5px 5px 0 0;
    display:table;
    width:100%;
}

.action_row {
    display:table-row;
}

.action_cell {
    display:table-cell;
    padding:15px 0 0 15px;
    vertical-align:top;
    width:50px;
}

.action_large_cell {
    display:table-cell;
    padding:10px;
}

.action_form_buttons .wrap.clearfix {
    padding:7px 1em;
}

.action .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    padding:0;
}

.head .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    cursor:default;
    float:right;
    padding:0;
    position:relative;
    top:-2px;
}

.head .wrap {
    padding:10px 1em 0;
}

.profile_admin_buttons {
    position:absolute;
    top:0;
    width:100%;
}

.camera .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    margin:0;
    max-width:40px;
    opacity:0.6;
    padding:0;
}

.profile_hoverimage .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    opacity:0.6;
}

.profile_buttons .form_button {
    font-weight:bold;
    font-size:14px;
}

a.camera {
    display:block;
    max-width:180px;
    padding:5px;
    width:100%;
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:2px solid rgba(255,255,255,0);
    transition:all 0.5s ease 0s;
    border-radius:5px;
    color:rgba(0,0,0,0);
    text-decoration:none;
}

a.camera:hover {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    border:2px solid rgba(0,0,0,0.7);
    color:rgba(255,255,255,1);
}

.update_modal {
    background:white none repeat scroll 0 0;
    border-radius:5px;
    display:none;
    text-align:center;
}

.block_recommend input[type="text"] {
    width:70%;
}

.trending > p:first-child {
    margin:0;
}

/* Legacy fixed 400×540 fought SimpleModal + amAction (nested scrollbars,clipped share preview). */
#share_modal {
    display:none;
    height:auto;
    min-height:0;
    width:min(560px,94vw);
    max-width:100%;
    box-sizing:border-box;
    overflow-x:hidden;
    overflow-y:visible;
    z-index:100000;
}

/* amCore timeline share inject — must not use display:none (profile #share_modal rule is for legacy page stubs only). */
#amaction_share_panel {
    height:auto;
    min-height:0;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    overflow-x:hidden;
    overflow-y:visible;
}

#share_update,
#amaction_share_update {
    font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    font-size:13px;
}

.profile_information {
    font-size:15px;
    line-height:1.6;
}

.profile_information .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    margin-right:5px;
    padding:0;
}

.bio .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    float:right;
}

a.full_bio {
    color:#68A;
}

.modal {
    margin:auto;
    max-width:650px;
}

.modal .simplemodal-close {
    cursor:pointer;
}

.comment_upload .upload_button {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/camera.png") no-repeat scroll 96% center / contain;
    display:block;
    opacity:0.5;
    text-indent:-99999px;
    width:20px;
    height:20px;
}

.attachment_upload_button #pm_comment_file .qq-uploader {
    top:5px;
}

.file_attachment {
    padding:0 !important;
}

.overlay.bundle_box {
    background-image:linear-gradient(#FFF,#EEE);
    box-shadow:0 0 10px #888;
}

.online_status {
    text-transform:capitalize;
}

.small_image > div:hover {
    opacity:0.8;
}

.new_section_box h3 {
    margin:5px;
}

.overlay.new_section_box {
    width:230px;
}

#timeline .block {
    background:#F6F8FC none repeat scroll 0 0;
    box-shadow:0 0 2px #AAA;
    border-radius:5px;
}

.profile_button.form_button.attendee {
    font-weight:bold;
    height:auto !important;
    padding:11px 15px;
}

.list_item h2 {
    margin:0 0 5px;
}

.follow_buttons {
    float:right;
}

.follow_buttons .sprite_icon {
    margin-left:3px;
}

.follow_buttons.clearfix > a {
    float:right;
}

.profile_button.follow_button {
    float:left;
}

.manage_button.form_button {
    float:right;
}

.list_item .form_help_drop_left {
    padding:0 3em;
    font-size:20px;
}

.list_item .form_help_drop {
    padding:0;
}

.forum_new_post_form .qq-upload-button {
    display:block;
    padding:8px 10px;
    margin:0 !important;
}

.forum_post_text {
    line-height:1.5;
}

.p5.pl10 > h2 {
    color:#933;
}

.list-text .sprite_icon {
    padding:0;
}

.poll_choices .item.poll_choice {
    margin:5px;
    padding:0;
}

.poll_countdown {
    float:right;
    background-color:#ECF0F2;
    padding:1em;
    margin:0 15px 5px 0;
    border-radius:3px;
}

.action .poll_countdown {
    float:none;
    min-width:150px;
    padding:0;
    text-align:center;
}

.profile_name > h1 {
    font-size:18px;
}

.urlscan_card h2 {
    margin:0 0 1em;
}

.urlscan_card .p10 {
    padding:0 10px;
}

.action .form_help_drop {
    background:#EEE none repeat scroll 0 0;
}

.action .form_help_drop_left {
    font-size:20px;
    padding:5px 25px 10px;
}

.form_help_drop_left p {
    margin:0;
}

.tm a {
    color:#933;
}

.tm {
    padding:0;
}

.tm > li {
    background:white none repeat scroll 0 0;
    border:1px solid #EEE;
    margin:2px 0;
    padding:5px 10px;
    list-style:none;
}

.list_item.spaced .sprite_icon {
    margin:6px 0;
}

#action_search .form_text {
    width:50%;
}

#action_search.item.p10 {
    border-radius:5px;
    box-shadow:0 0 2px #BBB;
    margin:0 auto 1em;
}

.list_item.bordered {
    margin:0 0 5px;
    padding:0 0 5px;
}

.list_item.bordered:last-child {
    margin:0;
    padding:0;
}

.rating {
    background:white none repeat scroll 0 0;
    border:1px solid #EEE;
    display:none;
    margin:0 0 5px;
    padding:1em 0;
}

.rating > div {
    display:block !important;
    margin:auto;
    width:80px;
}

.sprite_icon.jr {
    padding:0;
}

.mention-modal {
    max-width:550px;
    margin:auto;
}

.follow_data {
    color:#666;
    margin:30px 0 0;
    min-height:120px;
    padding:10px;
}

#basic > li {
    border-bottom:1px solid #EEE;
    padding:5px 20px 5px 5px;
    text-transform:uppercase;
    white-space:nowrap;
}

#basic a {
    padding:0 10px;
    white-space:nowrap;
    width:146px;
}

.arrow-down {
    border-bottom:10px solid #FFF;
    border-left:10px solid transparent;
    border-right:10px solid transparent;
    height:0;
    left:12px;
    position:absolute;
    top:-10px;
    width:0;
}

#asi {
    margin-bottom:6px;
}

.action_buttons .sprite_icon {
    cursor:pointer;
}

.margin {
    display:block;
    margin-top:1em;
}

.youtube-container {
    margin:0;
}

#oneall_timeline_networks > a {
    text-decoration:none;
}

#oneall_timeline_networks > span {
    display:none;
}

.form_editor_holder {
    padding:7px 0;
}

.profile_information .sprite_icon {
    cursor:auto;
}

.urlscan_card {
    border:medium none;
    border-radius:3px;
    margin-top:0;
    padding:0;
}

.small_follow_container {
    position:absolute;
    right:0;
    top:6px;
}

.urlscan_card .date {
    text-transform:none;
}

#mention_modal {
    width:500px;
    height:300px;
}

.event_attend_button {
    float:right;
    background:transparent;
    margin:2px 3px 0 6px;
    padding:2px;
    border-radius:3px;
    font-size:13px;
}

.author span.date {
    font-weight:lighter;
}

.sprite_icon.sprite_icon_hilighted {
    background:#FFDC71 none repeat scroll 0 0;
}

.discussion_follow_box {
    background:#FFDC71 none repeat scroll 0 0;
    color:black;
}

#comment_form_section {
    padding:1em;
    box-sizing:border-box;
}

#shareThis {
    padding:1em;
    border-radius:3px;
}

.item_media .wrap > p.no-items:first-child {
    margin:1em 0;
}

.comment_page_section > div {
    display:table;
}

#share_modal_box .action,#share_modal_box .item,
#amaction_share_modal_box .action,#amaction_share_modal_box .item {
    max-height:none;
    overflow:visible;
    padding:0;
}

#share_modal_box .item > .wrap,
#amaction_share_modal_box .item > .wrap {
    padding:0;
}

.head .block_search .form_button {
    font-size:13px;
    padding:3px;
    position:relative;
    top:-4px;
}

.head .block_search .form_text {
    height:23px;
}

.profile_images > .profile_name {
    padding:0 5px;
}

.page_nav.clearfix {
    position:relative;
}

.item.item_profile_help {
    margin:12px 0 0;
    clear:both;
}

#profile .block {
    padding:2px 0 0 0;
}

#comment_form_section {
    padding:0;
}

#profile .col9 > div {
    padding:0 0 0 12px;
}

.title {
    border-radius:5px 5px 0 0;
}

.page_banner_box {
    background:white;
}

.page_banner {
    background:white;
}

.form_submit_section {
    background:white;
}

.page_content {
    background-color:#FFF;
}

.page_table_header {
    background:#FAF9F2 linear-gradient(#FFF,#EEE) repeat scroll 0 0;
}


/* skins/family/css/profile_menu.css */


/* @title Profile Menu */
/* @help This is full menu on the profiles */
#horizontal .hideshow li a {
    border:medium none;
    padding:0;
    text-align:left;
}

/* @title Menu Banner */
/* @help Background for the menu */
.menu_banner {
    background:white;
    border-radius:0 0 5px 5px;
    box-shadow:0 0 2px #AAA;
    margin:auto;
    max-width:1280px;
    position:relative;
}

#profile_menu {
    z-index:89;
}

ul#horizontal,#horizontal ul {
    list-style-type:none;
    margin:0;
    padding:0;
}

#horizontal li {
    float:left;
    padding:15px 0 0;
}

#horizontal {
    float:left;
    height:50px;
    width:calc(100% - 112px);
    visibility:collapse;
}

/* @title Menu Links*/
/* @help This is full menu on the profiles */
#horizontal a {
    border-left:1px solid #FFF;
    border-right:1px solid #CCC;
    color:#666;
    display:block;
    font-size:14px;
    padding:3px 27px;
    text-decoration:none;
    transition:border-color 0.218s ease 0s;
}

#horizontal a:link,div.horizontal a:visited {
    text-align:center;
    text-decoration:none;
    text-transform:uppercase;
}

/* @title Menu Item Hover*/
/* @help Background for menu items */
#horizontal li:hover {
    border-bottom:4px solid rgba(100,130,180,1);
    padding-bottom:5px;
}

#submenu {
    display:none;
}

#horizontal > li:first-child a {
    border-left:medium none;
}

#horizontal > li:last-child a {
    border-right:medium none;
}

#horizontal .active > a {
    color:rgb(100,130,180);
}

.menu_banner ul ul {
    background:white none repeat scroll 0 0;
    box-shadow:2px 2px 8px #999;
    max-height:300px;
    max-width:160px;
    overflow-x:hidden;
    overflow-y:auto;
    position:absolute;
    right:0;
    text-transform:uppercase;
    top:52px;
}

.menu_banner ul#submenu > li {
    border-bottom:1px solid #EEE;
    float:none;
    list-style:outside none none;
    padding:12px 20px 12px 12px;
    text-transform:uppercase;
    white-space:nowrap;
    cursor:pointer;
}

#submenu > li:hover a {
    color:rgb(100,130,180);
    text-decoration:none;
}

li.hideshow {
    display:none;
    position:relative;
    text-transform:uppercase;
}

/* /////////////////////////////////////////////////////////////////////// */

.profile_minimal_image {
    background:#FFF linear-gradient(#FFF,#EEE) repeat scroll 0 0;
    border-radius:3px;
    box-shadow:0 0 1px #AAA;
    float:left;
    margin:0 5px 0 0;
    padding:3px;
    position:relative;
    left:10px;
    bottom:8px;
    width:30px;
}

.profile_minimal_image > .profile_minimal_info {
    background:white none repeat scroll 0 0;
    border-radius:3px;
    box-shadow:1px 2px 10px #666;
    left:0;
    min-width:310px;
    opacity:0;
    padding:0;
    position:absolute;
    top:54px;
    transition:all 0.2s ease-in-out 0s;
    visibility:collapse;
    z-index:100;
}

.profile_minimal_image > .profile_minimal_info.open {
    opacity:1;
    visibility:visible;
}

.profile_minimal_image > .img_scale {
    border-radius:3px;
    cursor:pointer;
}


.profile_minimal_info .media {
    border-bottom:1px solid #EEE;
    border-radius:3px 3px 0 0;
    box-shadow:none;
    margin:0;
}

.profile_minimal_info > ul {
    max-height:200px;
    overflow:auto;
    padding:0;
}

.profile_minimal_info .box {
    padding:0;
}

.profile_minimal_info .profile_images > img {
    border-radius:3px 3px 0 0;
}

.menu_banner .sprite_icon {
    padding:1px;
}

.menu_banner a {
    text-decoration:none;
}

.menu_banner select {
    margin:1em;
    padding:2px;
}

/* skins/family/css/profile_sidebar_nav.css */


/* ============================================================
   Family Skin — Profile Left Sidebar Navigation
   Vertical nav list + collapsible accordion,each independently
   hideable via toggle buttons (state persisted in localStorage).
   ============================================================ */

/* ----------------------------------------------------------
   Section wrapper — shared by both nav sections
   ---------------------------------------------------------- */

.family-sidebar-nav-section {
    border-top:1px solid #eee;
}

.family-sidebar-nav-section:first-child {
    border-top:none;
}

/* Head row:icon + label + toggle button in one flex row */
.family-sidebar-nav-head .wrap {
    display:flex;
    align-items:center;
    gap:6px;
}

.family-sidebar-nav-head .family-sidebar-nav-label {
    flex:1;
    min-width:0;
}

/* Toggle button (collapse / expand) */
.family-sidebar-nav-toggle-btn {
    background:none;
    border:none;
    cursor:pointer;
    padding:3px 5px;
    color:#888;
    border-radius:3px;
    line-height:1;
    flex-shrink:0;
    transition:background 0.15s,transform 0.2s;
}

.family-sidebar-nav-toggle-btn:hover {
    background:rgba(0,0,0,0.08);
    color:#444;
}

.family-sidebar-nav-toggle-btn.fsn-toggled {
    transform:rotate(-90deg);
}

/* Hidden body */
.family-sidebar-nav-body.fsn-collapsed {
    display:none;
}

/* ----------------------------------------------------------
   Section 1 — Simple Vertical Nav List
   ---------------------------------------------------------- */

.family-sidebar-nav-list {
    list-style:none;
    margin:0;
    padding:0 0 8px;
}

.family-sidebar-nav-list li {
    border-bottom:1px solid #f2f2f2;
}

.family-sidebar-nav-list li:last-child {
    border-bottom:none;
}

.family-sidebar-nav-list li a {
    display:block;
    padding:9px 14px;
    color:#555;
    text-decoration:none;
    font-size:13px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    transition:background 0.12s,color 0.12s;
}

.family-sidebar-nav-list li a:hover {
    background:#f5f7fb;
    color:#0064a0;
}

.family-sidebar-nav-list li.active > a {
    color:#0064a0;
    font-weight:600;
    background:#eef3fa;
}

/* ----------------------------------------------------------
   Section 2 — Accordion (native <details>/<summary>)
   ---------------------------------------------------------- */

.family-sidebar-accordion {
    padding:0 0 8px;
}

.family-sidebar-accordion-item {
    border-bottom:1px solid #f2f2f2;
}

.family-sidebar-accordion-item:last-child {
    border-bottom:none;
}

/* Hide the native triangle marker */
.family-sidebar-accordion-summary {
    cursor:pointer;
    padding:9px 14px;
    font-size:13px;
    color:#555;
    list-style:none;
    display:flex;
    align-items:center;
    gap:7px;
    user-select:none;
    transition:background 0.12s,color 0.12s;
}

.family-sidebar-accordion-summary::-webkit-details-marker {
    display:none;
}

/* Rotating chevron */
.family-sidebar-accordion-summary::before {
    content:'▶';
    font-size:8px;
    color:#bbb;
    flex-shrink:0;
    transition:transform 0.18s;
    display:inline-block;
}

details[open] > .family-sidebar-accordion-summary::before {
    transform:rotate(90deg);
}

.family-sidebar-accordion-summary:hover {
    background:#f5f7fb;
    color:#0064a0;
}

details[open] > .family-sidebar-accordion-summary {
    color:#0064a0;
    font-weight:600;
}

/* Panel content inside each <details> */
.family-sidebar-accordion-panel {
    padding:2px 14px 8px 24px;
}

.family-sidebar-accordion-link {
    display:block;
    padding:6px 0;
    color:#0064a0;
    text-decoration:none;
    font-size:12px;
    border-bottom:1px solid #f2f2f2;
}

.family-sidebar-accordion-link:last-child {
    border-bottom:none;
}

.family-sidebar-accordion-link:hover {
    text-decoration:underline;
}

/* Active module accordion panel */
.family-sidebar-accordion-item.active details > .family-sidebar-accordion-summary {
    color:#0064a0;
    font-weight:600;
}

/* Suite group:outer label + nested module accordions */
.family-sidebar-accordion-item--suite > details > .family-sidebar-accordion-panel--suite {
    padding-left:12px;
    padding-top:4px;
}

.family-sidebar-accordion-nested {
    border-bottom:1px solid #f0f0f0;
    margin-bottom:4px;
}

.family-sidebar-accordion-nested:last-child {
    border-bottom:none;
    margin-bottom:0;
}

.family-sidebar-accordion-summary--nested {
    padding:7px 10px 7px 18px;
    font-size:12px;
}

.family-sidebar-accordion-panel--nested {
    padding:0 10px 6px 22px;
}

.family-sidebar-accordion--actions .family-sidebar-accordion-link {
    font-size:12px;
    padding:5px 0;
}

/* ----------------------------------------------------------
   FSN (Flat Sidebar Nav) — direct-link module tree
   Replaces the <details>/<summary> accordion in
   profile_menu_sidebar_accordion.tpl
   ---------------------------------------------------------- */

.fsn-nav {
    padding:0 0 8px;
}

/* Single module row */
.fsn-item {
    border-bottom:1px solid #f2f2f2;
    display:flex;
    flex-direction:column;
}

.fsn-item:last-child {
    border-bottom:none;
}

/* Tab + toggle button in one row */
.fsn-item__row {
    display:flex;
    align-items:center;
}

/* Module tab link */
.fsn-item__tab {
    display:block;
    flex:1;
    min-width:0;
    padding:9px 14px;
    color:#555;
    text-decoration:none;
    font-size:13px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    transition:background 0.12s,color 0.12s;
}

.fsn-item__tab:hover {
    background:#f5f7fb;
    color:#0064a0;
}

/* Active module */
.fsn-item--active > .fsn-item__row > .fsn-item__tab {
    color:#0064a0;
    font-weight:600;
    background:#eef3fa;
    border-left:3px solid #0064a0;
    padding-left:11px;
}

/* + toggle button (shows/hides the actions dropdown) */
.fsn-item__toggle {
    flex-shrink:0;
    background:none;
    border:none;
    cursor:pointer;
    font-size:14px;
    line-height:1;
    padding:6px 10px;
    color:#aaa;
    border-radius:3px;
    transition:color 0.12s,background 0.12s,transform 0.18s;
}

.fsn-item__toggle:hover {
    background:#f0f4fb;
    color:#0064a0;
}

.fsn-item--open > .fsn-item__row > .fsn-item__toggle {
    color:#0064a0;
    transform:rotate(45deg);
}

/* Actions dropdown (hidden until toggled) */
.fsn-item__actions {
    padding:2px 10px 8px 18px;
    display:flex;
    flex-direction:column;
    gap:2px;
}

/* [hidden] attribute hides the panel */
.fsn-item__actions[hidden] {
    display:none;
}

.fsn-item__action-link {
    display:block;
    padding:5px 6px;
    font-size:12px;
    color:#0064a0;
    text-decoration:none;
    border-radius:3px;
    transition:background 0.1s;
}

.fsn-item__action-link:hover {
    background:#f0f4fb;
    text-decoration:none;
}

/* Suite container */
.fsn-suite {
    border-bottom:1px solid #f2f2f2;
}

.fsn-suite:last-child {
    border-bottom:none;
}

/* Suite fallback label (shown when no main module detected) */
.fsn-suite__label {
    padding:8px 14px 3px;
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:#999;
}

.fsn-suite--active > .fsn-suite__label {
    color:#0064a0;
}

/* Main module row:no bottom border (children follow immediately) */
.fsn-suite__main.fsn-item {
    border-bottom:none;
}

/* Children indented under the main module tab */
.fsn-suite__children {
    padding-left:10px;
    border-left:2px solid #e8ecf4;
    margin:0 0 6px 14px;
}

.fsn-suite__child.fsn-item {
    border-bottom:1px solid #f5f5f5;
}

.fsn-suite__child.fsn-item:last-child {
    border-bottom:none;
}

.fsn-suite__child .fsn-item__tab {
    padding:7px 10px;
    font-size:12px;
}

.fsn-suite__child .fsn-item__action-link {
    font-size:11px;
}


/* skins/family/css/timeline.css */


.timeline_wrap {
    padding:2px 10px;
}

.action_item_title {
    font-size:16px;
    display:block;
}

.action_item_desc a {
    color:#999;
}

.action_item_holder {
    border-bottom:1px solid #FFF;
}

.action_feedback > ul {
    margin:0;
    padding:0;
}

.action_submit a {
    background-size:contain;
    display:block;
    height:25px;
    width:25px;
}

.textArea {
    position:relative;
}

.action_user_name > a,.at_link {
    color:#58C;
    font-weight:bold;
}

.action_time {
    color:#B2BCBC;
}

.action_comments .textArea textarea {
    background:#666 none repeat scroll 0 0;
    border:medium none;
    color:#FFF;
    font-family:sans-serif;
    font-size:14px;
    height:20px;
    margin:0;
    padding:5px;
    width:95%;
}

div#action_image {
    float:left;
    margin:5px;
    padding:5px;
}

#action_update {
    font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:1px solid transparent;
    border-radius:3px;
    color:#444;
    margin:0 2px;
    min-height:30px;
    padding:5px;
    text-decoration:none;
    width:95%;
}

#action_update:focus {
    border:1px solid rgba(255,204,51,0.4);
}

.action .action_feedback .action_comments {
    margin:0;
}

#quick_action_default_form .form_editor_holder {
    padding:5px 0;
}

#quick_action_default_form .form_editor_holder textarea {
    height:100px;
}

.action_text p {
    padding:0;
    margin:0;
}

.share_wrap {
    padding:10px 10px 0;
}

.action .item_media .col12.last > p:first-child,.action .item_media .col12.last .wrap > p:first-child {
    margin-top:0;
}

.action .p10 > p {
    margin-bottom:0;
}

.item_media .wrap {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
}


.action_item_detail.action_text {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    box-shadow:none;
    padding:1em 0 0;
}

.action_title {
    font-size:20px;
    font-weight:lighter;
}

.detail_section .item .like_button_box,.detail_section .item .dislike_button_box {
    padding:10px 25px;
}

#action_text_counter {
    border-radius:50%;
    bottom:auto;
    display:block;
    float:right;
    font-size:12px;
    font-style:normal;
    font-weight:bold;
    height:27px;
    left:auto;
    line-height:2.25;
    margin:5px 1em 0 0;
    padding:0;
    position:static;
    text-align:center;
    width:27px;
}

#action_text_counter.action_warning {
    background:rgba(255,150,0,1) none repeat scroll 0 0;
    color:white;
}

#action_text_counter.action_exceeded {
    background:#C33 none repeat scroll 0 0;
    color:white;
}

.action_buttons .profile_button.form_button {
    color:#666;
    font-weight:bold;
    height:auto !important;
    padding:11px;
}

.action .action_comments {
    background:#FFF none repeat scroll 0 0;
}

.action .action_comments textarea {
    background:white none repeat scroll 0 0;
    color:#666;
}

/* Action detail modal sizing — outer SimpleModal handles scroll when content is tall */
#scroller {
    max-height:none;
    overflow-y:visible;
    overflow-x:hidden;
}

/* SimpleModal shell + scroll:modules/amCore/css/amCore.simplemodal.css */

/* Comment wrap inside modal */
#comment_wrap {
    border-top:1px solid var(--am-border-subtle,#e5e7eb);
    padding-top:8px;
}

.amComment-comment-form textarea {
    width:100%;
    box-sizing:border-box;
}

/* Comment list expands with content; .simplemodal-container scrolls if the dialog exceeds the viewport */
.modal-comment-list {
    max-height:none;
    overflow-x:hidden;
    overflow-y:visible;
    margin-top:8px;
    border-top:1px solid var(--am-border-subtle,#e5e7eb);
    padding-top:4px;
}

/* Like + dislike buttons side by side inside the modal title bar */
.action_wrap .title > div,
.comment_panel .title > div {
    display:flex;
    align-items:center;
    gap:4px;
    flex-wrap:wrap;
}

.action_wrap .title .like_button_box,
.action_wrap .title .dislike_button_box,
.comment_panel .title .like_button_box,
.comment_panel .title .dislike_button_box {
    display:inline-flex;
    align-items:center;
    gap:4px;
    margin:0;
    flex-shrink:0;
}

/* Keep the comment count on the right without pushing buttons to a new line */
.action_wrap .title > div > div[style*="float"],
.comment_panel .title > div > div[style*="float"] {
    margin-left:auto;
    float:none !important;
}

/* Who To Follow — horizontal card row in the main timeline column */
.who-to-follow-list {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    padding:4px 0;
}

.who-to-follow-card {
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    flex:1 1 0;
    min-width:80px;
    max-width:120px;
}

.who-to-follow-avatar {
    width:64px !important;
    height:64px !important;
    border-radius:50%;
    object-fit:cover;
    margin-bottom:6px;
}

.who-to-follow-name {
    font-size:12px;
    margin-bottom:6px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:100%;
}

.who-to-follow-btn .amFollower-button-wrap input,
.who-to-follow-btn a {
    font-size:11px;
    padding:3px 8px;
}

/* Timeline composer — quick-share toolbar + icon save */
.family-composer-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:var(--am-space-2,8px);
    padding:var(--am-space-2,8px) var(--am-space-3,12px) 0;
}

.family-composer-toolbar__tabs {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    flex:1 1 auto;
    min-width:0;
    float:none;
    overflow:visible;
    margin:0;
    padding:0;
    border:0;
}

.family-composer-toolbar__tabs .quick_action_tab {
    float:none;
    margin:0 var(--am-space-1,4px) 0 0;
}

.family-composer-tab-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    color:var(--am-primary,#0064a0);
}

.family-composer-tab-icon svg {
    display:block;
}

.family-composer-tab-icon--youtube svg path:first-child {
    fill:var(--am-danger,#dc2626);
}

.family-composer-toolbar__label {
    flex:1 1 auto;
    min-width:0;
    font-size:var(--am-font-sm,0.875rem);
    font-weight:600;
    color:var(--am-text-secondary,#64748b);
}

.family-composer-toolbar__actions {
    display:inline-flex;
    align-items:center;
    gap:var(--am-space-2,8px);
    flex:0 0 auto;
    margin-left:auto;
}

.family-composer-submit {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:44px;
    min-height:44px;
    padding:var(--am-space-2,8px);
    border:1px solid var(--am-border-default,rgba(148,163,184,0.35));
    border-radius:var(--am-radius-md,6px);
    background:var(--am-primary,#0064a0);
    color:var(--am-text-on-primary,#fff);
    cursor:pointer;
    line-height:0;
}

.family-composer-submit:hover,
.family-composer-submit:focus-visible {
    background:var(--am-primary-hover,#005286);
    border-color:var(--am-primary-hover,#005286);
}

.family-composer-submit.form_button_disabled,
.family-composer-submit:disabled {
    opacity:0.55;
    cursor:not-allowed;
}

.family-composer-submit .sprite_icon {
    background:transparent;
    border:0;
    margin:0;
    padding:0;
}

.family-composer-footer {
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:var(--am-space-1,4px) var(--am-space-3,12px) var(--am-space-2,8px);
}

#quick_action_box #quick_action_default_form .form_textarea {
    margin-top:var(--am-space-2,8px);
}



/* skins/family/css/index_sidebar_ap.css */


/**
 * jrAudioPro2-inspired sidebar widgets on family index (followers / ratings / liked items).
 * Scoped under .family-ap-widget so family timeline “box” styles stay untouched elsewhere.
 */
.family-ap-widget .media {
    padding:0;
}

.family-ap-widget__inner {
    padding:1.25em 1em 0.75em;
}

.family-ap-widget__head {
    display:flex;
    align-items:center;
    gap:0.5rem;
    font-size:0.9375rem;
    font-weight:600;
    letter-spacing:0.04em;
    text-transform:uppercase;
    color:var(--jr-text-secondary);
    padding:0 0 0.75rem;
    border-bottom:none;
    margin-bottom:0.75rem;
}

.family-ap-widget__head .sprite_icon {
    flex-shrink:0;
    filter:brightness(0);
}

/* Sidebar widgets:black sprite icons,no icon chrome (overrides profile.css .sprite_icon) */
.family-sidebar-content .family-ap-widget .sprite_icon,
.family-sidebar-content .family-ap-featured-faces .sprite_icon {
    border:none;
    background:transparent;
    box-shadow:none;
    filter:brightness(0);
}

.family-ap-widget__body {
    margin:0;
    padding:0 0 0.5rem;
}

/* Avatar strip — jrAudioPro2 profile_follower_list overlap */
.family-ap-followers {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:0 0 6px;
    margin:0 -4px;
}

.family-ap-followers a:not(:first-child) {
    margin-left:-10px;
}

.family-ap-followers .img_shadow,
.family-ap-followers img {
    border-radius:50%;
    background:var(--jr-bg-surface);
    padding:2px;
    box-shadow:var(--jr-shadow-sm);
}

.family-ap-widget__row {
    padding:0.5rem 0;
    border-bottom:1px solid var(--jr-border);
    font-size:0.9375rem;
    line-height:1.35;
}

.family-ap-widget__row:last-child {
    border-bottom:none;
}

.family-ap-widget__row a {
    color:var(--jr-link);
    font-weight:500;
}

.family-ap-widget__row a:hover {
    color:var(--jr-link-hover);
}

.family-ap-widget__meta {
    margin-top:0.25rem;
    font-size:0.8125rem;
    color:var(--jr-text-muted);
}

.family-ap-widget__meta a {
    font-weight:400;
    color:var(--jr-text-muted);
}

.family-ap-widget__footer {
    margin-top:0.65rem;
    padding-top:0.5rem;
    border-top:none;
    font-size:0.8125rem;
}

.family-ap-widget__footer a {
    color:var(--jr-accent);
    font-weight:600;
}

.family-ap-widget__empty {
    margin:0;
    font-size:0.875rem;
    color:var(--jr-text-muted);
}

/* Profile right sidebar — 4-column square (4:4) thumb grid */
.family-ap-featured-faces.item_media {
    box-shadow:none;
    padding:0;
    background:transparent;
}

.family-ap-featured-faces {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;
    width:100%;
    margin:0;
    padding:0;
}

.family-ap-featured-faces__link {
    position:relative;
    display:block;
    min-width:0;
    box-sizing:border-box;
    line-height:0;
    text-decoration:none;
    outline:none;
}

.family-ap-featured-faces__link:focus-visible {
    z-index:6;
}

.family-ap-featured-faces__link:focus-visible .family-ap-featured-faces__thumb {
    outline:2px solid var(--am-primary,var(--jr-accent));
    outline-offset:2px;
}

.family-ap-featured-faces__thumb {
    display:grid;
    place-items:stretch;
    position:relative;
    width:100%;
    aspect-ratio:4 / 4;
    overflow:hidden;
    border-radius:var(--am-radius-md,8px);
    background:var(--am-bg-sunken,var(--jr-bg-sunken));
    border:none;
    box-shadow:none;
    transition:transform var(--am-duration-fast,120ms) ease;
}

.family-ap-featured-faces__link:hover .family-ap-featured-faces__thumb,
.family-ap-featured-faces__link:focus-visible .family-ap-featured-faces__thumb {
    transform:translateY(-1px);
    box-shadow:none;
}

.family-ap-featured-faces__thumb > a {
    display:block;
    width:100%;
    height:100%;
    min-width:0;
    min-height:0;
}

.family-ap-featured-faces__img,
.family-ap-featured-faces__thumb img,
.family-ap-featured-faces__thumb .img_scale {
    display:block;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    margin:0;
    border-radius:0;
    object-fit:cover;
}

.family-ap-featured-faces__placeholder {
    width:100%;
    height:100%;
    min-height:0;
}

/* Tooltip card (title + optional subtitle via data-am-tooltip-sub) */
.family-ap-featured-faces__link[data-am-tooltip]::after {
    content:attr(data-am-tooltip);
    white-space:normal;
    pointer-events:none;
    visibility:hidden;
    opacity:0;
    position:absolute;
    left:50%;
    bottom:calc(100% + 10px);
    transform:translateX(-50%) translateY(6px) scale(0.98);
    z-index:var(--am-z-tooltip,2000);
    box-sizing:border-box;
    width:max-content;
    max-width:min(14rem,calc(100vw - var(--am-space-8,2rem)));
    padding:var(--am-space-2,0.5rem) var(--am-space-3,0.75rem);
    border-radius:var(--am-radius-md,8px);
    border:1px solid var(--am-border-default,var(--jr-border));
    background:var(--am-bg-elevated,var(--jr-bg-surface));
    color:var(--am-text-primary,var(--jr-text-primary));
    box-shadow:var(--am-shadow-lg,0 8px 24px rgba(15,23,42,0.18));
    font-size:var(--am-font-sm-rem,0.8125rem);
    font-weight:var(--am-font-weight-semibold,600);
    line-height:1.35;
    text-align:center;
    overflow-wrap:anywhere;
    transition:
        opacity var(--am-duration-fast,150ms) ease,
        visibility var(--am-duration-fast,150ms) ease,
        transform var(--am-duration-fast,150ms) ease;
}

.family-ap-featured-faces__link[data-am-tooltip-sub]::after {
    content:attr(data-am-tooltip) "\A" attr(data-am-tooltip-sub);
    white-space:pre-line;
    font-weight:var(--am-font-weight-normal,400);
    font-size:0.75rem;
    color:var(--am-text-secondary,var(--jr-text-muted));
    line-height:1.45;
}

.family-ap-featured-faces__link[data-am-tooltip-sub]::after::first-line {
    font-weight:var(--am-font-weight-semibold,600);
    font-size:var(--am-font-sm-rem,0.8125rem);
    color:var(--am-text-primary,var(--jr-text-primary));
}

.family-ap-featured-faces__link[data-am-tooltip]::before {
    content:"";
    pointer-events:none;
    visibility:hidden;
    opacity:0;
    position:absolute;
    left:50%;
    bottom:calc(100% + 4px);
    transform:translateX(-50%) translateY(6px);
    z-index:calc(var(--am-z-tooltip,2000) + 1);
    border:6px solid transparent;
    border-top-color:var(--am-bg-elevated,var(--jr-bg-surface));
    filter:drop-shadow(0 -1px 0 var(--am-border-default,var(--jr-border)));
    transition:
        opacity var(--am-duration-fast,150ms) ease,
        visibility var(--am-duration-fast,150ms) ease,
        transform var(--am-duration-fast,150ms) ease;
}

@media (prefers-reduced-motion:reduce) {
    .family-ap-featured-faces__link[data-am-tooltip]::after,
    .family-ap-featured-faces__link[data-am-tooltip]::before,
    .family-ap-featured-faces__thumb {
        transition:none;
    }
}

.family-ap-featured-faces__link[data-am-tooltip]:hover,
.family-ap-featured-faces__link[data-am-tooltip]:focus-visible {
    z-index:8;
}

.family-ap-featured-faces__link[data-am-tooltip]:hover::after,
.family-ap-featured-faces__link[data-am-tooltip]:focus-visible::after,
.family-ap-featured-faces__link[data-am-tooltip]:hover::before,
.family-ap-featured-faces__link[data-am-tooltip]:focus-visible::before {
    visibility:visible;
    opacity:1;
    transform:translateX(-50%) translateY(0) scale(1);
}



/* skins/family/css/index_who_to_follow_center.css */


/**
 * Center-column “Who to follow” — grid cards in a paged carousel.
 */
.family-wtf-center {
    margin-bottom:var(--am-space-3,12px);
}

.family-wtf-center__head {
    display:flex;
    align-items:center;
    gap:var(--am-space-2,8px);
    padding:var(--am-space-2,8px) 0;
    font-size:var(--am-font-sm-rem,0.8125rem);
    font-weight:var(--am-font-weight-semibold,600);
    color:var(--am-text-secondary,var(--jr-text-secondary,#64748b));
    text-transform:uppercase;
    letter-spacing:0.04em;
}

.family-wtf-center__title {
    line-height:1.2;
}

.family-wtf-center .family-wtf-carousel {
    --wtf-cols:5;
    --wtf-gap:var(--am-space-2,8px);
    position:relative;
    padding:0 var(--am-space-7,28px);
}

.family-wtf-center .family-wtf-carousel__viewport {
    overflow-x:hidden;
    overflow-y:visible;
    width:100%;
}

.family-wtf-center .family-wtf-carousel__track,
.family-wtf-center .family-wtf-carousel__pages,
.family-wtf-center .family-wtf-carousel__page {
    overflow:visible;
}

.family-wtf-center .family-wtf-carousel__track {
    width:100%;
}

.family-wtf-center .family-wtf-carousel__pages {
    display:flex;
    flex-wrap:nowrap;
    width:100%;
    transition:transform 0.45s ease;
    will-change:transform;
}

.family-wtf-center .family-wtf-carousel__page {
    flex:0 0 100%;
    width:100%;
    display:grid;
    grid-template-columns:repeat(var(--wtf-cols,5),minmax(0,1fr));
    align-items:stretch;
    gap:var(--wtf-gap);
    box-sizing:border-box;
    padding:var(--am-space-1,4px) 0;
}

.family-wtf-center .family-wtf-carousel__track .list_item {
    margin:0 !important;
    min-width:0;
    width:100%;
    border:0;
    border-bottom:0;
    display:flex;
    align-self:stretch;
}

/* Vertical grid card */
.family-wtf-card {
    width:100%;
    min-width:0;
    display:flex;
    flex:1 1 auto;
    align-self:stretch;
}

.family-wtf-card__inner {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:var(--am-space-2,8px);
    flex:1 1 auto;
    width:100%;
    min-width:0;
    padding:var(--am-space-3,12px) var(--am-space-2,8px);
    border:1px solid var(--am-border-subtle,rgba(148,163,184,0.25));
    border-radius:var(--am-radius-md,8px);
    background:var(--am-bg-elevated,var(--jr-surface,#fff));
    box-sizing:border-box;
    text-align:center;
    overflow:visible;
}

.family-wtf-card__avatar {
    display:block;
    line-height:0;
}

.family-wtf-card__avatar img,
.family-wtf-card__avatar .img_scale {
    display:block;
    width:var(--am-space-12,48px);
    max-width:var(--am-space-12,48px);
    height:var(--am-space-12,48px);
    border-radius:50%;
    object-fit:cover;
    flex-shrink:0;
}

.family-wtf-card__name {
    width:100%;
    font-size:var(--am-font-sm-rem,0.8125rem);
    font-weight:var(--am-font-weight-medium,500);
    color:var(--am-text-primary,var(--jr-text,#0f172a));
    text-decoration:none;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.family-wtf-card__name:hover {
    color:var(--am-primary,var(--jr-primary,#2563eb));
    text-decoration:none;
}

.family-wtf-card__action {
    margin-top:auto;
    padding-top:var(--am-space-1,4px);
    flex-shrink:0;
}

/* Icon-only follow controls (inputs stay for amFollower AJAX) */
.family-wtf-center .amFollower-button-wrap {
    position:relative;
    flex-shrink:0;
    width:var(--am-space-8,32px);
    height:var(--am-space-8,32px);
    margin:0 auto;
    border:1px solid var(--am-border-strong,rgba(148,163,184,0.45));
    border-radius:50%;
    background:var(--am-primary-light,rgba(37,99,235,0.1));
    box-sizing:border-box;
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-unfollow-btn) {
    background:var(--am-success-bg,rgba(34,197,94,0.12));
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-pending-btn) {
    background:var(--am-info-bg,rgba(59,130,246,0.12));
}

.family-wtf-center .amFollower-button-wrap::before {
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:var(--am-font-lg-rem,1.125rem);
    font-weight:var(--am-font-weight-bold,700);
    line-height:1;
    pointer-events:none;
    color:var(--am-primary,var(--jr-primary,#2563eb));
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-follow-btn)::before {
    content:'+';
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-unfollow-btn)::before {
    content:'\2713';
    font-size:var(--am-font-md-rem,1rem);
    color:var(--am-success-text,var(--am-text-primary,#0f172a));
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-pending-btn)::before {
    content:'\2026';
    font-size:var(--am-font-xl-rem,1.25rem);
    letter-spacing:-0.05em;
    color:var(--am-text-secondary,var(--jr-text-secondary,#64748b));
}

.family-wtf-center .amFollower-button-wrap input.profile_button {
    position:absolute;
    inset:0;
    opacity:0;
    width:100%;
    height:100%;
    min-height:0;
    max-height:none;
    margin:0;
    padding:0;
    border:0;
    overflow:hidden;
    font-size:0;
    line-height:0;
    cursor:pointer;
}

.family-wtf-center .amFollower-button-wrap:has(.amFollower-pending-btn) input.profile_button {
    cursor:default;
}

.family-wtf-center .family-wtf-carousel--scrollable .family-wtf-carousel__nav:not(:disabled) {
    opacity:0;
    pointer-events:none;
}

.family-wtf-center .family-wtf-carousel--scrollable:hover .family-wtf-carousel__nav:not(:disabled),
.family-wtf-center .family-wtf-carousel--scrollable:focus-within .family-wtf-carousel__nav:not(:disabled) {
    opacity:1;
    pointer-events:auto;
}

.family-wtf-center .family-wtf-carousel__nav {
    position:absolute;
    top:42%;
    transform:translateY(-50%);
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:var(--am-space-7,28px);
    height:var(--am-space-7,28px);
    padding:0;
    border:1px solid var(--am-border-subtle,var(--am-bg-border,#ddd));
    border-radius:50%;
    background:var(--am-bg-elevated,#fff);
    color:var(--am-text-primary,#222);
    cursor:pointer;
    box-shadow:var(--am-shadow-sm,0 1px 3px rgba(0,0,0,0.08));
    transition:background 0.15s ease,border-color 0.15s ease,opacity 0.15s ease;
}

.family-wtf-center .family-wtf-carousel__nav:hover:not(:disabled) {
    background:var(--am-bg-sunken,#f5f5f5);
    border-color:var(--am-accent,var(--jr-accent,#0064a0));
    color:var(--am-accent,var(--jr-accent,#0064a0));
}

.family-wtf-center .family-wtf-carousel__nav:focus-visible {
    outline:2px solid var(--am-accent,var(--jr-accent,#0064a0));
    outline-offset:2px;
}

.family-wtf-center .family-wtf-carousel__nav:disabled {
    opacity:0.35;
    cursor:default;
    pointer-events:none;
}

.family-wtf-center .family-wtf-carousel__prev {
    left:0;
}

.family-wtf-center .family-wtf-carousel__next {
    right:0;
}

.family-wtf-center .family-wtf-carousel__nav-icon {
    display:block;
    font-size:var(--am-font-lg-rem,1.125rem);
    line-height:1;
    font-weight:700;
    margin-top:-1px;
}

.family-wtf-center .family-wtf-carousel:not(.family-wtf-carousel--scrollable) .family-wtf-carousel__nav {
    display:none;
}

.family-wtf-center .family-wtf-carousel:not(.family-wtf-carousel--scrollable) {
    padding-inline:0;
}

@media screen and (max-width:767px) {
    .family-wtf-center .family-wtf-carousel {
        padding-inline:2px;
        --wtf-gap:var(--am-space-1,4px);
    }

    .family-wtf-center .family-wtf-carousel:not(.family-wtf-carousel--scrollable) {
        padding-inline:0;
    }
}

@media (prefers-reduced-motion:reduce) {
    .family-wtf-center .family-wtf-carousel__pages {
        transition:none;
    }
}


/* skins/family/css/skin.css */


section {
    position:relative;
    color:#666;
}

.pad {
    padding:0 2em;
    position:relative;
}

.actions > ul {
    height:34px;
    margin:0;
    padding:0;
}

#header ul {
    margin:0;
    padding:0;
}

.index_features ul {
    margin:0;
    padding:0;
}

.feature_list {
    margin:0;
    padding:0;
}

.family_player ul {
    margin:0;
    padding:0;
}

ul.page_tab_bar {
    margin:0;
}

.profile_info ul {
    margin:0;
    padding:0;
}

.loader {
    vertical-align:top;
}

#tag_submit_indicator {
    margin-bottom:6px;
}

.block_search {
    margin:0 10px 0 0;
    text-align:right;
    white-space:nowrap;
}

#content .box .media .block_search .form_text {
    margin:0;
    width:auto;
}

span.title {
    font-size:16px;
}

#horizontal .hideshow > a:first-child {
    border-right:medium none;
}

.CodeMirror {
    background:#0F1418 none repeat scroll 0 0;
    color:white;
}

.shadow {
    box-shadow:1px 1px 10px #000;
}

h2 {
    font-size:18px;
}

.p5 {
    padding:5px;
}

.p10 {
    padding:10px;
}

.p20 {
    padding:20px;
}

.p5 > h2 {
    margin:0;
}

.p5 h3 {
    margin:0 0 5px;
}

h3 {
    text-align:left;
}

.footer {
    background:#222 none repeat scroll 0 0;
    counter-reset:black;
    min-height:180px;
    width:100%;
}

.widget-item .action {
    background:#FFF;
    padding:1em;
    margin-bottom:1em;
}

.widget-item .action_feedback {
    box-shadow:0 0 2px #BBB;
}

.widget-item .action_feedback .item {
    padding-top:10px;
}

.widget-item-widget_gallery .col3 {
    padding:1px;
    width:24.2%;
}

.image_stack2 {
    left:42px !important;
}

.image_stack1 {
    left:21px !important;
}

.button_player a.jp-play,.button_player a.jp-pause {
    display:none;
}

.box > span {
    color:#444;
    float:none;
    font-size:18px;
    left:45px;
    position:absolute;
    text-transform:capitalize;
    top:7px;
}

.box .block_search .form_text {
    width:77%;
}

.bundle_box {
    background-color:#333;
    background-image:linear-gradient(rgba(0,0,0,0.1),rgba(0,0,0,0.6));
    border:medium none;
    box-shadow:1px 0 5px 3px #000;
}

.index {
    position:relative;
    min-height:793px;
    padding:40px 1em 1em;
}

.social h2 {
    color:white;
    font-size:14px;
    font-weight:100;
    letter-spacing:8px;
    text-align:center;
    text-transform:uppercase;
}

.social > li {
    display:inline-block;
    list-style:outside none none;
    width:15%;
}

.social li a {
    background:#666 none repeat scroll 0 0;
    display:block;
    height:50px;
    margin:auto;
    width:50px;
}

.social {
    padding:1em 0;
}

ul.social {
    display:block;
    margin:1em auto;
    min-width:320px;
    width:50%;
}

.social li a.social-facebook {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/social-facebook.png") no-repeat scroll 0 0;
}

.social li a.social-twitter {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/social-twitter.png") no-repeat scroll 0 0;
}

.social li a.social-instagram {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/social-instagram.png") no-repeat scroll 0 0;
}

.social li a.social-linkedin {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/social-linkedin.png") no-repeat scroll 0 0;
}

.social li a.social-youtube {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/social-youtube.png") no-repeat scroll 0 0;
}

.social li a.social-facebook:hover,
.social li a.social-twitter:hover,
.social li a.social-linkedin:hover,
.social li a.social-youtube:hover,
.social li a.social-instagram:hover {
    background-position:0 -50px;
}

.social > div {
    clear:both;
    color:white;
    font-size:11px;
    letter-spacing:4px;
    padding:1em 0 0;
    text-align:center;
    text-transform:uppercase;
}

div.social {
    margin:0 auto 0;
    text-align:center;
}

.down.up > a {
    transform:rotate(180deg);
}

.box .page_nav {
    padding:10px 14px 0;
}

.sb-container-tabs .page_tab_bar_holder {
    border:medium none;
}

.sb-widget-block h1 {
    font-size:20px;
    font-weight:lighter;
}

.sb-container-tabs {
    position:absolute;
    right:5px;
    top:-22px;
    z-index:10;
}

.sb-widget-block .item:first-child {
    margin-top:0;
}

.sb-widget-block .item:last-child {
    margin-bottom:0;
}

.sb-widget-block .list_item:last-child {
    margin-bottom:0;
}

section.login {

}

.index_form .form_text {
    background:white none repeat scroll 0 0;
    border:none;
    border-radius:2px;
    color:#A3A6A9;
    font-size:16px;
    margin:0 0 1em;
    padding:8px 12px;
    width:92%;
}

.index_form .form_text:focus {
    border:none;
}

.index_form {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    border-radius:5px;
    color:#CCC;
    margin:auto;
    max-width:350px;
}

.index_form .wrap {
    padding:20px 25px;
}

.index_features li {
    color:white;
    font-size:20px;
    padding:1em;
}

.index_features li:first-child {
    padding:10px 1em 1em;
}

.index_form a {
    color:white;
    font-weight:bold;
}

.index_form {
    color:#CCC;
}

.row.index_sign_up {
    max-width:840px;
}

.index_sign_up > .wrap {
    padding:12px;
}

.index_form input[type="button"] {
    background:rgba(0,0,0,0) linear-gradient(rgba(100,100,100,0.6),rgba(100,100,100,0.3)) repeat scroll 0 0;
    border:medium none;
    border-radius:4px;
    box-shadow:0 1px 0 rgba(255,255,255,0.1) inset,0 0 0 rgba(0,0,0,0.35),0 2px 4px rgba(0,0,0,0.25);
    color:white;
    font-size:20px;
    height:auto;
    padding:10px;
    text-transform:capitalize;
    width:100%;
}

.index_form input[type="button"]:hover {
    background:rgba(0,0,0,0) linear-gradient(rgba(160,160,160,0.6),rgba(160,160,160,0.3)) repeat scroll 0 0;
}

.index_form input[type="button"].login,.index_form input[type="button"].login:hover {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    font-size:18px;
    text-align:center;
    cursor:pointer;
    text-transform:none;
}

.index_form .form_notice {
    margin:1em 0;
}

.index_form .form_help_button {
    display:none;
}

.index_form .page_content {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border-radius:0;
    box-shadow:none;
    color:inherit;
    margin:0;
    padding:0;
}

.index_form .element_left {
    display:none;
}

.index_form .element_right {
    padding:0;
    width:100%;
}

.index_form .form_submit_section {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    padding:0;
}

.index_form .form_submit_box {
    padding:15px 0 0 0;
}

.index_form select {
    display:none;
}

.index_form iframe {
    height:200px;
    padding-top:10px;
}

.login .action {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    box-shadow:none;
    color:#CCC;
}

.login .action_user_name > a {
    color:#FC9;
}

.login a {
    color:#EEE;
}

.login .media {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
    color:#CCC;
}

.login .action .item {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
}

.login .action_user_image {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
    box-shadow:none;
}

.login .item_media {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
    color:white;
}

.login .action_comment {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    color:white;
}

.login .shared {
    border-bottom:1px solid rgba(255,255,255,0.3);
}

.login span.title {
    color:#FFF;
}

.login .block {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
}

.index_banner {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    height:150px;
}

.welcome {
    background:white url("https://hearnfamily.org/image/img/skin/family/1.jpg") no-repeat fixed center center / cover;
    color:white;
    min-height:720px;
    position:relative;
}

.welcome.img_mobile {
    background:white url("https://hearnfamily.org/image/img/skin/family/1_mobile.jpg") no-repeat fixed center center / cover;
}

.family-login-wordmark-wrap {
    max-width:500px;
}

.family-login-wordmark {
    color:#fff;
    font-size:40px;
    font-weight:300;
    letter-spacing:2px;
    line-height:1.15;
    margin:10px 0 0 20px;
    text-shadow:0 1px 3px rgba(0,0,0,0.35);
}

.welcome h1 {
    font-size:32px;
    font-weight:200;
    letter-spacing:1px;
    margin:10px 0 0 20px;
}

.family-index-signup-prompt {
    margin:16px 0 0;
    padding:0;
    text-align:center;
    font-size:14px;
    color:#ccc;
    line-height:1.5;
}

.family-index-signup-link {
    color:#fff;
    font-weight:700;
    text-decoration:underline;
}

.family-index-signup-link:hover {
    color:#fff;
    text-decoration:none;
}

.welcome .mobile .index_form {
    margin:24px auto 0;
    max-width:350px;
}

.welcome > h2 {
    color:rgba(255,255,255,0.6);
    font-size:18px;
    font-weight:lighter;
    margin:0;
    text-transform:capitalize;
}

.index_image {
    float:left;
    width:50%;
}

.index_image .wrap {
    padding:5px;
}

.login .box {
    margin:1em 0 0;
}

.login .box_body {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    box-shadow:none;
}

.login .list_item .data.clearfix span {
    color:#C3C3C3;
    margin:5px 0 0;
}

.login #gallery_tab > a {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5nmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMwNjcgNzkuMTU3NzQ3LCAyMDE1LzAzLzMwLTIzOjQwOjQyICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE2LTAyLTEyVDExOjQyOjQ5LTA2OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTYtMDMtMjNUMDQ6Mjk6NDctMDU6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE2LTAzLTIzVDA0OjI5OjQ3LTA1OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmU2MTgzYWMzLWNlNjMtZjM0Ny05ZmE4LTYxYzcxMmNiOWVhNTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDowOERGQUU3OUQxQjAxMUU1QkM4MENDMDAzNEZFMDg4NjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDowOERGQUU3NkQxQjAxMUU1QkM4MENDMDAzNEZFMDg4Njwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDowOERGQUU3N0QxQjAxMUU1QkM4MENDMDAzNEZFMDg4Njwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjA4REZBRTc5RDFCMDExRTVCQzgwQ0MwMDM0RkUwODg2PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDplNjE4M2FjMy1jZTYzLWYzNDctOWZhOC02MWM3MTJjYjllYTU8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTYtMDMtMjNUMDQ6Mjk6NDctMDU6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/Pn+jQO8AAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAohJREFUeNrU1kuMzmcUBvDfoG7RcQmljInLuAwqcUmplgjRlcVklhYVVnZWViQSCzskku5qQ0QizXTVRRM2JRGXNBW3cRtMg7iWuE3dpgvPJ+/8jbCxcJKT837v7XnPOc85/6+uu7vbp5Q+PrH0g7a2tur8D6jHBdzA017OjsR0zMN3sbexHF3Q2tr6BqAiX+K3XCAA7TiNSxiPb9GMr4pzXZiMsejo4UFFxmE4jufl07Es2pt0YT9eYU1A3gGYgcVYhIXoix3YhyFoyMFZ0SaMwWgMwk8F4F78jT+wrQZwAF9XXnYr9nFC1I7fi/XBAZmImdFmTMUKfF8CvMBVrMaP2JiEySWbcRY/43XmnyYUHThYAA/J6xtKmrYnLH9mw2vcydoWrMPOMOVD8hjDcLMEOB/E4XHzJu5nbWBx+ItiPCr7qzI4TOosk3wSdZiTkFxJ2CQ89TiFY5mrw684hE0VgFHx4FoJcC52Tvh/ujhwBS2VSzZgSR6zBc/j3YvUidTMW4BOvMyhkUn4+2QptmY8NaSYhH9SoA1Zu1AC3EvFLkH/mnv5vTJ5OIsz2BVC1GQ7GsM8GauxsAbwLHRbWrBqbS77kEyJnRDblGjcqnbT9qImLmNoCvA8Hn0E0KTYyUWt9OhFZypJPBxbo+voxHwWvsm4Ia0C5qeGRiTMjbhbAnQUXF8fhYdFNz0Zr/bgPwxIR52WllEfmqoBlwCdsbvTHZujc7EgWsqThLIGfDiVPha/4GgV4Hr6S326YVfY05SYlvm6jweJ92ysqoAfTaJ7APwbKrb0UlgXA3oEJxKyh3lMY/IxM/kZk329fnAOZsPVtIXjcf9yqrUqd6N/vY9adZ/9v4r/BwDV4Z1QyN0kAgAAAABJRU5ErkJggg==") no-repeat scroll 0 0 / contain;
    display:block;
    height:21px;
    width:21px;
}

.login #album_tab > a {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5nmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMwNjcgNzkuMTU3NzQ3LCAyMDE1LzAzLzMwLTIzOjQwOjQyICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE2LTAzLTIwVDIxOjEwOjI3LTA1OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTYtMDMtMjBUMjE6MTA6MzktMDU6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE2LTAzLTIwVDIxOjEwOjM5LTA1OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjNjYzcwN2UyLWM0OTEtMmY0ZS1iYzg2LTBjMjU1ZGRlZWUyYjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDo1NEEyOUZCQ0NGQTkxMUU1OUFENTgwOTc3OTRDQTNGQzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDo1NEEyOUZCOUNGQTkxMUU1OUFENTgwOTc3OTRDQTNGQzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDo1NEEyOUZCQUNGQTkxMUU1OUFENTgwOTc3OTRDQTNGQzwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjU0QTI5RkJDQ0ZBOTExRTU5QUQ1ODA5Nzc5NENBM0ZDPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozY2M3MDdlMi1jNDkxLTJmNGUtYmM4Ni0wYzI1NWRkZWVlMmI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTYtMDMtMjBUMjE6MTA6MzktMDU6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PmG1nLcAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAx1JREFUeNq0Vk2IllUUfuaZc+/tIkGWVmpFCyWQchFIfxSRZZsiKKRsM5AQlBgoEoFuppi+JCVMmP0sahO1qEUxM86uiEAIFyYMbSJkjBGUJq/3Pfc7X4ve7+NrfN/Rb+GBFy735zz3PPc557xjvV4Pt9IEAGZmZgYTJEESADA+Pn43yZcAPE9yO8mNAGBmywDOmdmCqn4HYKmeh5kNfE1MTPwHsNrMLIQQDorIAQCbV6+T3AxgB8k3RORiKWVaVY8DuHrd3gb/D8YYZ0Wk0+S8we4RkckQwk8Atq4JQPKBGOMPJJ8ZgeZrKaXdAM7FGH8kubUN4LYY45ckHxrlEVNKU6WUuZTSm2Y2H2P8BsC66wBCCO+RfGoU56WUuVLKJ31RqOpnJB8JIXzwPwCSG0Xk8A38LZnZvJnNAbhQi+E0gEISzrl3YozfA4D3/l2S9w5k6px7uS/Blpt+ambHAfwFAN1ud4Nz7qD3/kMAieSTIvL60JE7nXN7AJySOoLdbc6rqjqhqu/3aahtOed8xMzgvT/ZdI7kCwBO9Sna3pIPS6r6UR1Fn9LxegxV7ZjZhRaAbcNvsKElgLPOuSv12IcQZkMICyR9Te0KgF9aAO5oS7Rh6w2XEACu/saa9rTWIjO7RHJTw/oOVb0dwN9mVuWcnwMwZmaFJFR1nYjsbKH3yiACM/utJcxNzrmjACAiANAFUOoxnHOHSN7XArA4HMEcgD2rNsyWUk5776dIZjM7CeBSLdP1IYT9IjLZRo2ZzQ8AVPVb730HwF0AVkopx3LOHTPrArhWS/EtMzsDoOe9fxTA/WtQf1lVvxqO4GJVVZ977ydTSq+Y2cIQTY/Xwy0kt9xMCamqarov34GKcs4nzOysc25fv3mIyNsisneU+mRmv+acO03V9J+U0qskd4UQvhCRx0IIx0Z0/kdKaS+AlcZ+YGa/55yfJvlwjPHnfrLcpPMzOecXzez8mh3NzBZTSk+UUqb6xe0GtlxK+Tjn/CyA842J1qD/q6p6VFWnnXOvkdwFYBvJ9fUlLgNYrJv+1wD+bEMfu9W/Lf8OABmjbG9fBzJPAAAAAElFTkSuQmCC") no-repeat scroll 0 0 / contain;
    display:block;
    height:21px;
    width:21px;
}

.login #channels_tab > a {
    background:rgba(0,0,0,0) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAA5nmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMwNjcgNzkuMTU3NzQ3LCAyMDE1LzAzLzMwLTIzOjQwOjQyICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyI+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE2LTAyLTEwVDE3OjEzOjE1LTA2OjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTYtMDMtMjJUMTY6MDY6MzAtMDU6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE2LTAzLTIyVDE2OjA2OjMwLTA1OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc5ZWRjMDcyLTc0MjAtZjY0Ni04ZWE0LWRhMmRhYTlmYzU2YzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpERDQxQjZEQUQwNEIxMUU1QTlEM0JCQ0I3QTlDMTQwNjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpERDQxQjZEN0QwNEIxMUU1QTlEM0JCQ0I3QTlDMTQwNjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpERDQxQjZEOEQwNEIxMUU1QTlEM0JCQ0I3QTlDMTQwNjwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOkRENDFCNkRBRDA0QjExRTVBOUQzQkJDQjdBOUMxNDA2PC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3OWVkYzA3Mi03NDIwLWY2NDYtOGVhNC1kYTJkYWE5ZmM1NmM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTYtMDMtMjJUMTY6MDY6MzAtMDU6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE1IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT42NTUzNTwvZXhpZjpDb2xvclNwYWNlPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MjQ8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PgIhj5EAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAulJREFUeNq0Vk+LF0cQffOmetpOM3pwCWwg+QriQXIJ3vwCHiRXQ9aAiglJxIt/yB4EUQ9RvBgQD9FDDt5yS06CHyOLXyBoZNLp6f7V5LA9P387mV1WowXDMEzNq3pVr6qnGoYB79MEAJ48+UUAEMAAIL98+dcl7w9eiDH8bK1cEjHV6Ft8KhK575OGkDed81+mFH6y1vxAsgZQAdCTJ09llo+qEqBSVeP9wdNN06x7316MUe/knBSAFp+axFDAb7Zte6VpZN0Y+4UqDhQ8lgucMKpIppTiZs5ZAcB7fz5GvZdzyiQygEXOKcWYb7dt+z0AqCpIXBNhmGJypmyNc/ZRjGFDVRcA4b0/G6Pe7fuUVVPqunzT+/bbsWSq+SsSDwA0sz0o9s/qC2vNgxjDC2vdfZKHvffnu64LgMYxcwAvVPM5Eo/Lc1yBMKsBUgjhU2PsCRGxAEBycI5/56xbJA+Xcl1cTUJVn5P8BMBm6SNyzn1K6Xdr7bNlgL6Pn1vrH5K0OwkSIrtLkOQRAEd2lEQakHI1xrAB4CEBYLHgtTHzd2GkiDHm8pKBc25dVdH3/R/A4kLT2DRSnqqszMHUUs75qEhzK4TuOsA159zp1R4sAKBpZAvgr9uSf8OJFW4BuAFgTVUPAUhTFQFgXcDtCoNhDybjPQL4AEB2zp8pPn/OzMGOzIcZ8GoCjsndhtBtdN2rywDaGQbz9VZNi+0pr6vXEl0oWXOSY65rc6au4ca52ivA8DpQzRVgAFqo1lN/FZGPVVXGvsr+ZMdqZVeVoDrMbJqm6159R/Ijkfb6vgNMsqzGsP9lit45/yNJAdDNqWja6N10P6euAcAgImt7qWiYfDzsA3hMbk51SwbVdgNhAAXJ/k0Hre9jJWLJZeW2MaVsxaG8OAbIU4C7rYrdTEn9kOT8eRBj/M05f4qEBfDZWx3u0uzoZQjd02UAY/BNCF1lrT1O0vyfTaqqOYTuGaBfA0D1vn9b/h0A2gww+ozVJ4YAAAAASUVORK5CYII=") no-repeat scroll 0 0 / contain;
    display:block;
    height:21px;
    width:21px;
}

.login #actions_tab li.solo {
    background:rgba(0,0,0,0.6) none repeat scroll 0 0;
    box-shadow:none;
    padding:7px 8px;
}

.login .list_item .dislike_button_box,.login .list_item .like_button_box {
    min-width:25px;
}

.login .item {
    background:rgba(0,0,0,0.4) none repeat scroll 0 0;
    border:medium none;
    color:#CCC;
}

.login .family_player {
    box-shadow:0 0 2px #000;
}

.login .list_item .action_data {
    font-size:12px;
}

.profile_data span {
    color:#999;
    display:block;
    font-size:10px;
    text-transform:uppercase;
}

.profile_data {
    color:rgba(0,100,160,1);
    font-size:18px;
    margin:30px 0 0;
    padding:10px;
}

.profile_data li {
    cursor:pointer;
    float:left;
    width:33.33%;
    list-style:none;
}

.profile_images .profile_image,.item_media .profile_image {
    background:white none repeat scroll 0 0;
    bottom:0;
    box-shadow:none;
    left:10px;
    padding:3px;
    position:absolute;
    width:72px;
    border-radius:50%;
    transform:translateY(50%);
}

.profile_images {
    position:relative;
}

.profile_name {
    bottom:-42px;
    font-size:12px;
    left:90px;
    position:absolute;
}

.profile_name h1,#content .profile_name h1 {
    display:block;
    margin:0;
}

.profile_image .img_scale {
    border-radius:50%;
}

.trending a {
    color:#933;
    display:block;
    font-weight:bold;
}

.trending span {
    color:#8899A6;
    font-size:13px;
    font-weight:bold;
}

.head {
    border-bottom:1px solid #F6F6F6;
    color:#8899A6;
    font-size:14px;
    font-weight:lighter;
    line-height:1.4;
    padding:0 0 5px;
    text-transform:uppercase;
    height:32px;
}

.hash_link {
    color:#58C;
    font-weight:bold;
}

.side_list .follow {
    font-weight:normal;
    height:auto;
    letter-spacing:1px;
    margin:3px 0 0;
    padding:2px 15px;
}

.side_list a {
    color:#777;
    font-weight:bold;
}

.index_group span {
    font-size:14px;
}

.index_group {
    font-size:12px;
    color:#888;
}

.index_group a {
    display:block;
    margin:0 0 2px;
}

.middle {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:100%;
}

.side_image {
    float:left;
    width:35%;
    margin:0 10px 0 0
}

#site_search .block_search {
    float:none;
    position:static;
    text-align:left;
}

#site_search h3 {
    margin:0;
    white-space:normal;
}

.box #site_search .block_search > input {
    margin:0;
    width:93%;
}

.return_button {
    font-size:18px;
    font-weight:lighter;
    height:auto;
    padding:1em;
    width:100%;
}

.notify {
    background:rgba(180,50,50,0.8) none repeat scroll 0 0;
    border-radius:50%;
    color:white;
    display:none;
    font-size:11px;
    font-weight:bold;
    height:18px;
    left:15px;
    padding:3px 0 0;
    position:absolute;
    text-align:center;
    top:5px;
    width:22px;
    cursor:pointer;
}

.index textarea#action_update,#profile textarea#action_update.form_textarea {
    background:white none repeat scroll 0 0;
    box-shadow:none;
}

#action_form > span#action_networks {
    padding:22px 0 0;
}

#share_modal .action_feedback > .item,
#amaction_share_panel .action_feedback > .item {
    display:none;
}

#share_modal .action,
#amaction_share_panel .action {
    margin:10px 0 0;
}

/* Let share preview grow; SimpleModal .simplemodal-wrap is the only scroll host when needed */
#share_modal_box .action,
#amaction_share_modal_box .action {
    max-height:none;
    overflow:visible;
}

#share_modal,
#amaction_share_panel {
    height:auto;
}

.action .profile_data li {
    cursor:pointer;
    float:left;
    width:25%;
    list-style:none;
}

.item_media_desc h2 {
    font-size:18px;
    font-weight:lighter;
    margin:0 0 5px;
}

.profile_images .date {
    float:right;
    margin:8px 15px;
}

.action .profile_name {
    bottom:-30px;
}

.like_details h2 {
    font-size:18px;
    margin:0 0 10px;
}

.border.clearfix {
    border-bottom:1px solid #E1E1E1;
    position:relative;
}

.like_details .wrap > p {
    margin:10px 0;
}

.profile_data .like_button_box {
    margin:0;
}

.profile_data a {
    color:#933;
}

.profile_name a {
    color:#888;
}

.profile_name h1 a {
    color:#444;
}

.media_text > p {
    margin:10px 0 0;
}

.media_text h2 {
    margin:0 0 5px;
}

.attending {
    color:#999;
    display:inline-block;
    margin:10px 0;
}

#action_text_counter {
    bottom:30px;
}

.action_description {
    font-size:14px;
}

.urlscan_block h3 {
    font-size:16px;
    margin:10px 0 4px;
}

.urlscan_snipit_large {
    padding:0;
    border:none;
}

.action .category {
    font-size:12px;
    margin:10px 0 0;
    text-transform:uppercase;
}

.urlscan_snipit_large h3 {
    margin:0 0 5px;
}

.item_media .wrap > p.action_link_text {
    margin:0 0 1em;
}

.border.clearfix.colored {
    background:#ECF0F2 none repeat scroll 0 0;
}

.category > a {
    color:#999;
}

.features {
    background:white none repeat scroll 0 0;
    padding:110px 0;
    position:relative;
}

.features.dark {
    background:#F3F3F3 url("https://hearnfamily.org/image/img/skin/family/2.jpg") no-repeat fixed center center;
    color:white;
    padding:110px 0 60px;
}

.welcome .overlay,.dark .overlay {
    background-color:rgba(100,130,180,0.7);
    height:100%;
    width:100%;
    position:absolute;
    top:0;
}

.down {
    bottom:-30px;
    left:50%;
    position:absolute;
    transform:translateX(-50%);
    width:60px;
    z-index:100;
}

.down > a {
    background:#FFF url("https://hearnfamily.org/image/img/skin/family/down_white.png") no-repeat scroll center center;
    border-radius:50%;
    display:block;
    height:60px;
    width:60px;
}

.features h2 {
    font-size:36px;
    font-weight:lighter;
    margin:0 auto 38px;
    max-width:750px;
    padding:0 20px;
    text-align:center;
}

.col6 {
    position:relative;
}

.feature_text {
    text-align:left;
}

.features .feature_text h2 {
    font-size:36px;
    margin:1em 0 10px;
    padding:0;
    text-align:center;
}

.feature_text p {
    color:#666;
    font-size:16px;
    margin:0;
    text-align:center;
}

.dark .feature_text p {
    color:#EEE;
}

.features .col3 .wrap {
    padding:3px;
}

.features h3 {
    font-size:20px;
    margin:2.5em 0 10px;
    text-align:center;
    font-weight:lighter;
}

.features.dark h2 {
    margin:0 auto 20px;
}

.feature_text.right {
    text-align:right;
}

.features.dark h3 {
    margin:2.4em 0 10px;
    text-align:left;
}

.login .col3:hover .img_scale {
    margin:auto;
    opacity:0.7;
}

.feature_text ul {
    font-size:24px;
    padding:0 2em;
}

.form_button.get_started {
    display:block;
    font-size:20px;
    font-weight:lighter;
    margin:2em auto;
}

.features.final {
    padding:0 0 30px;
}

.hello {
    padding:150px 0 0;
    position:relative;
}

.welcome .col6 .wrap > ul {
    font-size:20px;
    margin:0 2em;
    padding:1em;
}

.welcome .col6 li {
    list-style:outside none disc;
    padding:10px;
}

.action .p10 {
    padding:0 1em;
}

.action .p10 > h2 {
    margin:0;
}

#quick_action_form {
    background:white none repeat scroll 0 0;
    display:none;
}

#quick_action_tab_box {
    border:medium none;
    margin:0;
    overflow:hidden;
    padding:0 0 0 1em;
}

.quick_action_tab {
    cursor:pointer;
    float:left;
    margin:5px 5px 0;
}

.quick_action_tab .sprite_icon {
    background:rgba(0,0,0,0) none repeat scroll 0 0;
    border:medium none;
    margin:0;
    padding:5px 7px;
}

#quick_action_title {
    margin-top:10px;
}

#quick_action_box .form_text {
    background:white none repeat scroll 0 0;
    box-shadow:none;
    color:#333;
    display:block;
    width:98%;
}

.item_media_desc span {
    color:#999;
    text-transform:uppercase;
}

.urlscan_card span {
    color:#999;
    text-transform:uppercase;
}

.action_form_buttons.clearfix {
    background:#ECF0F2 none repeat scroll 0 0;
}

.list_item.spaced {
    border:medium none;
    margin:0 0 1em;
}

.sprite_icon.email {
    padding:5px;
}

.list_item {
    border-bottom:1px solid #EEE;
}

ul.sb-widget-sortable .widget-item li {
    list-style:outside none none;
}

.sb-widget-controls {
    right:10px;
    top:10px;
}

.sb-widget-controls .sprite_icon {
    background:none;
    border:medium none;
}

.title.sb-widget-title.head {
    border:medium none;
    color:#444;
    padding:1em;
}

.form_button.sb-menu-add-button {
    padding:0 10px;
}

.sb-menu-delete-icon .sprite_icon {
    padding:2px;
}

#quick_action_box {
    border-radius:5px;
}

#action_form {
    border-bottom:1px solid #F6F6F6;
}

#action_submit,#quick_action_box .upload_button {
    background:#666 none repeat scroll 0 0;
    border:medium none;
    border-radius:3px;
    color:white;
    margin:4px 0;
    padding:6px;
    font-size:12px;;
}

.mentions-autocomplete-list {
    border:0 !important;
}

.action_user_image {
    clear:both;
    float:left;
    width:50px;
}

.action_data {
    left:10px;
    padding:5px 10px;
    position:relative;
}

.action_info {
    background:white none repeat scroll 0 0;
    min-height:50px;
    padding:15px 15px 0 15px;
}

.action_delete {
    float:right;
}

.action_user_image > img {
    border-radius:50%;
    width:100%;
}

.action_feedback .comment_name > a {
    font-weight:bold;
    color:#933;
}

.action {
    background:#FFF none repeat scroll 0 0;
    box-shadow:0 0 2px #AAA;
    border-radius:5px;
    margin:0 0 12px;
    max-width:620px;
}

.action:last-child {
    border:none;
}

.action_detail {
    padding:0;
}

.item_media {
    box-shadow:0 0 2px #CCC;
    padding:8px;
}

.item_media .action {
    margin:0;
}

.item_media .item {
    margin:0;
}

.item_media .action .wrap {
    background:white none repeat scroll 0 0;
    padding:0;
}

.item_media .action .action_info {
    padding:0 0 15px;
}

.item_media .wrap > p:first-child {
    margin-top:0;
}

.item_media .action {
    box-shadow:none;
    border-radius:0;
}

.item_media .wrap .wrap {
    padding:0;
}

#oneall_timeline_networks {
    float:right;
    padding:12px 1em 0;
    width:50%;
}

#oneall_timeline_networks img {
    margin:0 3px;
    vertical-align:top;
    width:20px;
}

.nowrap {
    white-space:nowrap;
}

.right {
    text-align:right;
}

div.social {
    padding:3em 0 1em;
}

.index_form #jrUser_login #form_submit_indicator {
    margin-bottom:15px;
}

.index_form #oneall_social_login_container_login {
    background:#FFF;
    margin:15px 0 0 0;
    padding:5px 10px;
    border-radius:2px;
    box-shadow:0 1px 2px rgba(0,0,0,0.2) inset,0 0 1px rgba(0,0,0,0.1) inset,0 2px 0 rgba(255,255,255,0.05);
}

.scrollup {
    width:40px;
    height:40px;
    position:fixed;
    bottom:16px;
    right:8px;
    display:none;
    z-index:100000;
}

.scrollup:hover {
    opacity:1;
}

.head .form_text.form_text_search {
    margin:0;
    position:relative;
    right:0;
    top:-4px;
}

.page_wrap {
    padding:0.5em;
}

.page_wrap .col4 > .wrap {
    padding:0.5em;
}

.jrchat-msg-from {
    padding:9px 12px 21px 12px;
}

#jrchat-new-message-input {
    width:70%;
}

#jrchat_smiley_button {
    top:6px;
    margin-right:8px;
}

.table {
    display:table;
    width:100%;
}

.table-row {
    display:table-row;
}

.table-cell {
    display:table-cell;
    vertical-align:middle;
}

.profile_item_list {
    text-align:center;
    padding:0 1em 1em;
    min-height:34px
}

.feature_text ul li {
    list-style:none;
}

.liker_list > .item {
    background-color:#222;
    padding:0 8px 8px 8px;
    margin-top:0;
    margin-bottom:25px;
    border:0;
}

.liker_list > .item a {
    color:#FFCC5B;
    text-decoration:underline;
}

.liker_list > .item a:hover {
    text-decoration:none;
}

.new_login {
    margin-top:100px;
}

.action_create_image {
    height:50px;
    width:50px;
    border-radius:50%;
}


.bottom_tab {
    display:none;
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    height:48px;
    padding-bottom:env(safe-area-inset-bottom,0);
    background:var(--jr-bg-elevated,#ffffff);
    z-index:240;
    border-top:1px solid var(--jr-border,#e2e8f0);
    box-sizing:border-box;
}

.bottom_tab a {
    color:white;
}

.bottom_tab .table {
    height:100%;
}

.bottom_tab .table-cell {
    text-align:center;
    position:relative;
    flex:1 1 0;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
}

.bottom_tab .table-row {
    display:flex;
    align-items:stretch;
    height:48px;
}

.bottom_tab .sprite_icon {
    background:none;
    border:none;
}

#header .sprite_icon {
    background:none;
    border:none;
}

.tm .table-cell {
    text-align:center;
}

#sb-site {
    background:#D7DADC;
}

.index_follow_image {
    float:left;
    width:72px;
    margin:0 10px 0 0
}

.index_follow_image img {
    border-radius:50%;
}


/* skins/family/css/icons_dark.css */




/* skins/family/css/animations.css */


/*animations*/

/******************
* Bounce in right *
*******************/


.animated {
    -webkit-animation-duration:1s;
    animation-duration:1s;
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both;
}

.slow {
    -webkit-animation-duration:1.5s;
    animation-duration:1.5s;
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both;
}

.slower {
    -webkit-animation-duration:2s;
    animation-duration:2s;
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both;
}

.slowest {
    -webkit-animation-duration:3s;
    animation-duration:3s;
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both;
}

/* Added by Andy Meetan */
.delay-250 {
    -webkit-animation-delay:0.25s;
    -moz-animation-delay:0.25s;
    -o-animation-delay:0.25s;
    animation-delay:0.25s;
}

.delay-500 {
    -webkit-animation-delay:0.5s;
    -moz-animation-delay:0.5s;
    -o-animation-delay:0.5s;
    animation-delay:0.5s;
}

.delay-750 {
    -webkit-animation-delay:0.75s;
    -moz-animation-delay:0.75s;
    -o-animation-delay:0.75s;
    animation-delay:0.75s;
}

.delay-1000 {
    -webkit-animation-delay:1.0s;
    -moz-animation-delay:1.0s;
    -o-animation-delay:1.0s;
    animation-delay:1.0s;
}

.delay-1250 {
    -webkit-animation-delay:1.25s;
    -moz-animation-delay:1.25s;
    -o-animation-delay:1.25s;
    animation-delay:1.25s;
}

.delay-1500 {
    -webkit-animation-delay:1.5s;
    -moz-animation-delay:1.5s;
    -o-animation-delay:1.5s;
    animation-delay:1.5s;
}

.delay-1750 {
    -webkit-animation-delay:1.75s;
    -moz-animation-delay:1.75s;
    -o-animation-delay:1.75s;
    animation-delay:1.75s;
}

.delay-2000 {
    -webkit-animation-delay:2.0s;
    -moz-animation-delay:2.0s;
    -o-animation-delay:2.0s;
    animation-delay:2.0s;
}

.delay-2500 {
    -webkit-animation-delay:2.5s;
    -moz-animation-delay:2.5s;
    -o-animation-delay:2.5s;
    animation-delay:2.5s;
}

.delay-2000 {
    -webkit-animation-delay:2.0s;
    -moz-animation-delay:2.0s;
    -o-animation-delay:2.0s;
    animation-delay:2.0s;
}

.delay-2500 {
    -webkit-animation-delay:2.5s;
    -moz-animation-delay:2.5s;
    -o-animation-delay:2.5s;
    animation-delay:2.5s;
}

.delay-3000 {
    -webkit-animation-delay:3.0s;
    -moz-animation-delay:3.0s;
    -o-animation-delay:3.0s;
    animation-delay:3.0s;
}

.delay-3500 {
    -webkit-animation-delay:3.5s;
    -moz-animation-delay:3.5s;
    -o-animation-delay:3.5s;
    animation-delay:3.5s;
}

.bounceInRight,.bounceInLeft,.bounceInUp,.bounceInDown {
    opacity:0;
    -webkit-transform:translateX(400px);
    transform:translateX(400px);
}

.fadeInRight,.fadeInLeft,.fadeInUp,.fadeInDown {
    opacity:0;
    -webkit-transform:translateX(400px);
    transform:translateX(400px);
}

.flipInX,.flipInY,.rotateIn,.rotateInUpLeft,.rotateInUpRight,.rotateInDownLeft,.rotateDownUpRight,.rollIn {
    opacity:0;
}

.lightSpeedInRight,.lightSpeedInLeft {
    opacity:0;
    -webkit-transform:translateX(400px);
    transform:translateX(400px);
}

/***********
* bounceIn *
************/
@-webkit-keyframes bounceIn {
    0% {
        opacity:0;
        -webkit-transform:scale(.3);
    }

    50% {
        opacity:1;
        -webkit-transform:scale(1.05);
    }

    70% {
        -webkit-transform:scale(.9);
    }

    100% {
        -webkit-transform:scale(1);
    }
}

@keyframes bounceIn {
    0% {
        opacity:0;
        transform:scale(.3);
    }

    50% {
        opacity:1;
        transform:scale(1.05);
    }

    70% {
        transform:scale(.9);
    }

    100% {
        transform:scale(1);
    }
}

.bounceIn.go {
    -webkit-animation-name:bounceIn;
    animation-name:bounceIn;
}

/****************
* bounceInRight *
****************/

@-webkit-keyframes bounceInRight {
    0% {
        opacity:0;

        -webkit-transform:translateX(400px);
    }
    60% {

        -webkit-transform:translateX(-30px);
    }
    80% {
        -webkit-transform:translateX(10px);
    }
    100% {
        opacity:1;

        -webkit-transform:translateX(0);
    }
}

@keyframes bounceInRight {
    0% {
        opacity:0;

        transform:translateX(400px);
    }
    60% {

        transform:translateX(-30px);
    }
    80% {
        transform:translateX(10px);
    }
    100% {
        opacity:1;

        transform:translateX(0);
    }
}


.bounceInRight.go {
    -webkit-animation-name:bounceInRight;
    animation-name:bounceInRight;
}

/******************
* Bounce in left *
*******************/

@-webkit-keyframes bounceInLeft {
    0% {
        opacity:0;

        -webkit-transform:translateX(-400px);
    }
    60% {

        -webkit-transform:translateX(30px);
    }
    80% {
        -webkit-transform:translateX(-10px);
    }
    100% {
        opacity:1;

        -webkit-transform:translateX(0);
    }
}

@keyframes bounceInLeft {
    0% {
        opacity:0;

        transform:translateX(-400px);
    }
    60% {

        transform:translateX(30px);
    }
    80% {
        transform:translateX(-10px);
    }
    100% {
        opacity:1;

        transform:translateX(0);
    }
}

.bounceInLeft.go {
    -webkit-animation-name:bounceInLeft;
    animation-name:bounceInLeft;
}

/******************
* Bounce in up *
*******************/

@-webkit-keyframes bounceInUp {
    0% {
        opacity:0;

        -webkit-transform:translateY(400px);
    }
    60% {

        -webkit-transform:translateY(-30px);
    }
    80% {
        -webkit-transform:translateY(10px);
    }
    100% {
        opacity:1;

        -webkit-transform:translateY(0);
    }
}

@keyframes bounceInUp {
    0% {
        opacity:0;

        transform:translateY(400px);
    }
    60% {

        transform:translateY(-30px);
    }
    80% {
        transform:translateY(10px);
    }
    100% {
        opacity:1;

        transform:translateY(0);
    }
}

.bounceInUp.go {
    -webkit-animation-name:bounceInUp;
    animation-name:bounceInUp;
}


/******************
* Bounce in down *
*******************/

@-webkit-keyframes bounceInDown {
    0% {
        opacity:0;

        -webkit-transform:translateY(-400px);
    }
    60% {

        -webkit-transform:translateY(30px);
    }
    80% {
        -webkit-transform:translateY(-10px);
    }
    100% {
        opacity:1;

        -webkit-transform:translateY(0);
    }
}

@keyframes bounceInDown {
    0% {
        opacity:0;

        transform:translateY(-400px);
    }
    60% {

        transform:translateY(30px);
    }
    80% {
        transform:translateY(-10px);
    }
    100% {
        opacity:1;

        transform:translateY(0);
    }
}

.bounceInDown.go {
    -webkit-animation-name:bounceInDown;
    animation-name:bounceInDown;
}


/**********
* Fade In *
**********/
@-webkit-keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
        display:block;
    }
}

@keyframes fadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity:1;
        display:block;
    }
}

.fadeIn {
    opacity:0;
}

.fadeIn.go {
    -webkit-animation-name:fadeIn;
    animation-name:fadeIn;
}

/**********
* Grow in *
***********/

@-webkit-keyframes growIn {
    0% {
        -webkit-transform:scale(0.2);
        opacity:0;
    }
    50% {
        -webkit-transform:scale(1.2);

    }
    100% {
        -webkit-transform:scale(1);
        opacity:1;
    }
}

@keyframes growIn {
    0% {
        transform:scale(0.2);
        opacity:0;
    }
    50% {
        transform:scale(1.2);

    }
    100% {
        transform:scale(1);
        opacity:1;
    }
}

.growIn {

    -webkit-transform:scale(0.2);
    transform:scale(0.2);
    opacity:0;
}

.growIn.go {
    -webkit-animation-name:growIn;
    animation-name:growIn;
}

/********
* Shake *
********/
@-webkit-keyframes shake {
    0%,100% {
        -webkit-transform:translateX(0);
    }
    10%,30%,50%,70%,90% {
        -webkit-transform:translateX(-10px);
    }
    20%,40%,60%,80% {
        -webkit-transform:translateX(10px);
    }
}

@keyframes shake {
    0%,100% {
        transform:translateX(0);
    }
    10%,30%,50%,70%,90% {
        transform:translateX(-10px);
    }
    20%,40%,60%,80% {
        transform:translateX(10px);
    }
}

.shake.go {
    -webkit-animation-name:shake;
    animation-name:shake;
}

/********
* ShakeUp *
********/
@-webkit-keyframes shakeUp {
    0%,100% {
        -webkit-transform:translateX(0);
    }
    10%,30%,50%,70%,90% {
        -webkit-transform:translateY(-10px);
    }
    20%,40%,60%,80% {
        -webkit-transform:translateY(10px);
    }
}

@keyframes shakeUp {
    0%,100% {
        transform:translateY(0);
    }
    10%,30%,50%,70%,90% {
        transform:translateY(-10px);
    }
    20%,40%,60%,80% {
        transform:translateY(10px);
    }
}

.shakeUp.go {
    -webkit-animation-name:shakeUp;
    animation-name:shakeUp;
}

/*************
* FadeInLeft *
*************/

@-webkit-keyframes fadeInLeft {
    0% {
        opacity:0;
        -webkit-transform:translateX(-400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity:0;
        transform:translateX(-400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}

.fadeInLeft {
    opacity:0;
    -webkit-transform:translateX(-400px);
    transform:translateX(-400px);
}

.fadeInLeft.go {
    -webkit-animation-name:fadeInLeft;
    animation-name:fadeInLeft;
}


/*************
* FadeInRight *
*************/

@-webkit-keyframes fadeInRight {
    0% {
        opacity:0;
        -webkit-transform:translateX(400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
}

@keyframes fadeInRight {
    0% {
        opacity:0;
        transform:translateX(400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}

.fadeInRight {
    opacity:0;
    -webkit-transform:translateX(400px);
    transform:translateX(400px);
}

.fadeInRight.go {
    -webkit-animation-name:fadeInRight;
    animation-name:fadeInRight;
}

/*************
* FadeInUp *
*************/

@-webkit-keyframes fadeInUp {
    0% {
        opacity:0;
        -webkit-transform:translateY(400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity:0;
        transform:translateY(400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        transform:translateY(0);
    }
}

.fadeInUp {
    opacity:0;
    -webkit-transform:translateY(400px);
    transform:translateY(400px);
}

.fadeInUp.go {
    -webkit-animation-name:fadeInUp;
    animation-name:fadeInUp;
}

/*************
* FadeInDown *
*************/

@-webkit-keyframes fadeInDown {
    0% {
        opacity:0;
        -webkit-transform:translateY(-400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
}

@keyframes fadeInDown {
    0% {
        opacity:0;
        transform:translateY(-400px);
    }
    50% {
        opacity:0.3;
    }
    100% {
        opacity:1;
        transform:translateY(0);
    }
}

.fadeInDown {
    opacity:0;
    -webkit-transform:translateY(-400px);
    transform:translateY(-400px);
}

.fadeInDown.go {
    -webkit-animation-name:fadeInDown;
    animation-name:fadeInDown;
}

/*****************
* rotateIn *
*****************/
@-webkit-keyframes rotateIn {
    0% {
        -webkit-transform-origin:center center;
        -webkit-transform:rotate(-200deg);
        opacity:0;
    }
    100% {
        -webkit-transform-origin:center center;
        -webkit-transform:rotate(0);
        opacity:1;
    }
}

@keyframes rotateIn {
    0% {
        transform-origin:center center;
        transform:rotate(-200deg);
        opacity:0;
    }
    100% {
        transform-origin:center center;
        transform:rotate(0);
        opacity:1;
    }
}

.rotateIn.go {
    -webkit-animation-name:rotateIn;
    animation-name:rotateIn;
}

/*****************
* rotateInUpLeft *
*****************/

@-webkit-keyframes rotateInUpLeft {
    0% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(90deg);
        opacity:0;
    }
    100% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
}

@keyframes rotateInUpLeft {
    0% {
        transform-origin:left bottom;
        transform:rotate(90deg);
        opacity:0;
    }
    100% {
        transform-origin:left bottom;
        transform:rotate(0);
        opacity:1;
    }
}

.rotateInUpLeft.go {
    -webkit-animation-name:rotateInUpLeft;
    animation-name:rotateInUpLeft;
}

/*******************
* rotateInDownLeft *
*******************/
@-webkit-keyframes rotateInDownLeft {
    0% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(-90deg);
        opacity:0;
    }
    100% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
}

@keyframes rotateInDownLeft {
    0% {
        transform-origin:left bottom;
        transform:rotate(-90deg);
        opacity:0;
    }
    100% {
        transform-origin:left bottom;
        transform:rotate(0);
        opacity:1;
    }
}

.rotateInDownLeft.go {
    -webkit-animation-name:rotateInDownLeft;
    animation-name:rotateInDownLeft;
}

/******************
* rotateInUpRight *
*******************/

@-webkit-keyframes rotateInUpRight {
    0% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(-90deg);
        opacity:0;
    }
    100% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
}

@keyframes rotateInUpRight {
    0% {
        transform-origin:right bottom;
        transform:rotate(-90deg);
        opacity:0;
    }
    100% {
        transform-origin:right bottom;
        transform:rotate(0);
        opacity:1;
    }
}

.rotateInUpRight.go {
    -webkit-animation-name:rotateInUpRight;
    animation-name:rotateInUpRight;
}

/********************
* rotateInDownRight *
********************/

@-webkit-keyframes rotateInDownRight {
    0% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(90deg);
        opacity:0;
    }
    100% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
}

@keyframes rotateInDownRight {
    0% {
        transform-origin:right bottom;
        transform:rotate(90deg);
        opacity:0;
    }
    100% {
        transform-origin:right bottom;
        transform:rotate(0);
        opacity:1;
    }
}

.rotateInDownRight.go {
    -webkit-animation-name:rotateInDownRight;
    animation-name:rotateInDownRight;
}

/*********
* rollIn *
**********/

@-webkit-keyframes rollIn {
    0% {
        opacity:0;
        -webkit-transform:translateX(-100%) rotate(-120deg);
    }
    100% {
        opacity:1;
        -webkit-transform:translateX(0px) rotate(0deg);
    }
}

@keyframes rollIn {
    0% {
        opacity:0;
        transform:translateX(-100%) rotate(-120deg);
    }
    100% {
        opacity:1;
        transform:translateX(0px) rotate(0deg);
    }
}

.rollIn.go {
    -webkit-animation-name:rollIn;
    animation-name:rollIn;
}

/*********
* wiggle *
**********/

@-webkit-keyframes wiggle {
    0% {
        -webkit-transform:skewX(9deg);
    }
    10% {
        -webkit-transform:skewX(-8deg);
    }
    20% {
        -webkit-transform:skewX(7deg);
    }
    30% {
        -webkit-transform:skewX(-6deg);
    }
    40% {
        -webkit-transform:skewX(5deg);
    }
    50% {
        -webkit-transform:skewX(-4deg);
    }
    60% {
        -webkit-transform:skewX(3deg);
    }
    70% {
        -webkit-transform:skewX(-2deg);
    }
    80% {
        -webkit-transform:skewX(1deg);
    }
    90% {
        -webkit-transform:skewX(0deg);
    }
    100% {
        -webkit-transform:skewX(0deg);
    }
}

@keyframes wiggle {
    0% {
        transform:skewX(9deg);
    }
    10% {
        transform:skewX(-8deg);
    }
    20% {
        transform:skewX(7deg);
    }
    30% {
        transform:skewX(-6deg);
    }
    40% {
        transform:skewX(5deg);
    }
    50% {
        transform:skewX(-4deg);
    }
    60% {
        transform:skewX(3deg);
    }
    70% {
        transform:skewX(-2deg);
    }
    80% {
        transform:skewX(1deg);
    }
    90% {
        transform:skewX(0deg);
    }
    100% {
        transform:skewX(0deg);
    }
}

.wiggle.go {
    -webkit-animation-name:wiggle;
    animation-name:wiggle;
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
}

/********
* swing *
*********/

@-webkit-keyframes swing {
    20%,40%,60%,80%,100% {
        -webkit-transform-origin:top center;
    }
    20% {
        -webkit-transform:rotate(15deg);
    }
    40% {
        -webkit-transform:rotate(-10deg);
    }
    60% {
        -webkit-transform:rotate(5deg);
    }
    80% {
        -webkit-transform:rotate(-5deg);
    }
    100% {
        -webkit-transform:rotate(0deg);
    }
}

@keyframes swing {
    20% {
        transform:rotate(15deg);
    }
    40% {
        transform:rotate(-10deg);
    }
    60% {
        transform:rotate(5deg);
    }
    80% {
        transform:rotate(-5deg);
    }
    100% {
        transform:rotate(0deg);
    }
}

.swing.go {
    -webkit-transform-origin:top center;
    transform-origin:top center;
    -webkit-animation-name:swing;
    animation-name:swing;
}

/*******
* tada *
********/

@-webkit-keyframes tada {
    0% {
        -webkit-transform:scale(1);
    }
    10%,20% {
        -webkit-transform:scale(0.9) rotate(-3deg);
    }
    30%,50%,70%,90% {
        -webkit-transform:scale(1.1) rotate(3deg);
    }
    40%,60%,80% {
        -webkit-transform:scale(1.1) rotate(-3deg);
    }
    100% {
        -webkit-transform:scale(1) rotate(0);
    }
}

@keyframes tada {
    0% {
        transform:scale(1);
    }
    10%,20% {
        transform:scale(0.9) rotate(-3deg);
    }
    30%,50%,70%,90% {
        transform:scale(1.1) rotate(3deg);
    }
    40%,60%,80% {
        transform:scale(1.1) rotate(-3deg);
    }
    100% {
        transform:scale(1) rotate(0);
    }
}

.tada.go {
    -webkit-animation-name:tada;
    animation-name:tada;
}

/*********
* wobble *
**********/

@-webkit-keyframes wobble {
    0% {
        -webkit-transform:translateX(0%);
    }
    15% {
        -webkit-transform:translateX(-25%) rotate(-5deg);
    }
    30% {
        -webkit-transform:translateX(20%) rotate(3deg);
    }
    45% {
        -webkit-transform:translateX(-15%) rotate(-3deg);
    }
    60% {
        -webkit-transform:translateX(10%) rotate(2deg);
    }
    75% {
        -webkit-transform:translateX(-5%) rotate(-1deg);
    }
    100% {
        -webkit-transform:translateX(0%);
    }
}

@keyframes wobble {
    0% {
        transform:translateX(0%);
    }
    15% {
        transform:translateX(-25%) rotate(-5deg);
    }
    30% {
        transform:translateX(20%) rotate(3deg);
    }
    45% {
        transform:translateX(-15%) rotate(-3deg);
    }
    60% {
        transform:translateX(10%) rotate(2deg);
    }
    75% {
        transform:translateX(-5%) rotate(-1deg);
    }
    100% {
        transform:translateX(0%);
    }
}

.wobble.go {
    -webkit-animation-name:wobble;
    animation-name:wobble;
}

/********
* pulse *
*********/

@-webkit-keyframes pulse {
    0% {
        -webkit-transform:scale(1);
    }
    50% {
        -webkit-transform:scale(1.1);
    }
    100% {
        -webkit-transform:scale(1);
    }
}

@keyframes pulse {
    0% {
        transform:scale(1);
    }
    50% {
        transform:scale(1.1);
    }
    100% {
        transform:scale(1);
    }
}

.pulse.go {
    -webkit-animation-name:pulse;
    animation-name:pulse;
}

/***************
* lightSpeedInRight *
****************/
@-webkit-keyframes lightSpeedInRight {
    0% {
        -webkit-transform:translateX(100%) skewX(-30deg);
        opacity:0;
    }
    60% {
        -webkit-transform:translateX(-20%) skewX(30deg);
        opacity:1;
    }
    80% {
        -webkit-transform:translateX(0%) skewX(-15deg);
        opacity:1;
    }
    100% {
        -webkit-transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
}

@keyframes lightSpeedInRight {
    0% {
        transform:translateX(100%) skewX(-30deg);
        opacity:0;
    }
    60% {
        transform:translateX(-20%) skewX(30deg);
        opacity:1;
    }
    80% {
        transform:translateX(0%) skewX(-15deg);
        opacity:1;
    }
    100% {
        transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
}

.lightSpeedInRight.go {
    -webkit-animation-name:lightSpeedInRight;
    animation-name:lightSpeedInRight;
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
}

/***************
* lightSpeedInLeft *
****************/
@-webkit-keyframes lightSpeedInLeft {
    0% {
        -webkit-transform:translateX(-100%) skewX(30deg);
        opacity:0;
    }
    60% {
        -webkit-transform:translateX(20%) skewX(-30deg);
        opacity:1;
    }
    80% {
        -webkit-transform:translateX(0%) skewX(15deg);
        opacity:1;
    }
    100% {
        -webkit-transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
}

@keyframes lightSpeedInLeft {
    0% {
        transform:translateX(-100%) skewX(30deg);
        opacity:0;
    }
    60% {
        transform:translateX(20%) skewX(-30deg);
        opacity:1;
    }
    80% {
        transform:translateX(0%) skewX(15deg);
        opacity:1;
    }
    100% {
        transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
}

.lightSpeedInLeft.go {
    -webkit-animation-name:lightSpeedInLeft;
    animation-name:lightSpeedInLeft;
    -webkit-animation-timing-function:ease-out;
    animation-timing-function:ease-out;
}


/*******
* Flip *
*******/
@-webkit-keyframes flip {
    0% {
        -webkit-transform:perspective(400px) rotateY(0);
        -webkit-animation-timing-function:ease-out;
    }
    40% {
        -webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg);
        -webkit-animation-timing-function:ease-out;
    }
    50% {
        -webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        -webkit-animation-timing-function:ease-in;
    }
    80% {
        -webkit-transform:perspective(400px) rotateY(360deg) scale(.95);
        -webkit-animation-timing-function:ease-in;
    }
    100% {
        -webkit-transform:perspective(400px) scale(1);
        -webkit-animation-timing-function:ease-in;
    }
}

@keyframes flip {
    0% {
        transform:perspective(400px) rotateY(0);
        animation-timing-function:ease-out;
    }
    40% {
        transform:perspective(400px) translateZ(150px) rotateY(170deg);
        animation-timing-function:ease-out;
    }
    50% {
        transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
        animation-timing-function:ease-in;
    }
    80% {
        transform:perspective(400px) rotateY(360deg) scale(.95);
        animation-timing-function:ease-in;
    }
    100% {
        transform:perspective(400px) scale(1);
        animation-timing-function:ease-in;
    }
}

.flip.go {
    -webkit-backface-visibility:visible !important;
    -webkit-animation-name:flip;
    backface-visibility:visible !important;
    animation-name:flip;
}

/**********
* flipInX *
**********/
@-webkit-keyframes flipInX {
    0% {
        -webkit-transform:perspective(400px) rotateX(90deg);
        opacity:0;
    }
    40% {
        -webkit-transform:perspective(400px) rotateX(-10deg);
    }
    70% {
        -webkit-transform:perspective(400px) rotateX(10deg);
    }
    100% {
        -webkit-transform:perspective(400px) rotateX(0deg);
        opacity:1;
    }
}

@keyframes flipInX {
    0% {
        transform:perspective(400px) rotateX(90deg);
        opacity:0;
    }
    40% {
        transform:perspective(400px) rotateX(-10deg);
    }
    70% {
        transform:perspective(400px) rotateX(10deg);
    }
    100% {
        transform:perspective(400px) rotateX(0deg);
        opacity:1;
    }
}

.flipInX.go {
    -webkit-backface-visibility:visible !important;
    -webkit-animation-name:flipInX;
    backface-visibility:visible !important;
    animation-name:flipInX;
}

/**********
* flipInY *
**********/

@-webkit-keyframes flipInY {
    0% {
        -webkit-transform:perspective(400px) rotateY(90deg);
        opacity:0;
    }
    40% {
        -webkit-transform:perspective(400px) rotateY(-10deg);
    }
    70% {
        -webkit-transform:perspective(400px) rotateY(10deg);
    }
    100% {
        -webkit-transform:perspective(400px) rotateY(0deg);
        opacity:1;
    }
}

@keyframes flipInY {
    0% {
        transform:perspective(400px) rotateY(90deg);
        opacity:0;
    }
    40% {
        transform:perspective(400px) rotateY(-10deg);
    }
    70% {
        transform:perspective(400px) rotateY(10deg);
    }
    100% {
        transform:perspective(400px) rotateY(0deg);
        opacity:1;
    }
}

.flipInY.go {
    -webkit-backface-visibility:visible !important;
    -webkit-animation-name:flipInY;
    backface-visibility:visible !important;
    animation-name:flipInY;
}

/*****************
* Out animations *
*****************/


/************
* bounceOut *
*************/
@-webkit-keyframes bounceOut {
    0% {
        -webkit-transform:scale(1);
    }
    25% {
        -webkit-transform:scale(.95);
    }
    50% {
        opacity:1;
        -webkit-transform:scale(1.1);
    }
    100% {
        opacity:0;
        -webkit-transform:scale(.3);
    }
}

@keyframes bounceOut {
    0% {
        transform:scale(1);
    }
    25% {
        transform:scale(.95);
    }
    50% {
        opacity:1;
        transform:scale(1.1);
    }
    100% {
        opacity:0;
        transform:scale(.3);
    }
}

.bounceOut.goAway {
    -webkit-animation-name:bounceOut;
    animation-name:bounceOut;
}

/************
* bounceOutUp *
*************/
@-webkit-keyframes bounceOutUp {
    0% {
        -webkit-transform:translateY(0);
    }
    20% {
        opacity:1;
        -webkit-transform:translateY(20px);
    }
    100% {
        opacity:0;
        -webkit-transform:translateY(-2000px);
    }
}

@keyframes bounceOutUp {
    0% {
        transform:translateY(0);
    }
    20% {
        opacity:1;
        transform:translateY(20px);
    }
    100% {
        opacity:0;
        transform:translateY(-2000px);
    }
}

.bounceOutUp.goAway {
    -webkit-animation-name:bounceOutUp;
    animation-name:bounceOutUp;
}

/************
* bounceOutDown *
*************/
@-webkit-keyframes bounceOutDown {
    0% {
        -webkit-transform:translateY(0);
    }
    20% {
        opacity:1;
        -webkit-transform:translateY(-20px);
    }
    100% {
        opacity:0;
        -webkit-transform:translateY(2000px);
    }
}

@keyframes bounceOutDown {
    0% {
        transform:translateY(0);
    }
    20% {
        opacity:1;
        transform:translateY(-20px);
    }
    100% {
        opacity:0;
        transform:translateY(2000px);
    }
}

.bounceOutDown.goAway {
    -webkit-animation-name:bounceOutDown;
    animation-name:bounceOutDown;
}


/************
* bounceOutLeft *
*************/
@-webkit-keyframes bounceOutLeft {
    0% {
        -webkit-transform:translateX(0);
    }
    20% {
        opacity:1;
        -webkit-transform:translateX(20px);
    }
    100% {
        opacity:0;
        -webkit-transform:translateX(-2000px);
    }
}

@keyframes bounceOutLeft {
    0% {
        transform:translateX(0);
    }
    20% {
        opacity:1;
        transform:translateX(20px);
    }
    100% {
        opacity:0;
        transform:translateX(-2000px);
    }
}

.bounceOutLeft.goAway {
    -webkit-animation-name:bounceOutLeft;
    animation-name:bounceOutLeft;
}

/************
* bounceOutRight *
*************/
@-webkit-keyframes bounceOutRight {
    0% {
        -webkit-transform:translateX(0);
    }
    20% {
        opacity:1;
        -webkit-transform:translateX(-20px);
    }
    100% {
        opacity:0;
        -webkit-transform:translateX(2000px);
    }
}

@keyframes bounceOutRight {
    0% {
        transform:translateX(0);
    }
    20% {
        opacity:1;
        transform:translateX(-20px);
    }
    100% {
        opacity:0;
        transform:translateX(2000px);
    }
}

.bounceOutRight.goAway {
    -webkit-animation-name:bounceOutRight;
    animation-name:bounceOutRight;
}

/************
* fadeOut *
*************/
@-webkit-keyframes fadeOut {
    0% {
        opacity:1;
    }
    100% {
        opacity:0;
    }
}

@keyframes fadeOut {
    0% {
        opacity:1;
    }
    100% {
        opacity:0;
    }
}

.fadeOut.goAway {
    -webkit-animation-name:fadeOut;
    animation-name:fadeOut;
}

/************
* fadeOutUp *
*************/
@-webkit-keyframes fadeOutUp {
    0% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
    100% {
        opacity:0;
        -webkit-transform:translateY(-2000px);
    }
}

@keyframes fadeOutUp {
    0% {
        opacity:1;
        transform:translateY(0);
    }
    100% {
        opacity:0;
        transform:translateY(-2000px);
    }
}

.fadeOutUp.goAway {
    -webkit-animation-name:fadeOutUp;
    animation-name:fadeOutUp;
}

/************
* fadeOutDown *
*************/
@-webkit-keyframes fadeOutDown {
    0% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
    100% {
        opacity:0;
        -webkit-transform:translateY(2000px);
    }
}

@keyframes fadeOutDown {
    0% {
        opacity:1;
        transform:translateY(0);
    }
    100% {
        opacity:0;
        transform:translateY(2000px);
    }
}

.fadeOutDown.goAway {
    -webkit-animation-name:fadeOutDown;
    animation-name:fadeOutDown;
}

/************
* fadeOutLeft *
*************/
@-webkit-keyframes fadeOutLeft {
    0% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
    100% {
        opacity:0;
        -webkit-transform:translateX(-2000px);
    }
}

@keyframes fadeOutLeft {
    0% {
        opacity:1;
        transform:translateX(0);
    }
    100% {
        opacity:0;
        transform:translateX(-2000px);
    }
}

.fadeOutLeft.goAway {
    -webkit-animation-name:fadeOutLeft;
    animation-name:fadeOutLeft;
}

/************
* fadeOutRight *
*************/
@-webkit-keyframes fadeOutRight {
    0% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
    100% {
        opacity:0;
        -webkit-transform:translateX(2000px);
    }
}

@keyframes fadeOutRight {
    0% {
        opacity:1;
        transform:translateX(0);
    }
    100% {
        opacity:0;
        transform:translateX(2000px);
    }
}

.fadeOutRight.goAway {
    -webkit-animation-name:fadeOutRight;
    animation-name:fadeOutRight;
}

/************
* flipOutX *
*************/
@-webkit-keyframes flipOutX {
    0% {
        -webkit-transform:perspective(400px) rotateX(0deg);
        opacity:1;
    }
    100% {
        -webkit-transform:perspective(400px) rotateX(90deg);
        opacity:0;
    }
}

@keyframes flipOutX {
    0% {
        transform:perspective(400px) rotateX(0deg);
        opacity:1;
    }
    100% {
        transform:perspective(400px) rotateX(90deg);
        opacity:0;
    }
}

.flipOutX.goAway {
    -webkit-animation-name:flipOutX;
    -webkit-backface-visibility:visible !important;
    animation-name:flipOutX;
    backface-visibility:visible !important;
}

/************
* flipOutY *
*************/
@-webkit-keyframes flipOutY {
    0% {
        -webkit-transform:perspective(400px) rotateY(0deg);
        opacity:1;
    }
    100% {
        -webkit-transform:perspective(400px) rotateY(90deg);
        opacity:0;
    }
}

@keyframes flipOutY {
    0% {
        transform:perspective(400px) rotateY(0deg);
        opacity:1;
    }
    100% {
        transform:perspective(400px) rotateY(90deg);
        opacity:0;
    }
}

.flipOutY {
    -webkit-backface-visibility:visible !important;
    -webkit-animation-name:flipOutY;
    backface-visibility:visible !important;
    animation-name:flipOutY;
}

/************
* lightSpeedOutRight *
*************/
@-webkit-keyframes lightSpeedOutRight {
    0% {
        -webkit-transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
    100% {
        -webkit-transform:translateX(100%) skewX(-30deg);
        opacity:0;
    }
}

@keyframes lightSpeedOutRight {
    0% {
        transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
    100% {
        transform:translateX(100%) skewX(-30deg);
        opacity:0;
    }
}

.lightSpeedOutRight.goAway {
    -webkit-animation-name:lightSpeedOutRight;
    animation-name:lightSpeedOutRight;
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;
}


/************
* lightSpeedOutLeft *
*************/
@-webkit-keyframes lightSpeedOutLeft {
    0% {
        -webkit-transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
    100% {
        -webkit-transform:translateX(-100%) skewX(30deg);
        opacity:0;
    }
}

@keyframes lightSpeedOutLeft {
    0% {
        transform:translateX(0%) skewX(0deg);
        opacity:1;
    }
    100% {
        transform:translateX(-100%) skewX(30deg);
        opacity:0;
    }
}

.lightSpeedOutLeft.goAway {
    -webkit-animation-name:lightSpeedOutLeft;
    animation-name:lightSpeedOutLeft;
    -webkit-animation-timing-function:ease-in;
    animation-timing-function:ease-in;

}

/************
* rotateOut *
*************/
@-webkit-keyframes rotateOut {
    0% {
        -webkit-transform-origin:center center;
        -webkit-transform:rotate(0);
        opacity:1;
    }
    100% {
        -webkit-transform-origin:center center;
        -webkit-transform:rotate(200deg);
        opacity:0;
    }
}

@keyframes rotateOut {
    0% {
        transform-origin:center center;
        transform:rotate(0);
        opacity:1;
    }
    100% {
        transform-origin:center center;
        transform:rotate(200deg);
        opacity:0;
    }
}

.rotateOut.goAway {
    -webkit-animation-name:rotateOut;
    animation-name:rotateOut;
}


/************
* rotateOutUpLeft *
*************/
@-webkit-keyframes rotateOutUpLeft {
    0% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
    100% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(-90deg);
        opacity:0;
    }
}

@keyframes rotateOutUpLeft {
    0% {
        transform-origin:left bottom;
        transform:rotate(0);
        opacity:1;
    }
    100% {
        -transform-origin:left bottom;
        -transform:rotate(-90deg);
        opacity:0;
    }
}

.rotateOutUpLeft.goAway {
    -webkit-animation-name:rotateOutUpLeft;
    animation-name:rotateOutUpLeft;
}

/************
* rotateOutDownLeft *
*************/

@-webkit-keyframes rotateOutDownLeft {
    0% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
    100% {
        -webkit-transform-origin:left bottom;
        -webkit-transform:rotate(90deg);
        opacity:0;
    }
}

@keyframes rotateOutDownLeft {
    0% {
        transform-origin:left bottom;
        transform:rotate(0);
        opacity:1;
    }
    100% {
        transform-origin:left bottom;
        transform:rotate(90deg);
        opacity:0;
    }
}

.rotateOutDownLeft.goAway {
    -webkit-animation-name:rotateOutDownLeft;
    animation-name:rotateOutDownLeft;
}

/************
* rotateOutUpRight *
*************/

@-webkit-keyframes rotateOutUpRight {
    0% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(0);
        opacity:1;
    }
    100% {
        -webkit-transform-origin:right bottom;
        -webkit-transform:rotate(90deg);
        opacity:0;
    }
}

@keyframes rotateOutUpRight {
    0% {
        transform-origin:right bottom;
        transform:rotate(0);
        opacity:1;
    }
    100% {
        transform-origin:right bottom;
        transform:rotate(90deg);
        opacity:0;
    }
}

.rotateOutUpRight.goAway {
    -webkit-animation-name:rotateOutUpRight;
    animation-name:rotateOutUpRight;
}

/************
* rollOut *
*************/
@-webkit-keyframes rollOut {
    0% {
        opacity:1;
        -webkit-transform:translateX(0px) rotate(0deg);
    }
    100% {
        opacity:0;
        -webkit-transform:translateX(100%) rotate(120deg);
    }
}

@keyframes rollOut {
    0% {
        opacity:1;
        transform:translateX(0px) rotate(0deg);
    }
    100% {
        opacity:0;
        transform:translateX(100%) rotate(120deg);
    }
}

.rollOut.goAway {
    -webkit-animation-name:rollOut;
    animation-name:rollOut;
}

/*****************
* Short Animations
*******************/

/*********************
* fadeInUpShort
*********************/
@-webkit-keyframes fadeInUpShort {
    0% {
        opacity:0;
        -webkit-transform:translateY(20px);
    }
    100% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
}

@keyframes fadeInUpShort {
    0% {
        opacity:0;
        transform:translateY(20px);
    }
    100% {
        opacity:1;
        transform:translateY(0);
    }
}

.fadeInUpShort {
    opacity:0;
    -webkit-transform:translateY(20px);
    transform:translateY(20px);
}

.fadeInUpShort.go {
    -webkit-animation-name:fadeInUpShort;
    animation-name:fadeInUpShort;
}

/*********************
* fadeInDownShort
*********************/
@-webkit-keyframes fadeInDownShort {
    0% {
        opacity:0;
        -webkit-transform:translateY(-20px);
    }
    100% {
        opacity:1;
        -webkit-transform:translateY(0);
    }
}

@keyframes fadeInDownShort {
    0% {
        opacity:0;
        transform:translateY(-20px);
    }
    100% {
        opacity:1;
        transform:translateY(0);
    }
}

.fadeInDownShort {
    opacity:0;
    -webkit-transform:translateY(-20px);
    transform:translateY(-20px);
}

.fadeInDownShort.go {
    -webkit-animation-name:fadeInDownShort;
    animation-name:fadeInDownShort;
}

/*********************
* fadeInRightShort 
*********************/
@-webkit-keyframes fadeInRightShort {
    0% {
        opacity:0;
        -webkit-transform:translateX(20px);
    }
    100% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
}

@keyframes fadeInRightShort {
    0% {
        opacity:0;
        transform:translateX(20px);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}

.fadeInRightShort {
    opacity:0;
    -webkit-transform:translateX(20px);
    transform:translateX(20px);
}

.fadeInRightShort.go {
    -webkit-animation-name:fadeInRightShort;
    animation-name:fadeInRightShort;
}

/*********************
* fadeInLeftShort 
*********************/
@-webkit-keyframes fadeInLeftShort {
    0% {
        opacity:0;
        -webkit-transform:translateX(-20px);
    }
    100% {
        opacity:1;
        -webkit-transform:translateX(0);
    }
}

@keyframes fadeInLeftShort {
    0% {
        opacity:0;
        transform:translateX(-20px);
    }
    100% {
        opacity:1;
        transform:translateX(0);
    }
}

.fadeInLeftShort {
    opacity:0;
    -webkit-transform:translateX(-20px);
    transform:translateX(-20px);
}

.fadeInLeftShort.go {
    -webkit-animation-name:fadeInLeftShort;
    animation-name:fadeInLeftShort;
}


/* skins/family/css/animations-ie-fix.css */


.animated {
    opacity:1;
}

/* skins/family/css/player.css */



.video_container {
    position:relative;
}

.family_player .jp-gui.start {
    display:block !important;
}

.family_player .jp-gui {
    bottom:0;
    height:100% !important;
    left:0;
    position:absolute;
    width:100%;
}

.family_player li {
    float:left;
    list-style:outside none none;
}

.family_player .jp-video-play {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:100%;
}

.family_player .jp-video-play-icon {
    display:block;
    height:40px;
    margin:auto;
    width:40px;
    text-indent:-9999px;
}

.family_player .jp-interface {
    background:rgba(0,0,0,0) linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.6)) repeat scroll 0 0;
    bottom:0;
    height:60px;
    position:absolute;
    width:100%;
}

.family_player .jp-video-play {
    position:absolute;
    top:50%;
    transform:translateY(-50%);
}

.family_player .jp-play,
.family_player .jp-pause,
.family_player .jp-mute,
.family_player .jp-unmute,
.family_player .jp-video-play-icon,
.family_player .jp-restore-screen,
.family_player .jp-full-screen {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/player.png") no-repeat scroll 0 0;
}

.family_player .jp-pause {
    background-position:0 -221px !important;
}

.family_player .jp-play,
.family_player .jp-pause,
.family_player .jp-mute,
.family_player .jp-unmute,
.family_player .jp-settings,
.family_player .jp-restore-screen,
.family_player .jp-full-screen {
    display:block;
    height:25px;
    margin:0 20px;
    width:25px;
    position:absolute;
}

.family_player .jp-play {
    background-position:0 -246px;
}

.family_player .jp-controls-holder {
    padding:20px 0;
}

.button_player_holder {
    float:right;
    margin-top:16px;
}

.button_player img {
    width:40px;
    height:40px;
}

.sc_button_player img {
    width:40px;
}

.family_player .jp-progress-holder {
    height:25px;
    left:56px;
    padding:6px 0 0;
    position:absolute;
    right:190px;
}

.family_player .jp-duration {
    color:#FFFFFF;
    font-size:15px;
    font-weight:bold;
    line-height:1.6em;
    position:absolute;
    right:132px;
}

.family_player .jp-full-screen,.jp-restore-screen {
    right:0;
}

.family_player .jp-full-screen {
    background-position:0 -146px;
}

.family_player .jp-unmute {
    background-position:0 -196px !important;
}

.family_player .jp-mute {
    background-position:0 -371px !important;
}

.family_player .jp-mute,.family_player .jp-unmute {
    right:70px;
}

.family_player .jp-settings {
    background:rgba(0,0,0,0) url("https://hearnfamily.org/image/img/skin/family/acp.png") repeat scroll 0 0 / contain;
    right:35px;
}

.family_player .jp-seek-bar,.family_player .jp-play-bar,.family_player .jp-progress {
    background:rgba(255,255,255,0.3) none repeat scroll 0 0;
    border-radius:8px;
    height:12px;
}

.family_player .jp-play-bar {
    background:rgba(0,0,0,0.3) none repeat scroll 0 0;
}

.family_player div.jp-video-full div.jp-jplayer {
    top:0;
    left:0;
    position:fixed !important;
    position:relative; /* Rules for IE6 (full-screen) */
    overflow:hidden;
}

.family_player div.jp-video-full div.jp-gui,
.family_player .jp-audio.jp-state-full-screen div.jp-gui {
    position:fixed !important;
    position:static; /* Rules for IE6 (full-screen) */
    top:0;
    left:0;
    width:100% !important;
    height:100% !important;
    z-index:1001; /* 1 layer above the others. */
}

.family_player .jp-restore-screen {
    background-position:0 -172px;
}

.family_player .jp-video-full .jp-controls-holder,
.family_player .jp-audio.jp-state-full-screen .jp-controls-holder {
    margin:auto;
    max-width:1280px;
    position:relative;
}

.family_player .jp-audio .jp-title {
    background:rgba(0,0,0,0.5) none repeat scroll 0 0;
    color:#FFFFFF;
    display:inline !important;
    font-weight:bold;
    left:0;
    max-width:80%;
    padding:10px;
    position:absolute;
    top:0;
}

.family_player .jp-playlist {
    bottom:50px;
    overflow:hidden;
    position:absolute;
    top:0;
    width:100%;
}

.family_player .jp-playlist li {
    background:rgba(0,0,0,0.5) none repeat scroll 0 0;
    border-bottom:1px solid rgba(255,255,255,0.2);
    display:block;
    width:100%;
}

.family_player .jp-playlist-current a {
    color:rgba(248,197,116,1);
}

.family_player .jp-playlist div {
    padding:7px;
}

.family_beat_player .jp-type-playlist {
    margin:auto;
    max-width:1140px;
    position:relative;
}

.jp-type-single {
    margin-right:10px;
}

.family_player .jp-control-settings {
    background:rgba(0,0,0,0.5) none repeat scroll 0 0;
    border:2px solid rgba(255,255,255,0.5);
    border-radius:8px;
    bottom:50px;
    padding:6px;
    position:absolute;
    right:10px;
    z-index:500;
}

.family_player .jp-volume-bar {
    background:rgba(255,255,255,0.5) none repeat scroll 0 0;
    border-radius:8px;
    bottom:44px;
    height:21px;
    overflow:hidden;
    position:absolute;
    right:53px;
    width:100px;
    cursor:pointer;
}

.family_player .jp-volume-bar-value {
    background:rgba(0,0,0,0.5) none repeat scroll 0 0;
    border-radius:8px;
    height:17px;
    margin:2px;
}

.family_player.audio .jp-settings {
    right:0;
}

.family_player.audio .jp-mute,.family_player.audio .jp-unmute {
    right:35px;
}

.family_player.audio .jp-duration {
    right:95px;
}

.family_player.audio .jp-volume-bar {
    right:25px;
}

.family_player.audio .jp-progress-holder {
    right:158px;
}

.family_player .jp-video-play-icon.replay {
    background-position:0 -41px;
}

.family_player .jp-play.replay {
    background-position:0 -321px;
}

.family_player .jp-title {
    margin:2em;
}

.family_player .jp-control-settings span {
    color:white;
}

.button_player div.jp-interface ul.jp-controls a.jp-play,
.button_player div.jp-interface ul.jp-controls a.jp-pause {
    display:none;
}

li.jp-playlist-current {
    background:#FFCC66 none repeat scroll 0 0;
}

.family_player {
    position:relative;
}

.family_player .jp-playlist-current a {
    color:#FFCC66;
}

.jp-playlist-item {
    color:#EEEEEE;
}




/* skins/family/css/override_tablet.css */


/* Tablets */
@media only screen and (max-width:970px) {

    input[type=submit],input[type=reset],input[type=button] {
        -webkit-appearance:none;
    }

    #wrapper {
        font-size:10px;
    }

    .page_tab {
        font-size:14px;
    }

    .desk {
        display:none;
    }

    .mobile {
        display:block;
    }

    #menu > li.right {
        display:block;
    }

    #menu > li {
        display:none;
    }

    #menu > li.desk.right {
        display:none;
    }

    #apps li {
        width:65px;
    }

    #wrapper > section {
        font-size:1.2em;
    }

    .row,#content {
        max-width:970px;
    }

    h1 {
        margin:10px auto;
    }

    .final .footer > a {
        top:-74px;
    }

    .row .col12.slogan {
        padding-right:1em;
        text-align:right;
    }
}

@media only screen and (max-height:900px) {


    .index.list .middle {
        position:relative;
        top:0;
        transform:translateY(0px);
    }

    .index.list .full {
        padding:0 0 60px;
    }

    section.index.list {
        padding:90px 0 0;
    }

    section.index.final {
        padding:90px 0;
    }

    .index.final.list .full {
        padding:0 0 90px;
    }

    .index.top .middle {
        top:40%;
    }

    .index_item h2 {
        font-size:16px;
        margin:0 0 0.2em;
    }

    .tablet {
        display:inline;
    }

    div.tap_block,div.tap {
        display:block;
    }
}


@media only screen and (max-width:1200px) {
    .hover {
        font-size:12px;
    }

    .more {
        margin:1em 0 0;
    }
}

/* skins/family/css/override_mobile.css */


/* Mobile */
@media handheld,only screen and (max-width:767px) {

    body {
        width:100%;
        min-width:0;
        margin:0;
        padding:0;
        -webkit-text-size-adjust:none;
    }

    h1 {
        font-size:22px;
        font-weight:bold;
    }

    h2 {
        font-size:13px;
    }

    h3 {
        font-size:12px;
    }

    h4 {
        font-size:11px;
    }

    input[type=submit],input[type=reset],input[type=button] {
        -webkit-appearance:none;
    }

    #mmt {
        background-color:transparent;
        position:relative;
        float:left;
        width:28px;
        height:28px;
        top:5px;
        left:6px;
        z-index:50;
    }

    #main_menu {
        padding:6px;
        text-align:center;
        font-size:14px;
    }

    .row .col1,.row .col2,.row .col3,.row .col4,.row .col5,.row .col6,.row .col7,.row .col8,.row .col9,.row .col10,.row .col11,.row .col12 {
        width:auto;
        float:none;
        margin-left:0;
        margin-right:0;
        padding-left:0;
        padding-right:0;
    }

    .block {
        font-size:12px;
    }

    #item-holder {
        margin-right:0;
    }

    .page_content {
        width:100%;
        margin:0 auto;
    }

    .page_table_header {
        font-size:8px;
    }

    .page_table_cell {
        padding:2px;
        font-size:8px;
    }

    .nowrap {
        white-space:normal;
    }

    .element_left {
        padding:3px;
        font-size:11px;
    }

    .element_right {
        font-size:10px;
        padding:3px;
    }

    .profile_image_element_right img {
        width:190px;
        text-align:center;
    }

    .profile_menu_entry {
        padding:8px;
        margin-bottom:3px;
    }

    .profile_menu {
        padding:0 0 0 5px;
        margin:0;
    }

    .block {
        padding:6px;
        margin:0;
    }

    .form_select_item_jumper {
        width:50%;
    }

    .upload_button {
        font:bold 10px Verdana,sans-serif;
        height:20px;
        padding:6px 6px 0 6px;
        margin:0;
    }

    .create_img {
        height:20px;
        width:20px;
    }

    .update_img {
        height:20px;
        width:20px;
    }

    .delete_img {
        height:20px;
        width:20px;
    }

    .download_img {
        height:20px;
        width:20px;
    }

    /* Tab Bar */
    .page_tab_bar_holder {
        width:100%;
        border-bottom:0;
        padding:0 12px 9px 0;
    }

    .page_tab_bar_spacer {
        height:0;
    }

    .page_tab {
        float:left;
        list-style:none;
        margin:3px 6px 3px 0;
        color:#000;
        text-transform:capitalize;
        font-size:12px;
        padding:3px;
        text-align:center;
        border-radius:0;
    }

    .page_tab a {
        text-decoration:none;
    }

    .page_tab_first {
        margin-left:0;
    }

    .page_tab_last {
        color:#000;
    }

    .page_tab_active {
        border:0;
    }

    .info_img {
        display:none;
    }

    .gallery_img {
        width:100%;
    }

    .item {
        padding:6px;
        font-size:12px;
    }

    section#profile .col8 > div {
        padding-left:0 !important;
    }

    .index_list.clearfix > div {
        width:800%;
    }

    .index {
        min-height:0;
    }

    .index h1 {
        font-size:18px;
    }

    .index .read_more {
        margin:0;
    }

    .texts p {
        font-size:12px;
    }

    .texts .wrap {
        top:46%;
    }

    .texts .wrap > div {;
        width:300px;
    }

    .features {
        padding:100px 0 70px;
    }

    .features > h2 {
        font-size:20px;
        width:80%;
    }

    .feature_text ul {
        font-size:18px;
    }

    .index_button {
        margin:2em auto 0;
    }

    .index ul.slidesjs-pagination {
        bottom:50px;
    }

    .slidesjs-previous.slidesjs-navigation,.prev {
        left:10px;
    }

    .slidesjs-next.slidesjs-navigation,.next {
        right:10px;
    }

    .hover .wrap {
        max-width:90%;
    }

    a.read_more {
        padding:5px;
        width:70px;
    }

    .index_item h2 {
        font-size:14px;
    }

    .texts .wrap > div {
        width:90%;
    }

    .largeScreen {
        display:none;
    }

    .smallScreen {
        display:block;
    }

    .social > h2 {
        font-size:11px;
    }

    #horizontal .hideshow li a {
        font-size:12px;
    }

    .likers_box {
        width:80% !important;
        height:360px !important;
    }

    .likers_box > .item {
        width:100% !important;
        height:300px !important;
        overflow:auto !important;
    }

    #mention_modal {
        width:95vw;
        height:200px;
    }

    .item .like_button_box,.item .dislike_button_box {
        min-width:50px;
        padding:0 15px 15px;
    }

    .action_buttons {
        float:left;
    }

    section#profile {
        padding:40px 10px 0;
    }

    .profile_name {
        left:77px;
    }

    #profile .block {
        padding:0;
    }

    #profile_header .profile_name {
        font-size:24px;
        left:80px;
    }

    #menu .right.large {
        margin:0;
    }

    .profile_image {
        max-width:50px;
    }

    .profile_data.profile {
        left:70px;
        min-width:210px;
    }

    .profile_data.profile li {
        font-size:20px;
    }

    #horizontal a {
        border-left:1px solid #FFF;
        padding:3px 20px;
    }

    .hello {
        padding:100px 0 0;
    }

    .welcome h1 {
        font-size:24px;
        font-weight:600;
    }

    .welcome .family-login-wordmark {
        font-size:28px;
        margin-top:8px;
    }

    .welcome .col6 .wrap > ul {
        margin:0 1em;
    }

    .welcome {
        min-height:500px;
        height:calc(100vh - 30px);
    }

    .features h2 {
        font-size:26px;
        margin:0 auto;
        font-weight:500;
    }

    .features h3 {
        font-size:22px;
        margin:1em 0 10px;
        font-weight:500;
    }

    .feature_text.right {
        text-align:left;
    }

    .feature_text p {
        font-size:16px;
    }

    .timeline_wrap {
        padding:2px 0;
    }

    .form_button.form_help_button {
        padding:7px;
    }

    .form_select_item_jumper {
        width:110px;
    }

    #user-notification-select {
        width:auto !important;
    }

    .jrform .upload_button {
        line-height:normal;
    }

    .welcome .col6 li {
        list-style:outside none disc;
        padding:5px 10px;
    }

    .mobile_more {
        display:none;
        position:absolute;
        right:49px;
        top:8px;
    }

    .mobile_more_button {
        display:block;
    }

    /* Scroll Up Icon */
    .scrollup {
        bottom:50px;
        right:10px;
    }

    #profile .col9 > div {
        padding:0;
    }
}

@media handheld,only screen and (max-width:767px) {
    .element_left {
        display:none;
    }

    .element_right {
        font-size:10px;
        padding:0 0 20px;
    }

    .form_help_button {
        top:12px;
        right:0;
        padding:4px 0;
        width:24px;
        text-align:center;
    }

    #content .form_text {
        width:83%;
    }

    #content .form_select {
        width:86%;
    }

    .form_text.form_text_search {
        margin-bottom:10px;
    }

    #error_log {
        width:90vw;
    }

    .image {
        margin:0 1em 1em 0;
    }

    .col4.last > .box {
        margin:0 0 0 0;
    }

    .form_select_and_text_tag {
        display:none;
    }

    .form_select_and_text_select {
        margin-bottom:10px;
    }

    #header_content > div > div:last-child ul {
        float:right;
    }

    .form_time {
        margin:2px;
    }

    .form_date {
        width:83%;
        margin-bottom:10px !important;
    }

    .page_content .form_textarea {
        width:83.5%;
    }

    .menu_pad {
        padding:0 1em;
    }

    .form_label {
        display:block;
        padding:2px;
        text-transform:capitalize;
    }

    .form_editor_holder {
        width:308px;
        padding-right:2px;
        overflow:hidden;
    }

    .new_login {
        border-radius:0;
        background:none;
        box-shadow:none;
    }

    .image {
        margin:0;
    }

    .new_login {
        margin-top:60px;
    }
}


/* skins/family/css/form_input.css */


/* @title Text Input */
/* @help Format for Text Input form elements - Elastic 2 / profile-aligned tokens */
.form_text {
    box-sizing:border-box;
    font-family:var(--jr-font,'Nunito Sans',sans-serif);
    color:var(--jr-text,#0f172a);
    font-size:15px;
    width:100%;
    max-width:500px;
    padding:8px 12px;
    margin:4px 4px 4px 0;
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    vertical-align:middle;
    min-height:40px;
    transition:border-color var(--jr-transition,0.2s ease),box-shadow var(--jr-transition,0.2s ease);
}

.form_text:hover {
    border-color:var(--jr-border-strong,#cbd5e1);
}

.form_text:focus {
    outline:none;
    border-color:var(--jr-accent,#0284c7);
    box-shadow:0 0 0 3px var(--jr-accent-soft,#e0f2fe);
}

/* @title Range Input */
.form_range {
    color:var(--jr-text,#0f172a);
    font-size:14px;
    padding:5px;
    margin:0 2px;
    background-color:transparent;
    border:0;
    vertical-align:middle;
}

/* @title Date Input */
.form_date {
    font-family:var(--jr-font,'Nunito Sans',sans-serif);
    color:var(--jr-text,#0f172a);
    font-size:15px;
    width:100%;
    max-width:300px;
    min-height:40px;
    padding:8px 12px;
    margin:4px 4px 4px 0;
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    vertical-align:middle;
    transition:border-color var(--jr-transition,0.2s ease),box-shadow var(--jr-transition,0.2s ease);
}

.form_date:focus {
    outline:none;
    border-color:var(--jr-accent,#0284c7);
    box-shadow:0 0 0 3px var(--jr-accent-soft,#e0f2fe);
}

/* @title Style Editor input */
.style-input {
    font-family:var(--jr-font,sans-serif);
    color:var(--jr-text,#0f172a);
    font-size:12px;
    padding:4px 8px;
    margin:0;
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,6px);
}

.style-reset {
    top:4px;
    right:34px;
}

/* @title Input Disabled */
.form_text[disabled="disabled"],
.form_text[readonly="readonly"],
.form_date[disabled="disabled"],
.form_date[readonly="readonly"] {
    background:var(--jr-bg-muted,#f8fafc);
    color:var(--jr-text-muted,#64748b);
    border-color:var(--jr-border,#e2e8f0);
    cursor:not-allowed;
}

.form_text_search {
    width:100%;
    max-width:45%;
}

.tox-tinymce {
    border-radius:var(--jr-radius-sm,8px) !important;
    border-color:var(--jr-border,#e2e8f0) !important;
}


/* skins/family/css/form_select.css */


select:not([multiple]) {
    background-color:var(--jr-bg-surface,#fff);
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 12px center;
    background-size:12px;
    padding-right:36px;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    outline:none;
}

select::-ms-expand {
    display:none;
}

select[size] {
    height:unset;
    background-image:unset;
    padding-right:8px;
}

/* @title Select */
.form_select {
    font-family:var(--jr-font,'Nunito Sans',sans-serif);
    color:var(--jr-text,#0f172a);
    font-size:15px;
    width:100%;
    max-width:500px;
    padding:8px 36px 8px 12px;
    margin:4px 4px 4px 0;
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    vertical-align:middle;
    min-height:40px;
    transition:border-color var(--jr-transition,0.2s ease),box-shadow var(--jr-transition,0.2s ease);
}

.form_select:hover {
    border-color:var(--jr-border-strong,#cbd5e1);
}

.form_select:focus {
    border-color:var(--jr-accent,#0284c7);
    box-shadow:0 0 0 3px var(--jr-accent-soft,#e0f2fe);
    background-color:var(--jr-bg-surface,#fff);
}

.form_select[disabled="disabled"],
.form_select[readonly="readonly"] {
    background:var(--jr-bg-muted,#f8fafc) !important;
    color:var(--jr-text-muted,#64748b) !important;
    cursor:not-allowed;
}

.page_banner_right .form_select {
    margin-right:0;
}

.form_select_and_text_select {
    font-family:var(--jr-font,sans-serif);
    width:200px;
    max-width:100%;
    margin-right:12px;
}

.form_select_and_text_tag {
    font-family:var(--jr-font,sans-serif);
    text-transform:capitalize;
    margin:7px;
    color:var(--jr-text-secondary,#334155);
}

.form_select_and_text_text {
    min-height:40px;
    width:198px;
    max-width:100%;
}

.form_select_mobile_label {
    font-size:13px;
    text-transform:capitalize;
    margin-left:5px;
    color:var(--jr-text-secondary,#334155);
}

.form_select_item_jumper {
    width:100%;
    max-width:300px;
}

.style-select {
    font-size:12px;
    padding:4px 8px;
    margin:0;
    border-radius:var(--jr-radius-sm,6px);
    border:1px solid var(--jr-border,#e2e8f0);
}

.form_admin_search {
    margin:3px;
    padding:5px;
    font-style:italic;
    color:var(--jr-text-muted,#94a3b8);
}

.form_admin_search_hl {
    font-style:normal;
    color:var(--jr-text,#0f172a);
}

select:focus {
    border-width:1px;
    border-style:solid;
    border-color:var(--jr-accent,#0284c7);
    background-color:var(--jr-bg-surface,#fff);
}

.form_time {
    margin-left:12px;
    width:184px;
    max-width:100%;
    min-width:95px;
    vertical-align:middle;
}

optgroup {
    font-style:normal;
    text-transform:capitalize;
    padding-left:3px;
    color:var(--jr-text-secondary,#334155);
}

option {
    text-transform:initial;
}


/* skins/family/css/form_layout.css */


/* Preserve keyboard focus rings (design-tokens.css); remove outline only for mouse focus */
:focus:not(:focus-visible) {
    outline:none;
}

::-moz-focus-inner {
    border:0;
}

form {
    margin-bottom:0;
}

/* @title Element Left */
.element_left {
    text-align:right;
    text-transform:capitalize;
    padding:8px 12px 12px 0;
    width:23%;
    vertical-align:top;
    color:var(--jr-text-secondary,#334155);
    font-size:14px;
    font-weight:500;
}

.tool_element_left {
    padding:8px;
}

/* @title Element Right */
.element_right {
    width:77%;
    vertical-align:top;
    color:var(--jr-text,#0f172a);
}

.element_right .form_button {
    margin:4px 8px 4px 0;
}

.tool_element_right {
    padding:6px 8px;
}

.image_right img {
    margin-left:4px;
    border-radius:var(--jr-radius-sm,8px);
    border:1px solid var(--jr-border,#e2e8f0);
}

.element_right a {
    color:var(--jr-link,#0369a1);
}

.element_right a:hover {
    color:var(--jr-link-hover,#0c4a6e);
}

.form_input_left {
    padding-top:12px;
}

.form_input_right {
    padding:6px 0 10px 0;
}

.sublabel {
    font-size:12px;
    text-transform:none;
    color:var(--jr-text-muted,#64748b);
    font-weight:400;
    line-height:1.4;
    margin-top:4px;
    display:block;
}

.form_help_button {
    position:absolute;
    top:6px;
    right:0;
}

/* @title Form Help */
.form_help {
    padding:0 4px 12px 4px;
}

/* @title Form Help Drop */
.form_help_drop {
    margin-top:8px;
    padding-top:10px;
    background-color:var(--jr-bg-muted,#f8fafc);
    width:100%;
    box-shadow:inset 0 1px 3px rgba(15,23,42,0.06);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
}

.form_help_drop_left {
    width:95%;
    padding:12px 18px 18px 18px;
    font-size:14px;
    text-align:left;
    text-transform:none;
    color:var(--jr-text-secondary,#334155);
    line-height:1.55;
}

.form_help_drop_right {
    width:5%;
    padding:12px 18px 18px 18px;
}

.form_help_default {
    display:inline-block;
    margin-top:12px;
}

.form_help_small {
    display:inline-block;
    font-size:11px;
    margin-top:10px;
    color:var(--jr-text-muted,#94a3b8);
    font-style:italic;
}

.form_submit_box {
    padding-top:10px;
}

/* @title Form Submit */
.form_submit_section {
    background:linear-gradient(180deg,var(--jr-bg-muted,#f8fafc) 0%,#f1f5f9 100%);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    padding:16px;
    text-align:center;
    margin-top:16px;
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
}

#form_submit_indicator {
    display:none;
    margin-right:10px;
    vertical-align:middle;
}


/* skins/family/css/form_button.css */


/* @title Form Button */
.form_button {
    font-family:var(--jr-font,'Nunito Sans',sans-serif);
    background:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border-strong,#cbd5e1);
    border-radius:var(--jr-radius-sm,8px);
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
    color:var(--jr-text-secondary,#334155);
    height:auto;
    margin:0;
    padding:8px 16px;
    text-transform:capitalize;
    vertical-align:middle;
    font-weight:500;
    font-size:15px;
    cursor:pointer;
    user-select:none;
    transition:background-color var(--jr-transition,0.2s ease),border-color var(--jr-transition,0.2s ease),
        color var(--jr-transition,0.2s ease),box-shadow var(--jr-transition,0.2s ease);
}

.form_button_icon {
    color:var(--jr-text-secondary,#334155);
    font-size:20px;
    line-height:28px !important;
    user-select:none;
}

.form_icon_button {
    background:var(--jr-bg-surface,#fff);
    width:32px;
    height:32px;
    border:1px solid var(--jr-border-strong,#cbd5e1);
    border-radius:var(--jr-radius-sm,8px);
    user-select:none;
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
    transition:background-color var(--jr-transition,0.2s ease),border-color var(--jr-transition,0.2s ease);
}

.form_icon_button:hover {
    background-color:var(--jr-accent-soft,#e0f2fe);
    border-color:var(--jr-accent,#0284c7);
    color:var(--jr-link-hover,#0c4a6e) !important;
}

.page_banner_right .form_button {
    margin-left:6px;
}

.page_banner_right .form_icon_button {
    margin-left:6px;
}

.search_area_right .form_button {
    margin-left:6px;
}

.follow_button {
    border-radius:var(--jr-radius-sm,8px);
}

.upload_button {
    margin-top:3px !important;
    padding:8px 12px;
    min-height:initial;
}

#pm_chat_file .upload_button {
    margin-top:2px !important;
    padding:8px;
}

#pm_forum_file .upload_button {
    padding:8px;
}

#bbcode_help_button input {
    padding:8px 12px;
    margin:3px 0 0 3px;
}

.form_button:hover {
    background-color:var(--jr-bg-muted,#f8fafc);
    border-color:var(--jr-accent-muted,#bae6fd);
    color:var(--jr-link-hover,#0c4a6e);
}

.form_button_disabled {
    color:var(--jr-text-muted,#94a3b8);
    border:solid 1px var(--jr-border,#e2e8f0);
    background:var(--jr-bg-muted,#f8fafc);
    cursor:not-allowed;
    box-shadow:none;
}

.form_button_disabled:hover {
    background-color:var(--jr-bg-muted,#f8fafc);
    color:var(--jr-text-muted,#94a3b8);
    border-color:var(--jr-border,#e2e8f0);
}

.form_button a,
.form_button_anchor a,
.form_button_anchor:hover a {
    text-decoration:none;
}

.sprite_icon {
    background:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border-strong,#cbd5e1);
    border-radius:var(--jr-radius-sm,8px);
    color:var(--jr-text-secondary,#334155);
    cursor:pointer;
    display:inline-block;
    margin:0;
    padding:4px;
    vertical-align:middle;
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
    transition:background-color var(--jr-transition,0.2s ease),border-color var(--jr-transition,0.2s ease);
}

.sprite_icon:hover {
    background:var(--jr-accent-soft,#e0f2fe);
    border-color:var(--jr-accent,#0284c7);
    color:var(--jr-link-hover,#0c4a6e);
}

.sprite_icon_hilighted {
    background:var(--jr-accent-soft,#e0f2fe);
    border-color:var(--jr-accent,#0284c7);
}

/* Primary actions */
.form_submit,
input.form_submit,
button.form_submit,
.form_button.form_button_primary {
    background:var(--jr-accent);
    background-image:none;
    border:1px solid var(--jr-accent);
    color:#fff !important;
    border-radius:var(--jr-radius-sm);
    font-weight:600;
    padding:10px 18px;
    box-shadow:var(--jr-shadow-sm);
    transition:background-color var(--jr-transition),border-color var(--jr-transition),box-shadow var(--jr-transition);
}

.form_submit:hover,
input.form_submit:hover,
button.form_submit:hover,
.form_button.form_button_primary:hover {
    background:var(--jr-accent-hover);
    border-color:var(--jr-accent-hover);
    color:#fff !important;
}


/* skins/family/css/form_notice.css */


.page_notice_drop {
    background:transparent;
}

/* @title Form Message Box */
.page_notice {
    text-align:left;
    padding:12px 14px;
    margin:8px 0;
    font-size:14px;
    line-height:1.5;
    border-radius:var(--jr-radius-sm,8px);
    border:1px solid transparent;
}

.form_notice {
    text-align:center;
    padding:10px;
    display:none;
}

/* Semantic notices - soft fills aligned with profile / tokens */
.notice {
    background-color:var(--jr-accent-soft,#e0f2fe) !important;
    border:1px solid var(--jr-accent-muted,#bae6fd) !important;
    color:var(--jr-link-hover,#0c4a6e) !important;
}

.warning {
    background-color:#fef3c7 !important;
    border:1px solid #fcd34d !important;
    color:#92400e !important;
}

.error {
    background-color:#fee2e2 !important;
    border:1px solid #fecaca !important;
    color:#991b1b !important;
}

.success {
    background-color:#dcfce7 !important;
    border:1px solid #bbf7d0 !important;
    color:#166534 !important;
}

.field-hilight {
    background-color:#fef3c7 !important;
    border:1px solid #fcd34d !important;
    box-shadow:0 0 0 2px rgba(245,158,11,0.2);
}


/* skins/family/css/form_element.css */


.form_radio_option {
    display:inline;
    padding-right:32px;
    font-size:14px;
    color:var(--jr-text-secondary,#334155);
}

.form_radio {
    vertical-align:text-top;
    width:18px;
    height:18px;
    accent-color:var(--jr-accent,#0284c7);
}

.form_textarea {
    font-family:var(--jr-font,'Nunito Sans',sans-serif);
    color:var(--jr-text,#0f172a);
    font-size:15px;
    width:100%;
    max-width:500px;
    height:120px;
    min-height:100px;
    padding:10px 12px;
    margin:4px 4px 4px 0;
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    line-height:1.5;
    resize:vertical;
    transition:border-color var(--jr-transition,0.2s ease),box-shadow var(--jr-transition,0.2s ease);
}

.form_textarea:hover {
    border-color:var(--jr-border-strong,#cbd5e1);
}

.form_textarea:focus {
    outline:none;
    border-color:var(--jr-accent,#0284c7);
    box-shadow:0 0 0 3px var(--jr-accent-soft,#e0f2fe);
    background-color:var(--jr-bg-surface,#fff);
}

.form_textarea[disabled="disabled"],
.form_textarea[readonly="readonly"] {
    background:var(--jr-bg-muted,#f8fafc);
    color:var(--jr-text-muted,#64748b);
    cursor:not-allowed;
}

textarea:focus {
    background-color:var(--jr-bg-surface,#fff);
    border-color:var(--jr-accent,#0284c7);
    border-width:1px;
    border-style:solid;
}

.form_checkbox {
    vertical-align:middle;
    font-size:16px;
    margin:6px;
    width:18px;
    height:18px;
    border-radius:4px;
    accent-color:var(--jr-accent,#0284c7);
}

.checkbox_right .form_checkbox {
    margin:10px 0 8px 6px;
}

.form_checkbox_mobile_label {
    font-size:13px;
    color:var(--jr-text-secondary,#334155);
}

.form_option_list_text {
    font-size:14px;
    color:var(--jr-text-secondary,#334155);
}

.form_element_disabled {
    border-width:1px;
    border-style:solid;
    border-color:var(--jr-border,#e2e8f0);
    background-color:var(--jr-bg-muted,#f8fafc);
    color:var(--jr-text-muted,#94a3b8);
}

.CodeMirror {
    background:var(--jr-bg-surface,#fff);
    padding:0;
    font-size:13px;
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius-sm,8px);
    margin-left:2px;
}

.style-color {
    width:24px;
    height:20px;
    margin:0 8px;
    border:0;
    border-radius:4px;
    cursor:pointer;
}

.style-color-transparent {
    height:18px;
    border-width:1px;
    border-style:solid;
    border-color:var(--jr-border-strong,#cbd5e1);
}

.form_age_range {
    width:auto;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="number"],
input[type="search"],
input[type="tel"] {
    box-sizing:border-box;
}

input.form_text,
input.form_date,
input[type="text"].form_text {
    min-height:40px;
}

select.form_select {
    box-sizing:border-box;
}


/* skins/family/css/admin_menu.css */


/**
 * jrElastic2 - ACP (admin.tpl) styling aligned with profile hub / design tokens
 * Scope:#admin_container so global jrCore .accordion / .item-row defaults are overridden
 */

#admin_container {
    font-family:var(--jr-font,inherit);
    color:var(--jr-text,#0f172a);
    --acp-radius:var(--jr-radius-sm,8px);
    width:100%;
    max-width:none;
    box-sizing:border-box;
}

/* Let ACP use horizontal space (skin #content is otherwise ~1260px capped).
   Extra top padding:fixed #header (header.css z-index 200) still occupies the top of the
   viewport; public_surfaces.css only adds padding-top on pages *without* admin/dashboard,
   so ACP was effectively starting under the bar — the narrow expand rail sat in the
   header’s hit target and clicks never reached admin_acp_layout.js. */
#content:has(#admin_container),
#content:has(#dashboard_container) {
    max-width:none;
    width:100%;
    box-sizing:border-box;
    padding-top:max(3.25rem,calc(var(--jr-header-height,40px) + 28px));
}

#admin_container .row {
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-start;
    gap:0 16px;
    overflow:visible;
    width:100%;
    max-width:none;
}

#admin_container .row .col9 {
    float:none;
}

#admin_container .admin-nav-col,
#admin_container .admin-work-col,
#admin_container .admin-help-col {
    float:none;
}

#admin_container .admin-nav-col.acp-left-nav-root {
    display:flex;
    flex-direction:row;
    align-items:stretch;
    flex:0 0 312px;
    width:312px;
    max-width:min(312px,100%);
    min-width:0;
    box-sizing:border-box;
}

#admin_container.acp-left-nav--collapsed .admin-nav-col.acp-left-nav-root {
    flex:0 0 44px;
    width:44px;
    max-width:44px;
}

#admin_container .admin-work-col {
    flex:1 1 0%;
    min-width:0;
    width:auto;
    max-width:none;
    box-sizing:border-box;
}

#admin_container .admin-help-col {
    flex:0 0 280px;
    width:280px;
    max-width:min(280px,100%);
    min-width:0;
    box-sizing:border-box;
}

#admin_container.acp-help-sidebar--collapsed .admin-help-col {
    flex:0 0 48px;
    width:48px;
    max-width:48px;
}

/* Left nav:collapse rail — single edge,no card frame (avoids double border with row gap) */
#admin_container .acp-left-nav-rail {
    display:none;
    flex:0 0 44px;
    width:44px;
    max-width:44px;
    flex-direction:column;
    align-items:center;
    padding-top:12px;
    box-sizing:border-box;
    background:transparent;
    border:none;
    border-right:1px solid var(--jr-border,#e2e8f0);
    border-radius:0;
    box-shadow:none;
}

#admin_container.acp-left-nav--collapsed .acp-left-nav-rail {
    display:flex;
}

#admin_container .acp-left-nav-expand {
    display:flex;
    align-items:center;
    justify-content:center;
    width:2rem;
    height:2rem;
    margin:0;
    padding:0;
    border:none;
    border-radius:var(--acp-radius,8px);
    background:transparent;
    color:var(--jr-text-secondary,#475569);
    line-height:0;
    cursor:pointer;
    transition:background var(--jr-transition,0.2s ease),color var(--jr-transition,0.2s ease);
}

#admin_container .acp-left-nav-expand:hover {
    background:var(--jr-bg-muted,#f1f5f9);
    color:var(--jr-accent,#0284c7);
}

#admin_container .acp-left-nav-expand__icon {
    display:block;
    pointer-events:none;
}

#admin_container .acp-left-nav-expand:focus-visible {
    outline:2px solid var(--jr-accent,#0284c7);
    outline-offset:2px;
}

#admin_container .acp-left-nav-panel {
    flex:1 1 auto;
    min-width:0;
    width:100%;
}

#admin_container.acp-left-nav--collapsed .acp-left-nav-panel {
    display:none;
}

#admin_container .acp-left-nav-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:10px 12px;
    border-bottom:1px solid var(--jr-border,#e2e8f0);
    background:var(--jr-bg-muted,#f8fafc);
}

#admin_container .acp-left-nav-toolbar-label {
    font-size:11px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--jr-text-secondary,#334155);
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

#admin_container .acp-left-nav-collapse {
    flex-shrink:0;
    border:1px solid var(--jr-border,#e2e8f0);
    background:var(--jr-bg-surface,#fff);
    color:var(--jr-text,#0f172a);
    border-radius:var(--acp-radius,8px);
    padding:0.25rem 0.5rem;
    cursor:pointer;
    font-size:1.1rem;
    line-height:1;
    min-width:2rem;
    min-height:2rem;
}

#admin_container .acp-left-nav-collapse:focus-visible {
    outline:2px solid var(--jr-accent,#0284c7);
    outline-offset:2px;
}

/* Left:module / skin list card (matches profile right sidebar panel) */
#admin_container .item-list {
    background:linear-gradient(180deg,#fafbfc 0%,#fff 100%);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius,10px);
    overflow:visible;
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
}

#admin_container .item-list > table {
    width:100%;
}

/* Dashboard / modules / skins tabs */
#admin_container .page_tab_bar_holder {
    border-bottom:1px solid var(--jr-border,#e2e8f0);
    background:var(--jr-bg-muted,#f8fafc);
}

#admin_container .page_tab_bar {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0;
    padding:12px 12px 14px;
    list-style:none;
    align-items:center;
}

#admin_container .page_tab {
    float:none;
    margin:0;
    padding:0;
    list-style:none;
    background:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--acp-radius);
    box-shadow:none;
}

#admin_container .page_tab:hover {
    background:var(--jr-bg-muted,#f8fafc);
    border-color:var(--jr-border-strong,#cbd5e1);
}

#admin_container .page_tab:hover a {
    color:var(--jr-link-hover,#0c4a6e);
}

#admin_container .page_tab a {
    padding:8px 14px;
    color:var(--jr-text-secondary,#334155);
    font-size:14px;
    font-weight:500;
    text-decoration:none;
    text-transform:lowercase;
}

#admin_container .page_tab_first {
    margin-left:0;
}

#admin_container .page_tab_active {
    background:linear-gradient(135deg,var(--jr-accent-soft,#e0f2fe) 0%,var(--jr-bg-muted,#f8fafc) 100%);
    border-color:var(--jr-accent,#0284c7);
    box-shadow:inset 0 0 0 1px rgba(2,132,199,0.12);
}

#admin_container .page_tab_active a {
    color:var(--jr-link-hover,#0c4a6e);
    font-weight:600;
}

#admin_container .page_tab_active:hover {
    background:linear-gradient(135deg,var(--jr-accent-soft,#e0f2fe) 0%,#f1f5f9 100%);
}

#admin_container .page_tab_active:hover a {
    color:var(--jr-link-hover,#0c4a6e);
}

/* Accordion list */
#admin_container #item-holder {
    margin:0;
    padding:0 8px 12px;
}

#admin_container #item-holder .accordion {
    margin:0;
    padding-top:8px;
}

#admin_container #item-holder .accordion > a {
    display:block;
    text-decoration:none;
    color:inherit;
}

#admin_container #item-holder .accordion > a > dt.admin_section_header:not(.admin_section_search) {
    margin:0 0 4px 0;
    padding:10px 12px;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.05em;
    color:var(--jr-text-secondary,#334155);
    background:var(--jr-bg-muted,#f8fafc);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--acp-radius);
    cursor:pointer;
    transition:background var(--jr-transition,0.2s ease),border-color var(--jr-transition,0.2s ease);
}

#admin_container #item-holder .accordion > a:hover > dt.admin_section_header:not(.admin_section_search) {
    background:#f1f5f9;
    border-color:var(--jr-accent-muted,#bae6fd);
    color:var(--jr-accent,#0284c7);
}

#admin_container #item-holder dt.admin_section_search {
    margin:0 0 10px 0;
    padding:10px 12px;
    background:var(--jr-bg-surface,#fff);
    border:none;
    border-bottom:1px solid var(--jr-border,#e2e8f0);
    border-radius:0;
}

#admin_container #item-holder .admin_section_search input.form_admin_search,
#admin_container #item-holder .admin_section_search .form_text {
    width:100%;
    margin:0;
    padding:8px 12px;
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--acp-radius);
    font-size:14px;
    color:var(--jr-text-secondary,#334155);
    background:var(--jr-bg-surface,#fff);
    box-sizing:border-box;
    transition:border-color var(--jr-transition,0.2s ease);
}

#admin_container #item-holder .admin_section_search input.form_admin_search:focus,
#admin_container #item-holder .admin_section_search .form_text:focus {
    outline:none;
    border-color:var(--jr-accent,#0284c7);
}

#admin_container #item-holder dd {
    padding:4px 0 12px 0;
    margin:0;
    font-size:13px;
    background:transparent;
}

#admin_container #item-holder dd a {
    display:block;
    text-decoration:none;
    color:inherit;
    border-radius:var(--acp-radius);
    margin-bottom:2px;
}

#admin_container #item-holder dd a:hover .item-row:not(.item-row-disabled) {
    background-color:var(--jr-bg-muted,#f8fafc);
}

/* Module / skin rows (table display inside anchor) */
#admin_container .item-row {
    width:100%;
    display:table-row;
    cursor:pointer;
    min-height:48px;
    height:48px;
    background-color:var(--jr-bg-surface,#fff);
    border-bottom:1px solid #f1f5f9;
}

#admin_container .item-row-active {
    background-color:var(--jr-accent-soft,#e0f2fe);
    box-shadow:inset 3px 0 0 var(--jr-accent,#0284c7);
}

#admin_container .item-row-disabled {
    opacity:0.72;
    cursor:pointer;
}

#admin_container .item-row-disabled:hover {
    background-color:var(--jr-bg-surface,#fff);
}

#admin_container .item-icon {
    display:table-cell;
    padding:6px 8px 6px 10px;
    vertical-align:middle;
}

#admin_container .item-entry {
    width:100%;
    display:table-cell;
    padding:8px 10px;
    font-size:14px;
    font-weight:500;
    color:var(--jr-text,#0f172a);
    vertical-align:middle;
}

#admin_container .item-enabled {
    display:table-cell;
    padding-right:10px;
    vertical-align:middle;
}

#admin_container .item-disabled {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#92400e;
    background:#fef3c7;
    font-size:9px;
    font-weight:700;
    padding:2px 6px;
    border:1px solid #fbbf24;
    border-radius:999px;
}

#admin_container .item-active {
    display:table-cell;
    background-color:transparent;
    font-size:11px;
    padding:6px;
}

/* Main work area:elevated surface like profile main column */
#admin_container #item-work {
    background-color:var(--jr-bg-surface,#fff);
    border:1px solid var(--jr-border,#e2e8f0);
    border-radius:var(--jr-radius,10px);
    box-shadow:var(--jr-shadow-sm,0 1px 2px rgba(15,23,42,0.05));
    padding:16px 18px 24px;
    min-height:280px;
    color:var(--jr-text,#0f172a);
}

/* Title row above ACP body — same structure/classes as amDevCore module_shell.tpl header */
#admin_container #item-work .acp-module-page-head.amDevSuite-chrome {
    --amdev-bg:#ffffff;
    --amdev-surface:#f4f6f8;
    --amdev-border:#d8dee6;
    --amdev-text:#111111;
    --amdev-muted:#5c6570;
    margin:0 0 1.25rem 0;
    padding:0 0 0.875rem 0;
    border-bottom:1px solid var(--amdev-border);
    background:transparent;
    color:var(--amdev-text);
    box-sizing:border-box;
}

#admin_container #item-work .acp-module-page-head .amDevModule-shell__header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:1rem;
    padding:0;
    margin:0;
    border-bottom:none;
    flex-wrap:wrap;
}

#admin_container #item-work .acp-module-page-head .amDevModule-shell__header-primary {
    flex:1 1 200px;
    min-width:0;
}

#admin_container #item-work .acp-module-page-head .amDevModule-shell__title {
    margin:0;
    font-size:1.35rem;
    font-weight:600;
    color:var(--amdev-text);
    letter-spacing:-0.02em;
}

#admin_container #item-work .acp-module-page-head .amDevModule-shell__meta {
    margin:0.35rem 0 0;
    font-size:0.875rem;
    color:var(--amdev-muted);
    line-height:1.45;
}

#admin_container #item-work a {
    color:var(--jr-link,#0369a1);
}

#admin_container #item-work a:hover {
    color:var(--jr-link-hover,#0c4a6e);
}

/* Admin content tables → token palette (profile-adjacent) */
#admin_container #item-work .page_table {
    border-radius:var(--acp-radius);
    border-spacing:0;
    background-color:var(--jr-border,#e2e8f0);
    color:var(--jr-text,#0f172a);
    overflow:hidden;
}

#admin_container #item-work .page_table_header {
    background:linear-gradient(180deg,#f8fafc 0%,#f1f5f9 100%);
    color:var(--jr-text-secondary,#334155);
    font-weight:600;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:0.04em;
    padding:10px 8px;
}

#admin_container #item-work .page_table_header a {
    color:var(--jr-link,#0369a1);
}

#admin_container #item-work .page_table_row {
    background-color:var(--jr-bg-surface,#fff);
}

#admin_container #item-work .page_table_row_alt {
    background-color:var(--jr-bg-muted,#f8fafc);
}

#admin_container #item-work .page_table_cell {
    padding:10px 8px;
    font-size:14px;
    color:var(--jr-text-secondary,#334155);
    border-top:1px solid var(--jr-border,#e2e8f0);
}

#admin_container #item-work .page_table_footer,
#admin_container #item-work .page_table_pager {
    background-color:var(--jr-bg-muted,#f8fafc);
    color:var(--jr-text-secondary,#334155);
}

#admin_container #item-work .page_note {
    background:var(--jr-accent-soft,#e0f2fe);
    border:1px solid var(--jr-accent-muted,#bae6fd);
    color:var(--jr-text-secondary,#334155);
    border-radius:var(--acp-radius);
    font-size:14px;
    padding:12px 14px;
    margin:12px 0;
}

#admin_container #item-work .page_section_header {
    background:var(--jr-bg-muted,#f8fafc);
    border:1px solid var(--jr-border,#e2e8f0);
    border-left:3px solid var(--jr-accent,#0284c7);
}

/*
 * amDevCore module_shell inside ACP:jrElastic2 already provides a right help rail.
 * The shell’s own sidebar + CSS grid inside a table cell can squeeze the main column
 * to zero or break layout — flatten to a single column and hide the duplicate rail.
 */
/*
 * Only the jrCore wrapper table (one tbody → one tr → td.page_custom). Descendant
 * selectors were incorrectly styling every nested tr/tbody (e.g. installer’s inner
 * table),which broke or hid the installer body.
 */
#admin_container #item-work table.page_content:has(.amDevModule-shell) {
    display:block;
    width:100%;
    max-width:100%;
    border-collapse:separate;
}

#admin_container #item-work table.page_content:has(.amDevModule-shell) > tbody {
    display:block;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
}

#admin_container #item-work table.page_content:has(.amDevModule-shell) > tbody > tr {
    display:block;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
}

#admin_container #item-work table.page_content:has(.amDevModule-shell) > tbody > tr > td.page_custom {
    display:block;
    width:100%;
    max-width:100%;
    box-sizing:border-box;
}

#admin_container #item-work .amDevModule-shell {
    min-height:0;
    max-width:100%;
}

#admin_container #item-work .amDevModule-shell > header.amDevModule-shell__header {
    display:none;
}

#admin_container #item-work .amDevModule-shell__sidebar-column,
#admin_container #item-work .amDevModule-shell__sidebar-rail {
    display:none !important;
}

#admin_container #item-work .amDevModule-shell__grid {
    display:block;
    min-height:0;
}

#admin_container #item-work .amDevModule-shell__main {
    padding:0;
    width:100%;
    max-width:100%;
}

/* Right:Developer Suite–style sidebar (amDev module shell pattern) */
#admin_container .acp-help-chrome {
    --acp-amdev-bg:#ffffff;
    --acp-amdev-surface:#f4f6f8;
    --acp-amdev-border:#d8dee6;
    --acp-amdev-text:#111111;
    --acp-amdev-muted:#5c6570;
    --acp-amdev-accent-text:#0b3d5c;
}

#admin_container .acp-help-sidebar-root {
    display:flex;
    flex-direction:row-reverse;
    align-items:stretch;
    width:100%;
    max-width:280px;
    min-height:120px;
    box-sizing:border-box;
    border:1px solid var(--acp-amdev-border);
    border-radius:var(--jr-radius,10px);
    background:var(--acp-amdev-bg);
    color:var(--acp-amdev-text);
    overflow:hidden;
}

#admin_container.acp-help-sidebar--collapsed .acp-help-sidebar-root {
    flex-direction:row;
    max-width:48px;
}

#admin_container .acp-help-sidebar-rail {
    flex:0 0 0;
    width:0;
    max-width:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding-top:0.35rem;
    background:var(--acp-amdev-surface);
    box-sizing:border-box;
    transition:flex-basis 0.2s ease,max-width 0.2s ease,width 0.2s ease;
    pointer-events:none;
    border:none;
}

#admin_container.acp-help-sidebar--collapsed .acp-help-sidebar-rail {
    flex:0 0 48px;
    width:48px;
    max-width:48px;
    overflow:visible;
    pointer-events:auto;
    border-left:1px solid var(--acp-amdev-border);
}

#admin_container .acp-help-sidebar-expand {
    display:flex;
    align-items:center;
    justify-content:center;
    width:2.25rem;
    height:2.25rem;
    margin:0.25rem 0;
    padding:0;
    border:1px solid var(--acp-amdev-border);
    border-radius:4px;
    background:var(--acp-amdev-bg);
    color:var(--acp-amdev-text);
    font-size:1.35rem;
    line-height:1;
    cursor:pointer;
    visibility:hidden;
}

#admin_container.acp-help-sidebar--collapsed .acp-help-sidebar-expand {
    visibility:visible;
    transform:scaleX(-1);
}

#admin_container .acp-help-sidebar-expand:focus-visible {
    outline:2px solid #7eb8da;
    outline-offset:2px;
}

#admin_container .acp-help-sidebar {
    flex:1 1 auto;
    min-width:0;
    background:var(--acp-amdev-surface);
    display:flex;
    flex-direction:column;
    overflow:hidden;
}

#admin_container.acp-help-sidebar--collapsed .acp-help-sidebar {
    display:none;
}

#admin_container .acp-help-sidebar-header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:0.5rem;
    padding:0.45rem 0.65rem;
    border-bottom:1px solid var(--acp-amdev-border);
    background:var(--acp-amdev-bg);
    flex-shrink:0;
}

#admin_container .acp-help-sidebar-header-label {
    font-size:0.75rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:0.04em;
    color:var(--acp-amdev-muted);
    min-width:0;
    flex:1 1 auto;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

#admin_container .acp-help-sidebar-toggle {
    flex-shrink:0;
    border:1px solid var(--acp-amdev-border);
    background:var(--acp-amdev-bg);
    color:var(--acp-amdev-text);
    border-radius:4px;
    padding:0.25rem 0.5rem;
    cursor:pointer;
    font-size:1.1rem;
    line-height:1;
    min-width:2rem;
    min-height:2rem;
    transform:scaleX(-1);
}

#admin_container .acp-help-sidebar-toggle:focus-visible {
    outline:2px solid #7eb8da;
    outline-offset:2px;
}

#admin_container .acp-help-sidebar-inner {
    flex:1 1 auto;
    padding:0.75rem;
    overflow:auto;
    box-sizing:border-box;
}

/* Same tokens / typography as amDevCore module_shell.tpl (amDevSuite_theme.css) */
#admin_container .acp-help-sidebar-inner.amDevSuite-chrome {
    --amdev-bg:#ffffff;
    --amdev-surface:#f4f6f8;
    --amdev-border:#d8dee6;
    --amdev-text:#111111;
    --amdev-muted:#5c6570;
    --amdev-accent-text:#0b3d5c;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__section-title {
    font-size:0.75rem;
    text-transform:uppercase;
    letter-spacing:0.04em;
    color:var(--amdev-muted);
    margin:0.75rem 0 0.35rem;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__section-title:first-child {
    margin-top:0;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__linklist {
    list-style:none;
    margin:0;
    padding:0;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__linklist li {
    margin:0.2rem 0;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__linklist a {
    color:var(--amdev-accent-text);
    text-decoration:none;
    font-size:0.875rem;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__linklist a:hover {
    text-decoration:underline;
}

#admin_container .acp-help-sidebar-inner.amDevSuite-chrome .amDevModule-shell__meta {
    font-size:0.875rem;
    color:var(--amdev-muted);
}

@media (max-width:1023px) {
    #admin_container .row {
        flex-wrap:wrap;
    }

    #admin_container .admin-nav-col {
        flex:1 1 100%;
        width:100%;
        max-width:none;
    }

    #admin_container.acp-left-nav--collapsed .admin-nav-col.acp-left-nav-root {
        flex:1 1 100%;
        width:100%;
        max-width:none;
    }

    #admin_container.acp-left-nav--collapsed .acp-left-nav-rail {
        display:none !important;
    }

    #admin_container.acp-left-nav--collapsed .acp-left-nav-panel {
        display:block;
    }

    #admin_container .admin-work-col {
        flex:1 1 100%;
        min-width:0;
    }

    #admin_container .admin-help-col {
        flex:1 1 100%;
        width:100%;
        max-width:none;
    }

    #admin_container.acp-help-sidebar--collapsed .admin-help-col {
        flex:1 1 100%;
        width:100%;
        max-width:none;
    }

    #admin_container .acp-help-sidebar-root {
        max-width:none;
    }

    #admin_container.acp-help-sidebar--collapsed .acp-help-sidebar-root {
        flex-direction:row-reverse;
        max-width:none;
    }

    #admin_container.acp-help-sidebar--collapsed .acp-help-sidebar {
        display:flex;
    }

    #admin_container.acp-help-sidebar--collapsed .acp-help-sidebar-rail {
        display:none !important;
    }

    #admin_container .acp-help-sidebar-expand {
        visibility:hidden !important;
    }
}

#dashboard_container {
    padding:3px 3px 0 3px;
}

#info_box .page_table_cell strong {
    font-size:14px;
    text-transform:lowercase;
    font-variant:small-caps;
}

#info_box .img_scale {
    border:5px solid var(--jr-bg-surface,#fff);
    border-radius:var(--jr-radius-sm,8px);
}

.info_img {
    border-radius:26px;
    box-shadow:var(--jr-shadow-md,0 4px 20px rgba(15,23,42,0.07));
}

.info_img img {
    border-radius:16px;
}

/**
 * ACP / dashboard:footer at bottom of viewport when main content is short.
 * #footer defaults to position:absolute; bottom:0 (footer.css). With a fixed
 * #header,body height can end up shorter than the visible layout,so the
 * footer reads as “floating” mid-page. Flex column + static footer fixes it.
 */
body:has(#admin_container),
body:has(#dashboard_container) {
    min-height:100vh;
    display:flex;
    flex-direction:column;
}

body:has(#admin_container) #wrapper,
body:has(#dashboard_container) #wrapper {
    flex:1 1 auto;
    width:100%;
    /* Was reserving space for an overlaid absolute footer; footer is in-flow here */
    padding-bottom:32px;
}

body:has(#admin_container) #footer,
body:has(#dashboard_container) #footer {
    position:static;
    bottom:auto;
    flex-shrink:0;
}


/* skins/family/css/admin_log.css */


#error_log {
    font-family:Monaco,"Courier New",Courier,monospace;
    width:98%;
    padding:6px;
    margin:10px auto;
    font-size:10px;
    white-space:pre-wrap;
}

#debug_log {
    font-family:Monaco,"Courier New",Courier,monospace;
    width:98%;
    padding:6px;
    margin:10px auto;
    font-size:10px;
    white-space:pre-wrap;
}

#diff_result {
    font-family:Monaco,"Courier New",Courier,monospace;
}

/* @title Info Log */
/* @help Background color for Informational (INF) Log entries */
.log-inf {
    background-color:transparent;
    text-align:left;
}

/* @title Minor Log */
/* @help Background color for Minor (MIN) Log entries */
.log-min {
    background-color:#FC0;
    text-align:left;
}

/* @title Major Log */
/* @help Background color for Major (MAJ) Log entries */
.log-maj {
    background-color:#F90;
    text-align:left;
}

/* @title Critical Log */
/* @help Background color for Critical (CRI) Log entries */
.log-cri {
    background-color:#F60;
    text-align:left;
}

.fixed-width {
    font-family:Monaco,"Courier New",Courier,monospace;
    font-size:10px;
}

.php_Notice {
    color:#000;
}

.php_Warning {
    color:#F90;
}

.php_Fatal,.php_Parse {
    color:#F00;
}

.CodeMirror {
    font-family:Monaco,"Courier New",Courier,monospace !important;
    background:#FFF;
    padding:6px;
    font-size:11px;
    border:solid 1px #CCC;
    overflow:auto;
}



/* skins/family/css/admin_modal.css */


/* @title Modal Overlay */
/* @help The background overlay for the Modal window */
#simplemodal-overlay {
    background-color:#000;
    cursor:wait;
}

/* @title Modal Window */
/* @help The Modal window */
#modal_window {
    background-color:#FFF;
    overflow:auto;
    padding:10px;
    border-radius:5px;
}

/* @title Modal Updates */
/* @help The Modal window updates */
#modal_updates {
    font-family:Monaco,"Courier New",Courier,monospace;
    color:#000;
    font-size:10px;
    padding:8px;
    overflow:auto;
}

/* @title Modal Spinner */
/* @help The Modal window loading image */
#modal_spinner {
    vertical-align:middle;
    margin-right:8px;
}


/* skins/family/css/public_surfaces.css */


/**
 * Public-site surfaces aligned with ACP / design-tokens.css.
 * Loaded after skin.css and responsive overrides so legacy grays/darks do not win.
 */

section {
    color:var(--jr-text-secondary,#334155);
}

.footer {
    background:var(--jr-footer-bg,#f8fafc);
    border-top:1px solid var(--jr-footer-border,#e2e8f0);
    color:var(--jr-text-secondary,#334155);
    min-height:0;
}

.footer a {
    color:var(--jr-link,#0369a1);
}

.footer h2 {
    color:var(--jr-text,#0f172a);
}

.index {
    background:transparent;
}

/* Fixed header:primary column padding below bar (skip ACP/dashboard shells). */
body:not(:has(#admin_container)):not(:has(#dashboard_container)) #content,
body:not(:has(#admin_container)):not(:has(#dashboard_container)) .fam-community-page {
    padding-top:calc(var(--jr-header-height,52px) + 16px);
}

body:not(:has(#admin_container)):not(:has(#dashboard_container)):has(#family-search-bar) #content,
body:not(:has(#admin_container)):not(:has(#dashboard_container)):has(#family-search-bar) .fam-community-page {
    padding-top:0;
}

/* Profile/index shells use #wrapper without #content — clear fixed header when search bar absent */
body:not(:has(#admin_container)):not(:has(#dashboard_container)) #wrapper {
    padding-top:var(--jr-header-height,52px);
}

body:not(:has(#admin_container)):not(:has(#dashboard_container)):has(#family-search-bar) #wrapper {
    padding-top:0;
}

/* amEvent events browse:calendar grid uses full content column width */
#wrapper #content .amEvent-index[data-am-browse-view="calendar"] .am-list-browse-host,
#wrapper #content .amEvent-item-index[data-am-browse-view="calendar"] .am-list-browse-host,
#wrapper #content #am-browse-root[data-am-browse-view="calendar"] .am-list-browse-host.am-events-browse-results {
    width:100%;
    max-width:none;
    padding-left:0 !important;
    padding-right:0 !important;
}

/* Main menu:jrFollowMe2-style top bar (white links on blue #header; dropdowns stay light surfaces below). */
#header #menu > li > a {
    color:#fff;
}

#header #menu > li > a:hover,
#header #menu li:hover > a {
    color:#fff;
    opacity:0.92;
}

#menu a {
    color:var(--jr-text-secondary,#334155);
}

#menu li a:hover {
    color:var(--jr-link,#0369a1);
}

#menu ul {
    background:var(--jr-bg-elevated,#ffffff);
    border-radius:var(--jr-radius-sm,6px);
    border:1px solid var(--jr-border,#e2e8f0);
    box-shadow:var(--jr-shadow-md,0 4px 20px rgba(15,23,42,0.07));
    color:var(--jr-text,#0f172a);
}

#menu ul a {
    color:var(--jr-text,#0f172a);
}

#menu ul li {
    box-shadow:inset 0 -1px 0 var(--jr-border,#e2e8f0);
}

#menu ul li:hover {
    background:var(--jr-bg-muted,#f8fafc);
}

#menu ul li:first-child > a:after {
    border-bottom-color:var(--jr-bg-elevated,#ffffff);
}

#menu ul ul li:first-child a:after {
    border-right-color:var(--jr-bg-elevated,#ffffff);
}

#menu ul li:first-child a:hover:after {
    border-bottom-color:var(--jr-bg-elevated,#ffffff);
}

#menu ul ul li:first-child a:hover:after {
    border-right-color:var(--jr-bg-elevated,#ffffff);
}

/*
 * amAction SimpleModal (share + detail):modules/amCore/css/amCore.simplemodal.css
 * (tokens + .am-modal__* layout). Avoid duplicating width/height/comment-order here.
 */

