body{padding-top:var(--app-navbar-offset,5rem)}
.navbar.fixed-top{z-index:1030}
.app-brand{display:inline-flex;align-items:center;max-width:min(52vw,280px);padding-block:.125rem}
.app-brand-logo{display:block;max-width:100%;height:clamp(32px,4vw,46px);width:auto}
.page-header{margin-bottom:1.5rem}.page-header .page-subtitle{color:var(--bs-secondary-color);margin-bottom:0}.section-card .card-body{padding:1.25rem}.table thead th{font-size:.875rem;color:var(--bs-secondary-color);font-weight:600;border-bottom-width:1px}.table td,.table th{vertical-align:middle}.badge-soft{background:rgba(var(--bs-secondary-rgb),.1);color:var(--bs-emphasis-color);border:1px solid rgba(var(--bs-secondary-rgb),.15)}.filter-toolbar .form-label{font-size:.85rem;color:var(--bs-secondary-color)}.stat-card .stat-value{font-size:1.25rem;font-weight:700}.stat-card .stat-label{font-size:.85rem;color:var(--bs-secondary-color)}.code-short{font-size:.85rem}.card + .card{margin-top:1.5rem}.table-responsive{border-radius:.5rem}.nav-pills .nav-link{border:1px solid transparent}.nav-pills .nav-link.active{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)}
.global-search-modal-content{border-radius:1rem}.global-search-modal-body{max-height:min(72vh,820px);overflow:auto;padding-bottom:1rem}.global-search-result.active,.global-search-result:focus{background:rgba(var(--bs-primary-rgb),.08);border-color:rgba(var(--bs-primary-rgb),.25);color:var(--bs-emphasis-color)}.global-search-result.active .text-muted,.global-search-result:focus .text-muted{color:var(--bs-secondary-color)!important}#globalSearchResults{overflow:visible}
.session-device-cell{display:flex;gap:.9rem;align-items:flex-start;min-width:18rem}.session-device-icon{width:2.5rem;height:2.5rem;border-radius:.85rem;display:flex;align-items:center;justify-content:center;background:rgba(var(--bs-primary-rgb),.08);border:1px solid rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary)}.session-device-icon i{font-size:1.1rem}.session-device-content{flex:1;min-width:0}.session-device-header{display:flex;flex-wrap:wrap;gap:.4rem .5rem;align-items:center;margin-bottom:.15rem}.session-device-title{font-weight:600;color:var(--bs-emphasis-color)}.session-device-subtitle{font-size:.85rem;color:var(--bs-secondary-color);margin-bottom:.55rem}.session-rename-form{max-width:26rem}
.app-compact .card-body{padding:1rem}.app-compact .h5{font-size:1rem}.app-compact .h6{font-size:.9rem}.app-compact .text-muted{font-size:.9rem}.app-compact .small,.app-compact .form-text{font-size:.8rem!important}.app-compact .form-label,.app-compact .form-check-label{font-size:.84rem}.app-compact .form-control,.app-compact .form-select{font-size:.88rem;padding:.45rem .7rem}.app-compact .btn{font-size:.84rem}.app-compact .btn.btn-sm{font-size:.78rem;padding:.32rem .56rem}.app-compact .badge{font-size:.72rem}.app-compact .table thead th{font-size:.8rem}.app-compact .table td{font-size:.85rem}
.admin-layout .card-body{padding:1rem}.admin-layout .text-muted{font-size:.9rem}.admin-section-label{font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bs-secondary-color);margin-top:.25rem}.admin-stat-card{height:100%;padding:.85rem .95rem;border:1px solid var(--bs-border-color);border-radius:.75rem;background:var(--bs-tertiary-bg)}.admin-stat-label{font-size:.78rem;color:var(--bs-secondary-color);margin-bottom:.3rem}.admin-stat-value{font-size:.96rem;font-weight:600;word-break:break-word}
.dashboard-layout .card-body{padding:1rem}.dashboard-layout .h5{font-size:1rem}.dashboard-layout .text-muted{font-size:.92rem}.dashboard-layout dl.small,.dashboard-layout ul.small,.dashboard-layout .small{font-size:.82rem!important}.dashboard-layout .btn{font-size:.84rem}.dashboard-layout .btn.btn-sm{font-size:.78rem;padding:.3rem .55rem}.dashboard-layout .badge{font-size:.72rem}
.security-layout .card-body{padding:1rem}.security-layout .h5{font-size:1rem}.security-layout .h6{font-size:.9rem}.security-layout .text-muted{font-size:.9rem}.security-layout .small,.security-layout .form-text{font-size:.8rem!important}.security-layout .form-label,.security-layout .form-check-label{font-size:.84rem}.security-layout .form-control{font-size:.88rem;padding:.45rem .7rem}.security-layout .btn{font-size:.84rem}.security-layout .btn.btn-sm{font-size:.78rem;padding:.32rem .56rem}.security-layout .badge{font-size:.72rem}.security-email-value{font-size:1rem}
.message-layout .section-card .card-body{padding:.9rem}.message-layout .card .h5{font-size:1rem}.message-layout .form-label{font-size:.78rem;margin-bottom:.3rem}.message-layout .form-text{font-size:.74rem}.message-layout .form-control,.message-layout .form-select{font-size:.85rem;padding:.42rem .62rem}.message-layout textarea.form-control{font-size:.84rem;line-height:1.35}.message-layout .btn{font-size:.82rem;padding:.38rem .62rem}.message-layout .btn.btn-sm{font-size:.78rem;padding:.32rem .55rem}.message-layout .list-group-item{padding:.66rem .75rem}.message-layout .badge{font-size:.68rem}.message-layout .text-muted.small,.message-layout .small{font-size:.73rem!important}
.message-thread{max-height:60vh;overflow:auto;padding-right:.25rem}.message-bubble-wrap{display:flex;justify-content:flex-start}.message-bubble-wrap.is-own{justify-content:flex-end}.message-bubble{max-width:min(100%,42rem);padding:1rem 1.1rem;border-radius:1rem;background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color)}.message-bubble.is-own{background:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.message-bubble.is-unread{box-shadow:0 0 0 .22rem rgba(var(--bs-primary-rgb),.12)}.message-unread-divider{display:flex;align-items:center;gap:.75rem;color:var(--bs-secondary-color);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.message-unread-divider::before,.message-unread-divider::after{content:'';height:1px;background:var(--bs-border-color);flex:1}.message-attachments{display:flex;flex-wrap:wrap;gap:.5rem}.message-attachment-item{display:flex;align-items:center;gap:.5rem}
.message-layout .col-xl-7 .section-card{height:calc(100vh - var(--app-navbar-offset) - 2rem);max-height:calc(100vh - var(--app-navbar-offset) - 2rem)}.message-layout .col-xl-7 .section-card .card-body{padding:.8rem .9rem;display:flex;flex-direction:column;min-height:0}.message-layout .message-thread{flex:1 1 auto;max-height:none;min-height:0;gap:.55rem!important;margin-bottom:.65rem!important}.message-layout .message-bubble{max-width:min(100%,37rem);padding:.64rem .78rem;border-radius:.8rem;font-size:.84rem;line-height:1.34}.message-layout .message-bubble .fw-semibold{font-size:.84rem}.message-layout .message-unread-divider{font-size:.71rem;gap:.5rem;margin-block:.1rem}.message-layout .message-attachments{gap:.35rem}.message-layout .message-attachment-item .btn{padding:.22rem .45rem;font-size:.74rem}.message-layout #messageReplyForm{margin-top:auto}.message-layout #messageReplyForm textarea.form-control{font-size:.82rem;min-height:5.8rem}
.message-compose-attachment-list .list-group-item{padding:.6rem .75rem}
.message-compose-modal .modal-content{border-radius:1rem}.message-compose-modal .modal-header,.message-compose-modal .modal-footer{padding-inline:1.25rem}.message-compose-modal .modal-body{padding:1.25rem}
.phasmo-app{--phasmo-accent:#2f6f73;--phasmo-warn:#9d3d4b}.phasmo-session-panel,.phasmo-streamdeck-panel,.phasmo-streamdeck-profile{border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.85rem;background:var(--bs-tertiary-bg)}.phasmo-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em}.phasmo-owned-session{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.65rem;background:var(--bs-body-bg)}.phasmo-owned-session.is-current{border-color:rgba(var(--bs-primary-rgb),.45);background:rgba(var(--bs-primary-rgb),.06)}.phasmo-streamdeck-label{min-width:9rem}.phasmo-evidence-button{width:100%;min-height:3.25rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);color:var(--bs-body-color);display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.55rem .7rem;text-align:left;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.phasmo-evidence-button:hover{border-color:rgba(var(--bs-primary-rgb),.45);box-shadow:0 .125rem .35rem rgba(0,0,0,.06)}.phasmo-evidence-button[data-mode=confirmed]{border-color:rgba(var(--bs-primary-rgb),.55);background:rgba(var(--bs-primary-rgb),.08)}.phasmo-evidence-button[data-mode=rejected]{border-color:rgba(var(--bs-danger-rgb),.5);background:rgba(var(--bs-danger-rgb),.08)}.phasmo-evidence-icon{width:2.05rem;height:2.05rem;border-radius:.45rem;display:flex;align-items:center;justify-content:center;background:var(--bs-tertiary-bg);color:var(--phasmo-accent)}.phasmo-evidence-label{font-weight:700;min-width:0}.phasmo-evidence-state{font-size:.74rem;color:var(--bs-secondary-color);white-space:nowrap}.phasmo-ghost-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14.5rem,1fr));gap:.9rem}.phasmo-ghost-card{min-height:9.75rem;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.9rem;background:var(--bs-body-bg);transition:opacity .15s ease,filter .15s ease,border-color .15s ease}.phasmo-ghost-card:not(.is-filtered){border-color:rgba(var(--bs-success-rgb),.45);box-shadow:inset 0 .18rem 0 rgba(var(--bs-success-rgb),.6)}.phasmo-ghost-card.is-filtered{opacity:.45;filter:saturate(.65)}.phasmo-ghost-card.is-manually-rejected{opacity:.38;text-decoration:line-through;text-decoration-thickness:.08em}.phasmo-ghost-card.is-manually-rejected .phasmo-ghost-toggle{text-decoration:none}.phasmo-ghost-toggle{width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;padding:0}.phasmo-evidence-tags{display:flex;flex-wrap:wrap;gap:.35rem}.phasmo-evidence-tags .badge{font-weight:600}
@media (max-width:991.98px){.navbar.fixed-top .container{align-items:flex-start}.navbar.fixed-top .navbar-collapse{background:var(--bs-body-bg);margin-top:.5rem;padding:.75rem 0 0}.message-layout .section-card .card-body{padding:1rem}.message-layout .col-xl-7 .section-card{height:auto;max-height:none}.message-layout .col-xl-7 .section-card .card-body{display:block}.message-layout .message-thread{max-height:none;min-height:0}}
@media (max-width:575.98px){main.container{padding-left:var(--bs-gutter-x,.75rem);padding-right:var(--bs-gutter-x,.75rem)}.app-brand{max-width:calc(100vw - 7rem)}.app-brand-logo{height:34px}.session-device-cell{min-width:14rem;gap:.7rem}.session-device-icon{width:2.2rem;height:2.2rem;border-radius:.75rem}.session-device-subtitle{margin-bottom:.45rem}.session-rename-form{max-width:none}.message-thread{max-height:none}.message-bubble{max-width:100%}.phasmo-evidence-button{grid-template-columns:2.1rem minmax(0,1fr);align-items:start}.phasmo-evidence-state{grid-column:2;white-space:normal}.phasmo-ghost-grid{grid-template-columns:1fr}}
@media (min-width:1200px){.phasmo-app{max-width:1540px;margin-inline:auto}.phasmo-toolbar{padding-bottom:1rem;border-bottom:1px solid var(--bs-border-color)}.phasmo-sidebar{position:sticky;top:5.75rem;align-self:flex-start;max-height:calc(100vh - 6.5rem);overflow:auto;padding-right:.25rem}.phasmo-sidebar .section-card{margin-bottom:1rem}.phasmo-sidebar .card-body{padding:1rem}.phasmo-sidebar .h5{font-size:1rem}.phasmo-ghost-toolbar{position:sticky;top:4.5rem;z-index:2;padding:.75rem 0;background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color)}.phasmo-ghost-grid{grid-template-columns:repeat(auto-fill,minmax(12.75rem,1fr));gap:.75rem}.phasmo-ghost-card{min-height:8.75rem;padding:.8rem}.phasmo-evidence-button{min-height:2.9rem;padding:.45rem .6rem;gap:.55rem}.phasmo-evidence-icon{width:1.85rem;height:1.85rem}.phasmo-evidence-state{font-size:.7rem}.phasmo-owned-session{padding:.55rem}.phasmo-streamdeck-profile,.phasmo-session-panel{padding:.75rem}}
.phasmo-evidence-strip{border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-tertiary-bg);padding:.9rem}.phasmo-evidence-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.6rem}.phasmo-evidence-list{display:contents}.phasmo-evidence-strip .phasmo-evidence-button,.phasmo-evidence-reset{width:100%;min-height:4.6rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);color:var(--bs-body-color);display:grid;grid-template-columns:1fr;justify-items:center;align-content:center;gap:.28rem;padding:.55rem;text-align:center;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.phasmo-evidence-strip .phasmo-evidence-button:hover,.phasmo-evidence-reset:hover:not(:disabled){border-color:rgba(var(--bs-primary-rgb),.45);box-shadow:0 .125rem .35rem rgba(0,0,0,.06)}.phasmo-evidence-strip .phasmo-evidence-icon{width:2rem;height:2rem}.phasmo-evidence-strip .phasmo-evidence-label{font-size:.86rem;line-height:1.1}.phasmo-evidence-strip .phasmo-evidence-state{font-size:.68rem;white-space:normal}.phasmo-evidence-reset:disabled{opacity:.55}.phasmo-evidence-reset:not(:disabled){border-color:rgba(var(--bs-secondary-rgb),.45)}@media (min-width:1200px){.phasmo-evidence-actions{grid-template-columns:repeat(8,minmax(0,1fr))}.phasmo-sidebar{top:11.5rem;max-height:calc(100vh - 12.25rem)}.phasmo-ghost-toolbar{top:10.25rem}}@media (max-width:575.98px){.phasmo-evidence-strip{padding:.75rem}.phasmo-evidence-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
.phasmo-evidence-strip .phasmo-evidence-button{position:relative}.phasmo-evidence-reject{position:absolute;top:.32rem;right:.32rem;width:1.45rem;height:1.45rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);border:1px solid var(--bs-border-color);font-size:.72rem;line-height:1}.phasmo-evidence-reject:hover,.phasmo-evidence-reject:focus{color:var(--bs-danger);border-color:rgba(var(--bs-danger-rgb),.45);background:rgba(var(--bs-danger-rgb),.08);outline:0}.phasmo-evidence-button[data-mode=rejected] .phasmo-evidence-reject{color:#fff;background:var(--bs-danger);border-color:var(--bs-danger)}.phasmo-evidence-button[data-mode=rejected] .phasmo-evidence-icon{color:var(--bs-danger)}@media (min-width:1200px){.phasmo-sidebar{position:static;max-height:none;overflow:visible}.phasmo-ghost-toolbar{position:static;top:auto}.phasmo-desktop-layout{align-items:flex-start}}
.phasmo-session-accordion .accordion-button{background:var(--bs-tertiary-bg)}.phasmo-session-accordion .accordion-body{background:var(--bs-body-bg)}.phasmo-evidence-strip .phasmo-evidence-button[data-mode=confirmed]{border-color:rgba(var(--bs-success-rgb),.72);background:rgba(var(--bs-success-rgb),.16);box-shadow:inset 0 .18rem 0 rgba(var(--bs-success-rgb),.7)}.phasmo-evidence-strip .phasmo-evidence-button[data-mode=confirmed] .phasmo-evidence-icon{color:var(--bs-success)}.phasmo-evidence-strip .phasmo-evidence-button[data-mode=confirmed] .phasmo-evidence-state{color:var(--bs-success-text-emphasis)}.phasmo-evidence-strip .phasmo-evidence-button[data-mode=rejected]{border-color:rgba(var(--bs-danger-rgb),.72);background:rgba(var(--bs-danger-rgb),.16);box-shadow:inset 0 .18rem 0 rgba(var(--bs-danger-rgb),.7)}.phasmo-evidence-strip .phasmo-evidence-button[data-mode=rejected] .phasmo-evidence-state{color:var(--bs-danger-text-emphasis)}@media (min-width:1200px){.phasmo-app{max-width:1680px}.phasmo-ghost-grid{grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));gap:.85rem}.phasmo-ghost-card{min-height:8.5rem}.phasmo-desktop-layout{width:100%}}@media (min-width:1600px){.phasmo-ghost-grid{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}}
.phasmo-ghost-card:not(.is-filtered){border-color:rgba(var(--bs-success-rgb),.72);background:rgba(var(--bs-success-rgb),.12);box-shadow:inset 0 .18rem 0 rgba(var(--bs-success-rgb),.72)}.phasmo-ghost-card.is-filtered{opacity:.72;background:var(--bs-body-bg);filter:saturate(.8)}.phasmo-ghost-card.is-manually-rejected{opacity:1;border-color:rgba(var(--bs-danger-rgb),.72);background:rgba(var(--bs-danger-rgb),.12);box-shadow:inset 0 .18rem 0 rgba(var(--bs-danger-rgb),.72);filter:none}.phasmo-ghost-card.is-manually-rejected .phasmo-evidence-tags,.phasmo-ghost-card.is-manually-rejected p{text-decoration:line-through;text-decoration-thickness:.08em}.phasmo-ghost-card.is-manually-rejected .phasmo-ghost-toggle{text-decoration:none}.phasmo-ghost-info{width:1.9rem;height:1.9rem;display:inline-flex;align-items:center;justify-content:center;padding:0;flex:0 0 auto}
.phasmo-session-header{position:relative;display:flex;align-items:stretch}.phasmo-session-toggle{flex:1;min-width:0;padding-right:7rem}.phasmo-session-toggle::after{margin-left:.75rem}.phasmo-session-header-actions{position:absolute;right:3.25rem;top:50%;transform:translateY(-50%);display:flex;gap:.35rem;z-index:3}.phasmo-session-header-actions .btn{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;padding:0}@media (max-width:575.98px){.phasmo-session-toggle{padding-right:6.25rem}.phasmo-session-header-actions{right:2.85rem}.phasmo-session-header-actions .btn{width:1.8rem;height:1.8rem}}
[data-ghost-info-modal] .modal-dialog-scrollable [data-ghost-info-form]{display:flex;flex-direction:column;min-height:0;max-height:100%}[data-ghost-info-modal] .modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}[data-ghost-info-modal] .modal-body{overflow:auto;min-height:0}.phasmo-session-panel [data-session-name-label-main]{line-height:1.2}.phasmo-owned-session .phasmo-code{font-size:.9rem}.phasmo-session-panel .input-group-sm .btn{min-width:2.4rem}
