@import url('./design-tokens.css');
*{box-sizing:border-box}html{background:var(--dl-bg-0);color-scheme:dark}body{margin:0;background:var(--dl-bg-0);color:var(--dl-text-1);font:14px/1.4 var(--dl-font-ui)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}:focus-visible{outline:none;box-shadow:var(--dl-focus)}
.public-header{height:69px;display:flex;align-items:center;justify-content:space-between;padding:0 64px 0 28px;background:var(--dl-bg-header);border-bottom:1px solid var(--dl-border-soft)}.brand img{display:block;width:356px;max-width:42vw;height:50px;object-fit:contain;object-position:left center}.public-nav{display:flex;gap:40px;height:100%;font-size:13px;font-weight:500}.public-nav a{position:relative;display:flex;align-items:center;height:100%;padding:0 10px}.public-nav a:hover,.public-nav a.active{color:#c8a8ff}.public-nav a.active:after{content:"";position:absolute;left:7px;right:7px;bottom:14px;height:2px;background:var(--dl-accent)}
.hero{height:352px;overflow:hidden;background:#020203;border-bottom:1px solid var(--dl-border-soft)}.hero img{width:100%;height:100%;display:block;object-fit:cover}
.admin-shell{min-height:603px;display:grid;grid-template-columns:241px minmax(0,1fr);background:var(--dl-bg-1)}.sidebar{min-height:603px;display:flex;flex-direction:column;background:var(--dl-bg-header);border-right:1px solid var(--dl-border-soft)}.sidebar-brand{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 26px;color:#a974ff;font-size:16px;font-weight:600;border-bottom:1px solid var(--dl-border-soft)}.sidebar-nav{padding:10px 13px;display:grid;gap:2px}.nav-item{height:42px;display:flex;align-items:center;gap:12px;padding:0 13px;border-radius:7px}.nav-item:hover{background:#17131f}.nav-item.active{background:var(--dl-accent-deep);color:#cbb5f6}.icon{width:20px;text-align:center}.profile{margin-top:auto;height:144px;display:flex;align-items:center;gap:12px;padding:0 26px;border-top:1px solid var(--dl-border-soft)}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#a06cff,#5f2aac)}.profile small{display:block;color:var(--dl-text-2)}
.main{min-width:0}.page-head{height:83px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;border-bottom:1px solid var(--dl-border-soft)}.title-cluster{display:flex;align-items:baseline;gap:12px}.title-cluster h1{margin:0;font-size:25px;line-height:32px;font-weight:650}.title-cluster p{margin:0;color:var(--dl-text-2)}.actions{display:flex;gap:14px}.btn{height:38px;padding:0 16px;border-radius:6px;border:1px solid var(--dl-border);background:var(--dl-surface-2);color:var(--dl-text-1)}.btn-outline{border-color:#4a3470;color:#c6a5ff;background:#0d0b10}.btn-primary{border-color:#8c58d7;background:linear-gradient(#a56be9,#7e43cf)}.btn-danger{border-color:#7c292e;background:#2c1114;color:#ff6f73}.btn-icon{width:38px;padding:0;border-radius:50%;color:#b996ff;border-color:#5d3c92;background:#0c0a0f}
.content{padding:0 40px 12px}.toolbar{min-height:67px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:var(--dl-surface-1);border:1px solid var(--dl-border-soft);border-radius:8px}.selection,.filters{display:flex;align-items:center;gap:12px}.checkbox{width:18px;height:18px;border:1px solid #3c3941;border-radius:4px;background:#0b0b0d;color:white}.divider-v{width:1px;height:34px;background:var(--dl-border-soft);margin:0 10px}.control{height:36px;border:1px solid var(--dl-border);border-radius:6px;background:#0d0d0f;color:var(--dl-text-1);padding:0 12px}.search input{width:237px}.view-toggle{display:flex}.view-toggle button{width:39px;height:36px;border:1px solid var(--dl-border-soft);background:#0d0d0f;color:var(--dl-text-2)}.view-toggle button.active{background:#2b1b47;color:#fff}
.media-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px 14px;margin-top:16px}.media-card{height:350px;overflow:hidden;background:var(--dl-surface-1);border:1px solid #34303a;border-radius:8px;position:relative;transition:.2s ease}.media-card:hover{transform:translateY(-2px);border-color:#50435f;box-shadow:0 10px 28px #0007}.media-card.selected{border-color:var(--dl-accent)}.media-card img{width:100%;height:170px;display:block;object-fit:cover}.card-select{position:absolute;z-index:2;left:12px;top:12px;width:18px;height:18px;padding:0;border:1px solid #57515f;border-radius:4px;background:#0a0a0c;color:#fff;display:grid;place-items:center}.card-select::after{content:""}.media-card.selected .card-select{background:var(--dl-accent);border-color:var(--dl-accent)}.media-card.selected .card-select::after{content:"✓";font-size:12px;line-height:1;font-weight:700}.card-body{height:180px;padding:18px 14px 10px;display:flex;flex-direction:column}.file-name{font-size:13px;font-weight:600;margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta,.file-date{font-size:12px;color:var(--dl-text-2)}.badge{align-self:flex-start;margin-top:10px;padding:3px 9px;border-radius:999px;font-size:11px;background:var(--dl-success-bg);color:var(--dl-success)}.file-date{margin-top:7px}.card-actions{margin-top:auto;display:flex;justify-content:flex-end;gap:6px}.card-actions button{width:36px;height:34px;border:1px solid var(--dl-border-soft);border-radius:6px;background:#18171a;color:#fff}.card-actions .delete{background:var(--dl-danger-bg);border-color:#6b2328;color:#e86a6a}

@media(max-width:1439px){.media-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1199px){.admin-shell{grid-template-columns:72px 1fr}.sidebar-brand span:first-child,.nav-item span:last-child,.profile-info{display:none}.sidebar-brand,.nav-item,.profile{justify-content:center;padding-left:0;padding-right:0}.media-grid{grid-template-columns:repeat(3,1fr)}.toolbar{flex-wrap:wrap}.filters{flex-wrap:wrap}}@media(max-width:899px){.brand img{width:280px}.public-nav{gap:14px}.hero{height:42vw;min-height:240px}.admin-shell{grid-template-columns:1fr}.sidebar{display:none}.media-grid{grid-template-columns:repeat(2,1fr)}.page-head{height:auto;min-height:83px;flex-wrap:wrap;padding:16px 24px}.content{padding:0 24px}}@media(max-width:639px){.public-header{height:60px;padding:0 14px}.brand img{width:200px}.public-nav{gap:6px;font-size:11px}.hero{height:56vw;min-height:220px}.content,.page-head{padding-left:14px;padding-right:14px}.media-grid{grid-template-columns:1fr}.selection,.filters{width:100%;flex-wrap:wrap}.search,.search input{width:100%}.pagination{gap:12px;flex-wrap:wrap}}
/* v1.2 functional completion */
.svg-icon{width:18px;height:18px;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}.nav-item .svg-icon{width:20px;height:20px;flex:0 0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:disabled{opacity:.45;cursor:not-allowed}.checkbox{position:relative;display:grid;place-items:center;padding:0}.checkbox.checked{background:var(--dl-accent);border-color:var(--dl-accent)}.checkbox.checked:after{content:"✓";font-size:12px;font-weight:700;line-height:1}.search{width:237px}.preview{height:170px;background:#09090b;overflow:hidden}.preview img{width:100%;height:100%;object-fit:cover}.file-placeholder{height:100%;display:grid;place-items:center;font-size:24px;font-weight:700;color:#8869b3;background:radial-gradient(circle at center,#22182f,#09090b 68%)}.badge{border:0;cursor:pointer}.status-pending{background:#2e2612;color:#e7bd58}.card-actions .action-button,.card-actions button{display:grid;place-items:center}.card-actions .action-button{width:36px;height:34px;border:1px solid var(--dl-border-soft);border-radius:6px;background:#18171a;color:#fff}.card-actions .svg-icon{width:16px;height:16px}.media-grid.list-view{display:grid;grid-template-columns:1fr}.media-grid.list-view .media-card{height:94px;display:grid;grid-template-columns:124px minmax(0,1fr)}.media-grid.list-view .preview{height:92px}.media-grid.list-view .card-body{height:92px;padding:12px 14px;display:grid;grid-template-columns:minmax(180px,2fr) minmax(180px,1.3fr) 100px 165px 140px;align-items:center;gap:16px}.media-grid.list-view .file-name,.media-grid.list-view .file-meta,.media-grid.list-view .file-date,.media-grid.list-view .badge,.media-grid.list-view .card-actions{margin:0}.media-grid.list-view .badge{justify-self:start}.empty-state{margin-top:16px;padding:50px;text-align:center;border:1px dashed var(--dl-border);border-radius:8px;color:var(--dl-text-2)}.page-controls button:disabled{opacity:.35;cursor:not-allowed}.modal[hidden],.toast[hidden]{display:none}.modal{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:24px;background:#000b;backdrop-filter:blur(6px)}.modal-panel{position:relative;width:min(560px,100%);max-height:85vh;overflow:auto;padding:28px;background:#111014;border:1px solid #393340;border-radius:10px;box-shadow:0 24px 80px #000}.modal-panel h2{margin:0 0 10px;font-size:22px}.modal-panel p{color:var(--dl-text-2)}.modal-close{position:absolute;right:14px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:#201c25;color:#fff;font-size:24px}.drop-zone{min-height:170px;margin-top:18px;border:1px dashed #6f4ba1;border-radius:8px;display:grid;place-items:center;text-align:center;background:#0c0a0f;color:#c8a8ff}.drop-zone input{max-width:90%}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.progress{margin-top:12px;color:#c8a8ff}.preview-panel{width:min(900px,100%)}.preview-stage{min-height:260px;display:grid;place-items:center;margin-top:18px;background:#080809;border-radius:8px;overflow:hidden}.preview-stage img,.preview-stage video{max-width:100%;max-height:65vh}.preview-stage audio{width:min(500px,90%)}.activity-list{display:grid;gap:8px;margin-top:18px}.activity-list>div{display:grid;grid-template-columns:90px 1fr;padding:12px;background:#0c0b0e;border:1px solid var(--dl-border-soft);border-radius:7px}.activity-list small{grid-column:1/-1;color:var(--dl-text-3);margin-top:4px}.toast{position:fixed;z-index:1200;right:24px;bottom:24px;max-width:380px;padding:13px 16px;border:1px solid #4d3a66;border-radius:7px;background:#1c1427;color:#fff;box-shadow:0 16px 40px #000}.toast.error{border-color:#743035;background:#301417}.modal-open{overflow:hidden}
@media(max-width:899px){.media-grid.list-view .media-card{height:auto;grid-template-columns:100px 1fr}.media-grid.list-view .preview{height:100%}.media-grid.list-view .card-body{height:auto;grid-template-columns:1fr;gap:4px}.media-grid.list-view .card-actions{margin-top:8px}.search{width:100%}}


/* TOOLBAR_v1 — Spec 006, Room2 v1.3 */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.toolbar{min-height:67px;padding:12px 18px;border-color:var(--dl-border);gap:16px}
.toolbar-group{display:flex;align-items:center;gap:12px;min-width:0}
.toolbar-selection{flex:1 1 auto}
.toolbar-filters{flex:0 1 auto;justify-content:flex-end}
.select-all-control{display:inline-flex;align-items:center;gap:9px;min-height:38px;cursor:pointer;user-select:none;white-space:nowrap}
.select-all-control input{position:absolute;opacity:0;pointer-events:none}
.checkbox-visual{position:relative;display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px;border:1px solid #4a4456;border-radius:4px;background:#101012;transition:background var(--dl-transition-fast),border-color var(--dl-transition-fast),box-shadow var(--dl-transition-fast)}
.select-all-control:hover .checkbox-visual{border-color:var(--dl-accent)}
.select-all-control input:focus-visible+.checkbox-visual{box-shadow:var(--dl-focus)}
.select-all-control input:checked+.checkbox-visual{background:var(--dl-accent);border-color:var(--dl-accent)}
.select-all-control input:checked+.checkbox-visual:after{content:"✓";color:#fff;font-size:12px;font-weight:800;line-height:1}
.select-all-control input:indeterminate+.checkbox-visual{background:var(--dl-accent-deep);border-color:var(--dl-accent)}
.select-all-control input:indeterminate+.checkbox-visual:after{content:"—";color:#fff;font-size:12px;font-weight:800;line-height:1}
.selected-count{color:var(--dl-text-2);font-size:13px;white-space:nowrap}
.selected-count[hidden]{display:none}
.toolbar .control{height:36px;min-width:0}
.toolbar .search{width:280px}
.view-toggle{display:flex;flex:0 0 auto}
.view-toggle button{display:grid;place-items:center;width:39px;height:36px;border:1px solid var(--dl-border);background:#0d0d0f;color:var(--dl-text-2);transition:background var(--dl-transition-fast),color var(--dl-transition-fast),border-color var(--dl-transition-fast)}
.view-toggle button:first-child{border-radius:6px 0 0 6px}
.view-toggle button:last-child{border-radius:0 6px 6px 0;margin-left:-1px}
.view-toggle button:hover{color:#fff;border-color:#50435f;z-index:1}
.view-toggle button.active{background:var(--dl-accent-deep);color:#fff;border-color:var(--dl-accent);z-index:2}
.view-toggle button:focus-visible,.toolbar .control:focus-visible,.toolbar .btn:focus-visible{outline:none;box-shadow:var(--dl-focus)}
.toolbar .btn{min-height:38px}
@media(max-width:1199px){.toolbar{align-items:flex-start}.toolbar-selection,.toolbar-filters{flex-wrap:wrap}.toolbar-filters{flex:1 1 100%;justify-content:flex-start}.toolbar .search{width:min(280px,100%)}}
@media(max-width:639px){.toolbar{padding:12px}.toolbar-selection,.toolbar-filters{width:100%}.toolbar-selection .divider-v{display:none}.selected-count{order:3;width:100%}.toolbar-filters .search-control{order:10;width:100%}.toolbar .search{width:100%}.toolbar .control{min-height:44px}.view-toggle button,.toolbar .btn,.select-all-control{min-height:44px}.view-toggle button{width:44px;height:44px}}

/* SPEC-007: shared responsive sidebar */
.sidebar-collapse,.mobile-menu-button{border:0;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}.sidebar-collapse{width:36px;height:36px;border-radius:6px}.sidebar-collapse:hover,.mobile-menu-button:hover{background:#211a2c}.nav-group{display:grid;gap:2px}.nav-group+.nav-group{margin-top:14px}.nav-group-title{margin:0;padding:7px 13px 5px;color:#746c7d;font-size:10px;line-height:1;letter-spacing:.14em;font-weight:700}.nav-item{position:relative}.nav-label{min-width:0;white-space:nowrap}.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:grid;place-items:center;background:#6f39b0;color:#fff;font-size:11px;font-weight:700}.mobile-admin-bar{display:none;min-height:54px;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--dl-border-soft);background:var(--dl-bg-header);font-weight:600}.mobile-menu-button{width:44px;height:44px;border-radius:7px}.sidebar-overlay{position:fixed;inset:0;background:rgba(0,0,0,.66);z-index:80}.admin-shell.sidebar-collapsed{grid-template-columns:72px minmax(0,1fr)}.admin-shell.sidebar-collapsed .sidebar-brand-label,.admin-shell.sidebar-collapsed .nav-label,.admin-shell.sidebar-collapsed .nav-group-title,.admin-shell.sidebar-collapsed .profile-info,.admin-shell.sidebar-collapsed .nav-badge{display:none}.admin-shell.sidebar-collapsed .sidebar-brand,.admin-shell.sidebar-collapsed .nav-item,.admin-shell.sidebar-collapsed .profile{justify-content:center;padding-left:0;padding-right:0}.admin-shell.sidebar-collapsed .sidebar-collapse svg{transform:rotate(180deg)}.admin-shell.sidebar-collapsed .nav-item:hover::after{content:attr(data-tooltip);position:absolute;left:58px;top:50%;transform:translateY(-50%);z-index:95;white-space:nowrap;background:#221a2d;border:1px solid #42344f;border-radius:6px;padding:7px 9px;color:#fff;font-size:12px;box-shadow:0 8px 24px rgba(0,0,0,.35)}
@media (min-width:1200px){.admin-shell:not(.sidebar-collapsed){grid-template-columns:241px minmax(0,1fr)}}
@media (min-width:900px) and (max-width:1199px){.admin-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar-brand-label,.nav-label,.nav-group-title,.profile-info,.nav-badge{display:none}.sidebar-brand,.nav-item,.profile{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapse svg{transform:rotate(180deg)}}
@media (max-width:899px){.mobile-admin-bar{display:flex}.sidebar{display:flex!important;position:fixed;left:0;top:0;bottom:0;width:min(300px,82vw);min-height:100vh;z-index:90;transform:translateX(-105%);transition:transform 220ms ease;box-shadow:18px 0 40px rgba(0,0,0,.35)}body.sidebar-open .sidebar{transform:translateX(0)}body.sidebar-open .sidebar-overlay{display:block!important}.sidebar-collapse{display:none}.sidebar-nav{overflow:auto}.nav-item{min-height:48px}.admin-shell.sidebar-collapsed{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.sidebar{transition:none!important}}

/* SPEC-008 — Media Grid & Card System */
.media-grid{grid-template-columns:repeat(5,minmax(190px,1fr));gap:18px}.media-card{height:390px;display:flex;flex-direction:column;border-color:#342f3a;background:linear-gradient(180deg,#151317,#100f12);outline:0}.media-card:focus-visible{box-shadow:var(--dl-focus);border-color:#8f62d5}.media-card.selected{box-shadow:0 0 0 1px var(--dl-accent),0 12px 32px #0008}.preview{height:190px;position:relative;flex:0 0 190px}.preview:after{content:"";position:absolute;inset:auto 0 0;height:44px;background:linear-gradient(transparent,#09090bcf);pointer-events:none}.preview img{transition:transform .28s ease}.media-card:hover .preview img{transform:scale(1.025)}.type-chip{position:absolute;z-index:2;right:10px;top:10px;padding:4px 8px;border:1px solid #ffffff1f;border-radius:999px;background:#07070ad9;color:#d8ccdf;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.play-mark{position:absolute;z-index:2;left:50%;top:50%;translate:-50% -50%;width:48px;height:48px;display:grid;place-items:center;border:1px solid #ffffff44;border-radius:50%;background:#08080bbf;color:white;font-size:17px;padding-left:3px}.file-placeholder{gap:6px;align-content:center}.file-placeholder span{font-size:27px}.file-placeholder small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#bca8d4}.card-body{height:auto;min-height:200px;flex:1;padding:15px 14px 12px}.file-name{font-size:14px;margin-bottom:3px}.original-name{font-size:11px;color:var(--dl-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:10px}.file-meta{display:flex;gap:7px;flex-wrap:wrap}.file-meta span{display:inline-flex;align-items:center}.file-meta span+span:before{content:"•";margin-right:7px;color:#675e6f}.card-status-row{display:flex;align-items:center;gap:9px;margin-top:10px;min-width:0}.card-status-row .badge,.card-status-row .file-date{margin:0}.card-status-row .file-date{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding-top:11px;border-top:1px solid var(--dl-border-soft)}.card-actions button,.card-actions .action-button{width:auto;height:40px;display:flex;gap:6px;align-items:center;justify-content:center;padding:0 8px}.card-actions span{display:none}.empty-state{padding:56px 20px}.empty-state h2{margin:5px 0 4px;color:var(--dl-text-1)}.empty-state p{margin:0 0 18px}.empty-icon{font-size:42px;color:#8b5bc4}.metadata-form{display:grid;gap:15px;margin-top:18px}.metadata-form label{display:grid;gap:7px;font-weight:600}.metadata-form .control{width:100%;height:42px}.metadata-form textarea.control{height:auto;min-height:110px;padding:10px 12px;resize:vertical}.form-note{margin:0!important;font-size:12px}.media-grid.loading{grid-template-columns:repeat(5,minmax(190px,1fr))}.skeleton-card{height:390px;border:1px solid #302b35;border-radius:8px;background:linear-gradient(100deg,#121014 25%,#1c1820 38%,#121014 52%);background-size:300% 100%;animation:skeleton 1.25s linear infinite}@keyframes skeleton{to{background-position:-150% 0}}
.media-grid.list-view .media-card{height:108px;grid-template-columns:140px minmax(0,1fr)}.media-grid.list-view .preview{height:106px;flex-basis:106px}.media-grid.list-view .card-body{height:106px;min-height:0;grid-template-columns:minmax(160px,1.5fr) minmax(210px,1.5fr) minmax(180px,1fr) 240px;padding:10px 14px}.media-grid.list-view .original-name{margin:2px 0 0}.media-grid.list-view .file-meta{align-self:center}.media-grid.list-view .card-status-row{margin:0}.media-grid.list-view .card-actions{display:flex;border:0;padding:0}.media-grid.list-view .card-actions button,.media-grid.list-view .card-actions .action-button{width:40px}.media-grid.list-view .type-chip{display:none}
@media(max-width:1439px){.media-grid,.media-grid.loading{grid-template-columns:repeat(4,minmax(190px,1fr))}}@media(max-width:1199px){.media-grid,.media-grid.loading{grid-template-columns:repeat(3,minmax(190px,1fr))}.media-grid.list-view .card-body{grid-template-columns:minmax(150px,1.4fr) minmax(170px,1fr) 150px 190px}.media-grid.list-view .file-meta span:nth-child(3){display:none}}@media(max-width:899px){.media-grid,.media-grid.loading{grid-template-columns:repeat(2,minmax(0,1fr))}.media-card{height:400px}.preview{height:200px;flex-basis:200px}.media-grid.list-view .card-body{grid-template-columns:1fr}.media-grid.list-view .card-status-row{margin-top:4px}.media-grid.list-view .original-name,.media-grid.list-view .file-meta{display:none}}@media(max-width:639px){.media-grid,.media-grid.loading{grid-template-columns:1fr}.media-card{height:auto;min-height:405px}.preview{height:210px;flex-basis:210px}.card-actions span{display:inline}.card-actions button,.card-actions .action-button{min-width:0;padding:0 6px;font-size:11px}.media-grid.list-view .media-card{grid-template-columns:96px 1fr}.media-grid.list-view .preview{height:100%;min-height:130px}.media-grid.list-view .card-body{height:auto;min-height:130px}.media-grid.list-view .card-actions span{display:none}}@media(prefers-reduced-motion:reduce){.media-card,.preview img,.skeleton-card{transition:none;animation:none}}

/* SPEC-009 — reusable search system */
.search-component{position:relative;display:grid;grid-template-columns:minmax(220px,280px) auto;align-items:center;min-width:0}
.search-control{position:relative;display:block;grid-column:1}.search-control .search{width:100%;padding-left:38px;padding-right:72px}
.search-icon{position:absolute;z-index:2;left:12px;top:50%;translate:0 -50%;display:grid;place-items:center;color:var(--dl-text-3);pointer-events:none}.search-icon .svg-icon{width:16px;height:16px}
.search-clear{position:absolute;z-index:3;right:7px;top:5px;width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:5px;background:transparent;color:var(--dl-text-2);cursor:pointer}.search-clear:hover{background:#28232d;color:#fff}.search-clear .svg-icon{width:15px;height:15px}
.search-spinner{position:absolute;z-index:3;right:40px;top:11px;width:14px;height:14px;border:2px solid #6e6577;border-top-color:#c9a7ff;border-radius:50%;animation:search-spin .65s linear infinite}
.search-status{grid-column:1/-1;min-height:15px;margin-top:4px;padding-left:2px;color:var(--dl-text-3);font-size:11px;line-height:1.25}
.media-card mark{padding:0 1px;border-radius:2px;background:#6d4594;color:#fff}
.empty-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@keyframes search-spin{to{rotate:360deg}}
@media(max-width:1199px){.search-component{grid-template-columns:minmax(220px,280px) auto}}
@media(max-width:639px){.toolbar-filters .search-component{order:10;width:100%;grid-template-columns:1fr}.search-control{width:100%}.search-control .search{width:100%;min-height:44px}.search-clear{top:8px}.search-spinner{top:14px}.search-status{font-size:12px}}
@media(prefers-reduced-motion:reduce){.search-spinner{animation:none;border-top-color:#c9a7ff}}


/* SPEC-010 — Universal Filter System */
.filter-panel-toggle{display:none;align-items:center;gap:7px}.filter-count{min-width:20px;height:20px;padding:0 6px;border-radius:10px;display:grid;place-items:center;background:#7442b5;color:#fff;font-size:11px}.filter-panel{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.filter-panel label{display:grid;gap:4px;color:var(--dl-text-3);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.filter-panel .control{min-width:126px}.filter-reset{align-self:end}.active-filter-chips{display:flex;gap:6px;flex-wrap:wrap;max-width:100%}.filter-chip{min-height:30px;padding:0 10px;border:1px solid #5d4774;border-radius:999px;background:#21172c;color:#d7c4ef;font-size:11px}.filter-chip:hover{background:#30203f}.toolbar-filters{align-items:center}.toolbar-filters .search-component{order:20}.toolbar-filters .view-toggle{order:30}.active-filter-chips{order:25;flex-basis:100%}
@media(max-width:1199px){.filter-panel-toggle{display:flex}.filter-panel{display:none;order:15;width:100%;padding:12px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#0d0c0f}.filter-panel.open{display:flex}.filter-panel label{flex:1 1 150px}.filter-panel .control{width:100%}.active-filter-chips{order:16}}
@media(max-width:899px){.filter-panel{align-items:stretch}.filter-panel label{flex:1 1 calc(50% - 10px)}}
@media(max-width:639px){.filter-panel-toggle{width:100%;justify-content:center}.filter-panel{position:fixed;z-index:120;inset:0;display:none!important;overflow:auto;padding:72px 18px 24px;border:0;border-radius:0;background:#0b0a0d}.filter-panel.open{display:flex!important;flex-direction:column}.filter-panel:before{content:"Filter Media";position:absolute;left:18px;top:22px;color:#fff;font-size:20px;font-weight:700}.filter-panel label{width:100%;flex:none}.filter-panel .control,.filter-reset{width:100%;min-height:48px}.active-filter-chips{width:100%}.filter-chip{min-height:38px}.toolbar-filters .search-component{order:40}}

/* v1.7.2 UI compliance — locked toolbar rows and search artifact correction */
.toolbar{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  justify-content:stretch;
  gap:20px;
  padding:24px;
}
.toolbar-row{display:flex;align-items:center;min-width:0;width:100%}
.toolbar-bulk-row{justify-content:flex-start}
.toolbar-selection{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:nowrap}
.toolbar-search-row{justify-content:space-between;gap:16px}
.toolbar-search-row .search-component{flex:1 1 auto;width:auto;max-width:none;grid-template-columns:minmax(220px,560px) auto}
.toolbar-search-row .view-toggle{flex:0 0 auto;margin-left:auto}
.toolbar-filter-row{align-items:flex-end}
.toolbar-filter-row .filter-panel{width:100%;display:grid;grid-template-columns:repeat(5,minmax(126px,1fr)) auto;align-items:end;gap:16px}
.toolbar-filter-row .filter-panel label{min-width:0}
.toolbar-filter-row .filter-panel .control{width:100%;min-width:0;height:38px}
.toolbar-filter-row .filter-reset{height:38px;white-space:nowrap}
.toolbar-chip-row:empty,.toolbar-chip-row:has(.active-filter-chips:empty){display:none}
.active-filter-chips{width:100%}

/* Disable all browser-supplied search decorations. ThetaWire renders one clear control. */
.search-control input[type="search"]{-webkit-appearance:none;appearance:none}
.search-control input[type="search"]::-webkit-search-decoration,
.search-control input[type="search"]::-webkit-search-cancel-button,
.search-control input[type="search"]::-webkit-search-results-button,
.search-control input[type="search"]::-webkit-search-results-decoration{display:none;-webkit-appearance:none}
.search-control input[type="search"]::-ms-clear,
.search-control input[type="search"]::-ms-reveal{display:none;width:0;height:0}
.search-clear[hidden]{display:none!important}
.search-control .search{padding-right:48px}
.search-spinner{right:42px}

@media(max-width:1199px){
  .toolbar{gap:18px;padding:22px}
  .toolbar-search-row .search-component{grid-template-columns:minmax(220px,1fr) auto}
  .filter-panel-toggle{display:flex}
  .toolbar-filter-row{align-items:stretch;flex-direction:column;gap:12px}
  .toolbar-filter-row .filter-panel{display:none;order:initial;width:100%;grid-template-columns:repeat(3,minmax(150px,1fr));padding:14px}
  .toolbar-filter-row .filter-panel.open{display:grid}
  .toolbar-filter-row .filter-reset{align-self:end}
}
@media(max-width:899px){
  .toolbar{padding:20px;gap:18px}
  .toolbar-selection{flex-wrap:wrap}
  .toolbar-search-row{align-items:flex-start}
  .toolbar-filter-row .filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:639px){
  .toolbar{padding:18px 14px;gap:16px}
  .toolbar-bulk-row{padding-top:4px;padding-bottom:2px}
  .toolbar-selection{width:100%;display:grid;grid-template-columns:1fr auto;gap:12px}
  .toolbar-selection .divider-v{display:none}
  .toolbar-selection .selected-count{display:block;grid-column:1/2;width:auto;order:initial}
  .toolbar-selection .selected-count[hidden]{display:none}
  .toolbar-selection [data-delete-selected]{grid-column:2/3;grid-row:1/3;align-self:center;min-height:44px}
  .toolbar-search-row{flex-direction:column;align-items:stretch;gap:12px}
  .toolbar-search-row .search-component{width:100%;grid-template-columns:1fr}
  .toolbar-search-row .view-toggle{margin-left:0;align-self:flex-end}
  .filter-panel-toggle{width:100%;justify-content:center}
  .toolbar-filter-row .filter-panel{position:fixed;z-index:120;inset:0;display:none!important;overflow:auto;padding:72px 18px 24px;border:0;border-radius:0;background:#0b0a0d;grid-template-columns:1fr}
  .toolbar-filter-row .filter-panel.open{display:grid!important}
  .toolbar-filter-row .filter-panel:before{content:"Filter Media";position:absolute;left:18px;top:22px;color:#fff;font-size:20px;font-weight:700}
  .toolbar-filter-row .filter-panel .control,.toolbar-filter-row .filter-reset{width:100%;min-height:48px}
}


/* SPEC-011: reusable pagination system */
.pagination{min-height:72px;margin-top:20px;padding:14px 16px;display:grid;grid-template-columns:minmax(190px,1fr) auto minmax(170px,1fr);align-items:center;gap:16px;border:1px solid var(--dl-border-soft);border-radius:8px;background:rgba(10,10,12,.72)}
.pagination-summary{font-size:14px;color:var(--dl-text-2)}
.page-controls{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0}
.page-controls button,.per-page{min-height:44px;border:1px solid var(--dl-border-soft);border-radius:6px;background:#0d0d0f;color:var(--dl-text-1);font:inherit}
.page-controls button{min-width:44px;padding:0 12px;cursor:pointer}
.page-controls button:hover:not(:disabled){border-color:#8955c9;background:#17131d}
.page-controls button:focus-visible,.per-page:focus-visible{outline:3px solid rgba(158,91,216,.45);outline-offset:2px}
.page-controls button.active{background:#8145d1;border-color:#9d67df;color:#fff}
.page-controls button:disabled{opacity:.4;cursor:not-allowed}
.page-ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:28px;color:var(--dl-text-2)}
.per-page-label{justify-self:end;display:flex;align-items:center;gap:10px;font-size:14px;color:var(--dl-text-2);white-space:nowrap}
.per-page{width:72px;padding:0 10px}
.pagination-mobile-status{display:none;text-align:center;color:var(--dl-text-2);font-size:14px}
@media(max-width:1100px){.pagination{grid-template-columns:1fr auto;}.pagination-summary{grid-column:1}.page-controls{grid-column:1/-1;grid-row:2}.per-page-label{grid-column:2;grid-row:1}}
@media(max-width:767px){.pagination{display:grid;grid-template-columns:1fr;gap:12px;padding:14px}.pagination-summary,.per-page-label{justify-self:center;text-align:center}.page-controls{grid-column:1;grid-row:auto;width:100%;justify-content:space-between}.page-first,.page-last,.page-number,.page-ellipsis{display:none!important}.page-controls .page-previous,.page-controls .page-next{flex:0 1 128px}.pagination-mobile-status{display:block;grid-row:3}.per-page-label{grid-row:4}.pagination .page-controls{order:2}.pagination-summary{order:1}.pagination-mobile-status{order:3}.per-page-label{order:4}}
@media(prefers-reduced-motion:reduce){.media-grid{scroll-behavior:auto}.page-controls button{transition:none}}


/* SPEC-012 — Upload Manager and queue engine */
.upload-panel{width:min(920px,100%);max-height:92vh;padding:28px}.upload-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-right:36px}.upload-heading p{margin-bottom:0}.queue-count{flex:0 0 auto;padding:6px 10px;border:1px solid var(--dl-border);border-radius:999px;color:#d6c3ef;background:#19131f;font-size:12px}.upload-drop-zone{position:relative;min-height:190px;cursor:pointer;transition:border-color .18s,background .18s,transform .18s}.upload-drop-zone.drag-active{border-color:#b680ff;background:#1a1026;transform:scale(1.005)}.upload-drop-zone:focus-visible{outline:none;box-shadow:var(--dl-focus)}.upload-drop-zone input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.drop-zone-content{display:grid;justify-items:center;gap:9px;padding:28px}.drop-zone-content>.svg-icon{width:34px;height:34px;color:#b982ff}.drop-zone-content strong{font-size:18px}.drop-zone-content span,.drop-zone-content small{color:var(--dl-text-3)}.upload-summary{display:grid;grid-template-columns:1fr minmax(180px,300px);align-items:center;gap:20px;margin-top:18px;padding:14px 16px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#0d0c0f}.upload-summary>div{display:grid;gap:3px}.upload-summary span{color:var(--dl-text-3);font-size:12px}.upload-summary progress,.upload-item progress{width:100%;height:9px;accent-color:#8a50c7}.upload-queue{display:grid;gap:10px;max-height:380px;overflow:auto;margin-top:14px;padding-right:3px}.upload-empty{margin-top:14px;padding:28px;text-align:center;color:var(--dl-text-3);border:1px dashed var(--dl-border-soft);border-radius:8px}.upload-item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#0d0c0f}.upload-item.state-complete{border-color:#285c43}.upload-item.state-failed{border-color:#6d3035}.upload-item.state-duplicate{border-color:#806023}.upload-file-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:7px;background:#21172d;color:#c9a5f5;font-size:10px;font-weight:800;overflow:hidden}.upload-file-main{min-width:0;display:grid;gap:7px}.upload-file-heading,.upload-file-status{display:flex;justify-content:space-between;gap:12px}.upload-file-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-heading span,.upload-file-status{color:var(--dl-text-3);font-size:11px}.upload-file-status span:first-child{overflow-wrap:anywhere}.upload-item-actions{display:flex;align-items:center;gap:7px}.upload-item-actions .btn{min-height:34px;padding:0 10px}.upload-remove{width:34px;height:34px;border:1px solid var(--dl-border-soft);border-radius:6px;background:#18171a;color:#fff;font-size:20px}.upload-remove:disabled{opacity:.35}.duplicate-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px;border-radius:6px;background:#211a0c;color:#efd384;font-size:12px}.duplicate-actions .btn{min-height:32px;padding:0 10px}.upload-actions{position:sticky;bottom:-28px;margin:18px -28px -28px;padding:16px 28px;background:#111014;border-top:1px solid var(--dl-border-soft)}
@media(max-width:834px) and (orientation:portrait){.upload-panel{width:min(94vw,760px)}.upload-summary{grid-template-columns:1fr}.upload-item{grid-template-columns:48px minmax(0,1fr)}.upload-item-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:639px){.upload-modal{padding:0}.upload-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:22px 14px}.upload-heading{display:grid;gap:8px}.queue-count{justify-self:start}.upload-drop-zone{min-height:160px}.upload-summary{grid-template-columns:1fr}.upload-item{grid-template-columns:42px minmax(0,1fr);padding:11px}.upload-file-icon{width:42px;height:42px}.upload-item-actions{grid-column:1/-1;justify-content:flex-end;flex-wrap:wrap}.duplicate-actions{align-items:stretch}.duplicate-actions span{width:100%}.upload-actions{bottom:-22px;margin:16px -14px -22px;padding:14px;display:grid;grid-template-columns:1fr 1fr}.upload-actions .btn{min-height:44px}.upload-actions [data-start-upload]{grid-column:1/-1;order:-1}}
@media(prefers-reduced-motion:reduce){.upload-drop-zone{transition:none}}

/* SPEC-013 Activity Log — v2.0 */
.activity-content{display:grid;gap:16px}.activity-toolbar{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(135px,1fr)) auto auto;gap:12px;align-items:end;padding:16px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#111014}.activity-toolbar label{display:grid;gap:6px;color:var(--dl-text-2);font-size:13px}.activity-result-line{display:flex;justify-content:space-between;color:var(--dl-text-3);font-size:13px}.activity-table-wrap{overflow:auto;border:1px solid var(--dl-border-soft);border-radius:8px}.activity-table{width:100%;border-collapse:collapse;background:#0d0c0f}.activity-table th,.activity-table td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--dl-border-soft);vertical-align:top}.activity-table th{position:sticky;top:0;background:#17141b;color:var(--dl-text-2);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.activity-table small{display:block;margin-top:4px;color:var(--dl-text-3)}.activity-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700}.activity-status.status-success{background:#17331f;color:#88d39c}.activity-status.status-failed,.activity-status.status-error{background:#3b171a;color:#ff9b9b}.activity-status.status-warning{background:#392f14;color:#f2cf72}.activity-detail{display:block;margin-top:6px;padding:0;border:0;background:none;color:#c8a8ff;text-decoration:underline;cursor:pointer}.btn-danger{border-color:#6a292d;color:#ffb0b5;background:#251013}
@media(max-width:1180px){.activity-toolbar{grid-template-columns:repeat(3,1fr)}.activity-search{grid-column:span 2}}
@media(max-width:834px){.activity-toolbar{grid-template-columns:1fr 1fr}.activity-search{grid-column:1/-1}.activity-table,.activity-table tbody{display:block}.activity-table thead{display:none}.activity-table tr{display:grid;margin:0 0 12px;padding:14px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#0d0c0f}.activity-table td{display:grid;grid-template-columns:92px 1fr;padding:7px 0;border:0}.activity-table td:before{content:attr(data-label);color:var(--dl-text-3);font-size:12px;text-transform:uppercase}.activity-table-wrap{overflow:visible;border:0;background:none}}
@media(max-width:520px){.activity-toolbar{grid-template-columns:1fr}.activity-search{grid-column:auto}.activity-toolbar .btn{width:100%}.activity-table td{grid-template-columns:78px 1fr}}


/* v2.0.3 — restore the original specification layout.
   Remove the unintended divider below the page heading.
   The toolbar position, dimensions, padding, and internal spacing remain unchanged. */
.page-head {
  border-bottom: 0;
}

/* SPEC-022 — Media Preview & Details Panel */
.media-details-modal{padding:24px}
.media-details-panel{width:min(1420px,96vw);max-height:94vh;padding:26px;overflow:auto}
.media-details-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:0 44px 18px 0;border-bottom:1px solid var(--dl-border-soft)}
.media-details-heading h2{margin:4px 0 3px;font-size:25px;line-height:32px}.media-details-heading p{margin:0;color:var(--dl-text-3);font-size:13px}.eyebrow{color:#c8a8ff;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.details-nav{display:flex;gap:8px}.details-nav .btn{min-width:42px;padding:0;font-size:24px}
.media-details-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(420px,.75fr);gap:26px;padding-top:22px}
.media-preview-column,.media-edit-column{min-width:0}.details-preview-stage{min-height:530px;max-height:68vh;display:grid;place-items:center;overflow:auto;border:1px solid var(--dl-border);border-radius:8px;background:#060607}
.details-preview-stage img,.details-preview-stage video{display:block;max-width:100%;max-height:68vh;object-fit:contain;border-radius:6px}.details-preview-stage:not(.original-size) img{width:100%;height:100%;object-fit:contain}.details-preview-stage.original-size{display:block;padding:18px}.details-preview-stage.original-size img{max-width:none;max-height:none;width:auto;height:auto}.details-preview-stage audio{width:min(560px,90%)}.details-preview-stage iframe{width:100%;height:68vh;border:0;background:#fff}.audio-preview{width:100%;display:grid;justify-items:center;gap:24px}.audio-art{width:min(420px,78%);aspect-ratio:1;display:grid;place-items:center;border-radius:8px;background:radial-gradient(circle at center,#39204e,#110d16 68%);color:#d6c0ee;font-size:26px;letter-spacing:.18em}.preview-unavailable{text-align:center;color:var(--dl-text-2)}
.preview-tools{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.preview-tools .btn{min-height:38px}
.metadata-form{display:grid;gap:15px}.metadata-form label{display:grid;gap:6px;color:var(--dl-text-2);font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid.thirds{grid-template-columns:1fr 1fr 1fr;align-items:end}.check-label{min-height:38px;display:flex!important;flex-direction:row!important;align-items:center;gap:9px!important;padding:0 10px;border:1px solid var(--dl-border-soft);border-radius:6px;background:#0d0c0f}.check-label input{width:18px;height:18px;accent-color:var(--dl-accent)}
.technical-metadata{padding:14px;border:1px solid var(--dl-border-soft);border-radius:8px;background:#0c0b0e}.technical-metadata h3{margin:0 0 10px;font-size:14px}.technical-metadata dl{display:grid;grid-template-columns:1fr 1fr;gap:9px 16px;margin:0}.technical-metadata dl>div{min-width:0}.technical-metadata dt{color:var(--dl-text-3);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.technical-metadata dd{margin:3px 0 0;color:var(--dl-text-2);font-size:12px;overflow-wrap:anywhere}
.replace-control{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;padding:13px;border:1px dashed var(--dl-border);border-radius:8px}.replace-control input{display:block;width:100%;margin-top:7px;color:var(--dl-text-2)}.details-actions{position:sticky;bottom:-26px;margin:4px -26px -26px;padding:15px 26px;background:#111014;border-top:1px solid var(--dl-border-soft);z-index:2}.details-actions [data-details-delete]{margin-right:auto}
@media(max-width:1050px){.media-details-layout{grid-template-columns:1fr}.details-preview-stage{min-height:420px}.media-edit-column{padding-bottom:4px}}
@media(max-width:700px){.media-details-modal{padding:0}.media-details-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:20px 14px}.media-details-heading{padding-right:38px}.media-details-layout{gap:18px}.details-preview-stage{min-height:260px;max-height:46vh}.details-preview-stage img,.details-preview-stage video{max-height:46vh}.form-grid,.form-grid.thirds,.technical-metadata dl{grid-template-columns:1fr}.replace-control{grid-template-columns:1fr}.details-actions{bottom:-20px;margin:4px -14px -20px;padding:13px 14px;display:flex;flex-wrap:wrap}.details-actions .btn{flex:1 1 120px}.details-actions [data-details-delete]{margin-right:0}.preview-tools .btn{flex:1}}
@media(prefers-reduced-motion:reduce){.details-preview-stage *{scroll-behavior:auto}}

/* v2.1.1 — responsive ThetaWire logo/hero fix
   Scope: mobile/tablet logo scaling only. No other layout or component changes. */
@media (max-width: 899px) {
  .hero {
    height: auto;
    min-height: 0;
  }

  .hero img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center center;
  }
}

@media (max-width: 639px) {
  .brand {
    min-width: 0;
    flex: 0 1 auto;
  }

  .brand img {
    width: min(150px, 40vw);
    max-width: 100%;
    height: 34px;
    object-fit: contain;
    object-position: left center;
  }
}

/* SPEC-023 — Administration Dashboard */
.dashboard-content{display:grid;gap:24px;padding-bottom:40px}
.dashboard-page-head .actions .svg-icon{width:16px;height:16px}
.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.dashboard-stat{min-height:132px;padding:20px;border:1px solid var(--dl-border,#29262f);border-radius:8px;background:var(--dl-surface-1,#101012);display:grid;grid-template-columns:44px 1fr;grid-template-rows:1fr auto;gap:12px 16px;align-items:center}
.dashboard-stat-icon{width:44px;height:44px;border-radius:8px;background:var(--dl-accent-deep,#241a38);color:#cbb5f6;display:grid;place-items:center}
.dashboard-stat-icon .svg-icon{width:22px;height:22px}
.dashboard-stat div{display:flex;flex-direction:column;gap:3px}
.dashboard-stat strong{font-size:28px;line-height:1.1;color:var(--dl-text-1,#f5f3f7);letter-spacing:-.03em}
.dashboard-stat span{color:var(--dl-text-2,#b6b1bc);font-size:13px}
.dashboard-stat small{grid-column:1/-1;color:var(--dl-text-3,#817b88);font-size:12px}
.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.85fr);gap:24px;align-items:start}
.dashboard-side-stack{display:grid;gap:24px}
.dashboard-panel{border:1px solid var(--dl-border,#29262f);border-radius:8px;background:var(--dl-surface-1,#101012);overflow:hidden}
.dashboard-panel-head{min-height:72px;padding:18px 20px;border-bottom:1px solid var(--dl-border-soft,#1e1c22);display:flex;justify-content:space-between;align-items:center;gap:16px}
.dashboard-panel-head h2{margin:0;color:var(--dl-text-1,#f5f3f7);font-size:17px;line-height:22px}
.dashboard-panel-head p{margin:4px 0 0;color:var(--dl-text-3,#817b88);font-size:12px}
.dashboard-panel-head>a{color:#cbb5f6;text-decoration:none;font-size:13px}
.dashboard-panel-head>a:hover{color:var(--dl-accent-hover,#a36af2)}
.dashboard-activity-list{padding:4px 20px}
.dashboard-activity-item{min-height:72px;display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:12px;align-items:center;border-bottom:1px solid var(--dl-border-soft,#1e1c22)}
.dashboard-activity-item:last-child{border-bottom:0}
.dashboard-activity-item strong{display:block;color:var(--dl-text-1,#f5f3f7);font-size:13px}
.dashboard-activity-item p{margin:4px 0 0;color:var(--dl-text-2,#b6b1bc);font-size:12px;line-height:18px;overflow-wrap:anywhere}
.dashboard-activity-item time{color:var(--dl-text-3,#817b88);font-size:11px;white-space:nowrap}
.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--dl-success,#69d77a)}
.activity-dot.status-failed,.activity-dot.status-error{background:var(--dl-danger,#e05858)}
.dashboard-empty{padding:28px 0;color:var(--dl-text-3,#817b88)}
.dashboard-quick-actions{display:grid;padding:8px 20px 16px}
.dashboard-action{min-height:58px;padding:10px 0;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--dl-border-soft,#1e1c22);color:var(--dl-text-1,#f5f3f7);text-decoration:none}
.dashboard-action:last-child{border-bottom:0}
.dashboard-action>.svg-icon{width:20px;height:20px;color:#b991f4;flex:0 0 auto}
.dashboard-action span{display:flex;flex-direction:column;gap:3px}
.dashboard-action strong{font-size:13px}
.dashboard-action small{font-size:11px;color:var(--dl-text-3,#817b88)}
.dashboard-action:hover:not(.is-disabled){color:#cbb5f6}
.dashboard-action.is-disabled{opacity:.48;cursor:not-allowed}
.dashboard-status-list{margin:0;padding:8px 20px 16px}
.dashboard-status-list>div{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--dl-border-soft,#1e1c22)}
.dashboard-status-list>div:last-child{border-bottom:0}
.dashboard-status-list dt{color:var(--dl-text-2,#b6b1bc);font-size:12px}
.dashboard-status-list dd{margin:0;font-size:12px;font-weight:600}
.status-good{color:var(--dl-success,#69d77a)}
.status-warn{color:#e5b85c}
.status-bad{color:var(--dl-danger,#e05858)}
.media-breakdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:20px}
.media-breakdown-grid>div{min-height:82px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-right:1px solid var(--dl-border-soft,#1e1c22)}
.media-breakdown-grid>div:last-child{border-right:0}
.media-breakdown-grid strong{font-size:24px;color:var(--dl-text-1,#f5f3f7)}
.media-breakdown-grid span{font-size:12px;color:var(--dl-text-3,#817b88)}
@media (max-width:1199px){.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-layout{grid-template-columns:1fr}.dashboard-side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.dashboard-content{gap:18px}.dashboard-stat-grid{grid-template-columns:1fr}.dashboard-side-stack{grid-template-columns:1fr}.dashboard-stat{min-height:112px}.dashboard-panel-head{padding:16px}.dashboard-activity-list,.dashboard-quick-actions,.dashboard-status-list{padding-left:16px;padding-right:16px}.dashboard-activity-item{grid-template-columns:10px minmax(0,1fr)}.dashboard-activity-item time{grid-column:2}.media-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.media-breakdown-grid>div:nth-child(2){border-right:0}.media-breakdown-grid>div:nth-child(-n+2){border-bottom:1px solid var(--dl-border-soft,#1e1c22)}}

/* v2.4.0 secure authentication */
.auth-page{min-height:100vh;margin:0;background:radial-gradient(circle at 50% 10%,#171020 0,#080809 38%,#050506 72%);display:grid;place-items:center;padding:24px;color:var(--dl-text-1)}
.auth-card{width:min(460px,100%);box-sizing:border-box;background:rgba(16,16,18,.96);border:1px solid var(--dl-border);border-radius:12px;padding:32px;box-shadow:0 24px 70px rgba(0,0,0,.5)}
.auth-logo{display:block;max-width:min(320px,85%);height:auto;margin:0 auto 28px}.auth-heading span{font-size:11px;letter-spacing:.16em;color:var(--dl-accent-hover)}.auth-heading h1{font-size:30px;margin:8px 0}.auth-heading p,.auth-note{color:var(--dl-text-2);line-height:1.6}.auth-card label{display:block;margin:18px 0 0;color:var(--dl-text-2);font-size:13px}.auth-card input{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:13px 14px;border:1px solid var(--dl-border);border-radius:6px;background:var(--dl-surface-2);color:var(--dl-text-1);font:inherit}.auth-card input:focus{outline:0;box-shadow:var(--dl-focus);border-color:var(--dl-accent)}.auth-submit{width:100%;justify-content:center;margin-top:22px;min-height:44px}.auth-error{margin:18px 0 0;padding:12px 14px;border:1px solid var(--dl-danger);border-radius:6px;background:var(--dl-danger-bg);color:#ffdada}.auth-note{font-size:12px;margin:22px 0 0;text-align:center}

/* ThetaWire v2.5.0 — Article Manager */
.article-manager-content{padding-top:24px;padding-bottom:40px}.article-manager-layout{display:grid;grid-template-columns:minmax(300px,36%) minmax(0,1fr);gap:24px;align-items:start}.article-list-panel,.article-editor-panel{background:var(--dl-surface-1);border:1px solid var(--dl-border-soft);border-radius:8px;overflow:hidden}.article-panel-head{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--dl-border-soft)}.article-panel-head h2{margin:0;font-size:19px}.article-panel-head p{margin:3px 0 0;color:var(--dl-text-2)}.article-search{width:min(210px,48%)}.article-list{max-height:780px;overflow:auto;padding:10px}.article-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;border:1px solid transparent;border-radius:8px}.article-list-item:hover{background:var(--dl-surface-2)}.article-list-item.active{background:var(--dl-accent-deep);border-color:#4c3471}.article-list-item strong{font-size:15px}.article-list-item p{margin:5px 0;color:var(--dl-text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-list-item small{color:var(--dl-text-3)}.article-featured-badge,.article-save-state{padding:4px 9px;border-radius:999px;background:#2a1b42;color:#d0b6fb;font-size:11px;white-space:nowrap}.article-editor-form{display:grid;gap:18px;padding:0 22px 24px}.article-editor-form>.article-panel-head{margin:0 -22px}.article-editor-form label{display:grid;gap:7px;color:var(--dl-text-2);font-size:12px;font-weight:600}.article-editor-form .control{width:100%;height:40px}.article-editor-form textarea.control{height:auto;padding-top:11px;resize:vertical;color:var(--dl-text-1)}.article-body{min-height:320px;line-height:1.65}.article-editor-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;padding-top:8px}.article-alert{margin-bottom:18px;padding:13px 16px;border-radius:7px}.article-alert-error{background:#301417;border:1px solid #743035;color:#ffb3b6}.article-alert-success{background:#102a17;border:1px solid #285b34;color:#8ce69a}
@media(max-width:1100px){.article-manager-layout{grid-template-columns:1fr}.article-list{max-height:420px}}@media(max-width:639px){.article-manager-content{padding-top:14px}.article-panel-head{align-items:flex-start;flex-direction:column}.article-search{width:100%}.article-editor-form{padding-left:14px;padding-right:14px}.article-editor-form>.article-panel-head{margin-left:-14px;margin-right:-14px}.article-editor-actions{grid-template-columns:1fr}.article-editor-actions span{display:none}.article-editor-actions .btn{width:100%}}

/* ThetaWire v2.6.0 — Article Editor Completion */
.article-head-tools{display:flex;align-items:center;gap:10px}.btn-compact{min-height:34px;padding:7px 11px;font-size:12px}.slug-row,.media-choice-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.field-counter{justify-self:end;color:var(--dl-text-3);font-size:11px;font-weight:400}.article-writing-toolbar{display:flex;align-items:center;gap:6px;min-height:42px;padding:6px 8px;background:#0d0d10;border:1px solid var(--dl-border-soft);border-bottom:0;border-radius:7px 7px 0 0}.article-writing-toolbar button{min-width:34px;height:30px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--dl-text-2);cursor:pointer}.article-writing-toolbar button:hover,.article-writing-toolbar button:focus-visible{background:var(--dl-surface-2);border-color:var(--dl-border);color:var(--dl-text-1)}.article-writing-toolbar+.article-body{border-top-left-radius:0;border-top-right-radius:0}.article-word-count{margin-left:auto;color:var(--dl-text-3);font-size:11px}.selected-media-preview{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:14px;padding:12px;background:#0d0d10;border:1px solid var(--dl-border-soft);border-radius:8px}.selected-media-preview img,.selected-media-preview video{width:130px;height:74px;object-fit:cover;border-radius:6px}.selected-media-preview span{font-size:13px;color:var(--dl-text-2)}.article-revisions{border:1px solid var(--dl-border-soft);border-radius:8px;background:#0d0d10}.article-revisions summary{display:flex;align-items:center;gap:8px;padding:13px 15px;cursor:pointer;color:var(--dl-text-2);font-weight:600}.article-revisions summary::-webkit-details-marker{display:none}.revision-list{border-top:1px solid var(--dl-border-soft);padding:4px 14px 10px}.revision-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid #1a191e}.revision-row:last-child{border-bottom:0}.revision-row strong,.revision-row small{display:block}.revision-row small{margin-top:3px;color:var(--dl-text-3)}.article-modal[hidden]{display:none}.article-modal{position:fixed;inset:0;z-index:1500;display:grid;place-items:center;padding:24px}.article-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(5px)}.article-modal-card{position:relative;width:min(100%,980px);max-height:calc(100vh - 48px);overflow:auto;background:#0c0c0f;border:1px solid #3a3443;border-radius:12px;box-shadow:0 28px 90px rgba(0,0,0,.62)}.article-modal-card>header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 24px;background:rgba(12,12,15,.96);border-bottom:1px solid var(--dl-border-soft);backdrop-filter:blur(10px)}.article-modal-card header h2{margin:3px 0 0;font-size:25px}.article-modal-card header p{margin:4px 0 0;color:var(--dl-text-2)}.modal-close{width:38px;height:38px;border:1px solid var(--dl-border);border-radius:50%;background:transparent;color:var(--dl-text-1);font-size:24px;cursor:pointer}.modal-open{overflow:hidden}.article-preview-modal{width:min(100%,900px);padding-bottom:32px}.article-preview-modal>header{position:static}.preview-category{color:#c9a9ff;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.preview-meta{display:flex;gap:16px;padding:14px 24px;color:var(--dl-text-3);font-size:12px}.preview-media{margin:0 24px 24px}.preview-media img,.preview-media video{display:block;width:100%;max-height:480px;object-fit:cover;border-radius:10px}.preview-summary{margin:0 24px 24px;font-size:17px;line-height:1.6;color:var(--dl-text-2)}.preview-body{padding:0 24px;color:var(--dl-text-1);font-size:16px;line-height:1.75}.preview-body h3{font-size:23px;margin:28px 0 12px}.preview-body p{margin:0 0 19px}.preview-body ul{margin:0 0 20px;padding-left:22px}.preview-body a{color:#c9a9ff}.media-picker-modal{width:min(100%,1040px);padding-bottom:20px}.media-picker-modal>input{width:calc(100% - 48px);margin:18px 24px}.media-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:0 24px 24px}.media-picker-item{display:grid;gap:8px;padding:0 0 12px;overflow:hidden;text-align:left;background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:9px;color:var(--dl-text-1);cursor:pointer}.media-picker-item:hover,.media-picker-item.selected{border-color:var(--dl-accent);box-shadow:0 0 0 2px rgba(142,84,233,.16)}.media-picker-item strong,.media-picker-item small{padding:0 11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-picker-item small{color:var(--dl-text-3)}.media-picker-thumb{position:relative;display:block;height:132px;background:#050506}.media-picker-thumb img,.media-picker-thumb video{width:100%;height:100%;object-fit:cover}.video-marker{position:absolute;right:8px;bottom:8px;padding:4px 7px;border-radius:4px;background:rgba(0,0,0,.78);font-size:10px;font-weight:700}.article-save-state{transition:color .16s ease}.article-editor-form:has(:invalid) [data-publish]{opacity:.88}
@media(max-width:900px){.media-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.article-modal{padding:14px}}
@media(max-width:639px){.article-head-tools{width:100%;justify-content:space-between}.slug-row,.media-choice-row{grid-template-columns:1fr}.article-writing-toolbar{flex-wrap:wrap}.article-word-count{width:100%;margin-left:0;padding:3px}.selected-media-preview{grid-template-columns:92px minmax(0,1fr)}.selected-media-preview img,.selected-media-preview video{width:92px;height:58px}.article-modal{padding:0}.article-modal-card{max-height:100vh;height:100vh;border-radius:0}.media-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 14px 20px}.media-picker-modal>input{width:calc(100% - 28px);margin:14px}.article-modal-card>header{padding:16px}.preview-meta,.preview-summary,.preview-body{padding-left:16px;padding-right:16px}.preview-media{margin-left:16px;margin-right:16px}}

/* ThetaWire v2.6.2 — Database Article Workflow + Public Homepage */
.public-site{margin:0;background:#050506;color:#f5f3f7;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}.public-site *{box-sizing:border-box}.public-site a{color:inherit}.public-topbar{height:69px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#080809;border-bottom:1px solid #242329}.public-brand{display:flex;align-items:center;min-width:0}.public-brand img{display:block;width:min(340px,40vw);height:42px;object-fit:contain;object-position:left center}.public-topnav{display:flex;align-items:center;gap:40px;height:100%;font-size:13px;text-transform:uppercase}.public-topnav a{position:relative;text-decoration:none;opacity:.92}.public-topnav a:hover,.public-topnav a.active{color:#c8a8ff}.public-topnav a.active:after{content:"";position:absolute;left:50%;bottom:-18px;width:55px;height:2px;transform:translateX(-50%);background:#8e54e9}.public-hero{height:352px;overflow:hidden;border-bottom:1px solid #242329;background:#020203}.public-hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}.public-category-layout{max-width:1480px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px}.public-categories{grid-column:1;width:100%;margin:0;padding:28px 0 32px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.public-category{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:76px;text-decoration:none;color:#f5f3f7;font-size:12px}.public-category .public-icon{width:32px;height:32px}.public-category:hover,.public-category.active,.public-category.active-all{color:#a36af2}.public-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.public-main{max-width:1480px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:28px;align-items:start}.public-content-column{display:grid;gap:28px;min-width:0}.public-feature-post{min-height:330px;border:1px solid #29262f;border-radius:12px;background:#0a0a0c;overflow:hidden}.public-post-header{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:24px 24px 10px}.public-post-heading{min-width:0}.public-post-category{display:flex;align-items:center;gap:9px;color:#a36af2;font-size:12px;font-weight:600;letter-spacing:.03em}.public-post-category .public-icon{width:28px;height:28px}.public-post-header h1{margin:7px 0 0;font-size:clamp(25px,2.4vw,40px);line-height:1.1;letter-spacing:-.025em}.public-post-header h1 a{text-decoration:none}.public-post-header time{padding-top:7px;color:#f5f3f7;font-size:clamp(17px,1.7vw,24px);font-weight:500;white-space:nowrap}.public-post-body{display:grid;grid-template-columns:minmax(250px,36%) minmax(0,64%);min-height:250px}.public-post-copy{padding:18px 24px 24px;display:flex;flex-direction:column;align-items:flex-start}.public-post-copy>p{margin:0 0 24px;color:#b6b1bc;font-size:15px;line-height:1.65;max-width:34ch}.public-post-meta{display:flex;align-items:center;gap:10px;margin-top:auto;margin-bottom:18px}.public-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#241a38;border:1px solid #513b75;color:#d9c7f7;font-weight:700}.public-post-meta strong{font-size:13px}.public-read-button,.public-card-read{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-width:180px;min-height:42px;padding:9px 16px;border:1px solid #6d3ab1;border-radius:7px;text-decoration:none;color:#c79cff;text-transform:uppercase;font-size:12px;letter-spacing:.03em}.public-read-button:hover,.public-card-read:hover{border-color:#a36af2;background:#15101d}.public-read-button .public-icon,.public-card-read .public-icon{width:17px;height:17px}.public-post-media{position:relative;display:block;min-height:250px;overflow:hidden;background:#050506}.public-post-media img,.public-post-media video{display:block;width:100%;height:100%;min-height:250px;object-fit:cover}.public-video-badge{position:absolute;right:12px;top:12px;padding:5px 8px;border-radius:999px;background:rgba(8,8,9,.85);font-size:10px;font-weight:700;letter-spacing:.1em}.public-media-fallback,.public-card-fallback{width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#241a38,#09090b 65%);color:#8e54e9}.public-media-fallback .public-icon{width:90px;height:90px}.public-side-menu{padding:13px 0 0;position:sticky;top:18px}.public-side-menu h2{margin:0 0 17px;color:#a36af2;font-size:21px;font-weight:500}.public-side-menu h2:after{content:"";display:block;width:42px;height:2px;margin-top:10px;background:#8e54e9}.public-side-menu a{display:flex;min-height:54px;align-items:center;padding:0 4px;border-bottom:1px solid #1e1c22;text-decoration:none;color:#d9d6dc;font-size:13px}.public-side-menu a:hover{color:#c8a8ff}.public-empty-posts{padding:48px;border:1px solid #29262f;border-radius:12px;background:#0a0a0c}.public-empty-posts h1{margin:0 0 14px;font-size:32px}.public-empty-posts p{max-width:720px;margin:0 0 26px;color:#b6b1bc;line-height:1.7}.public-previous{max-width:1480px;margin:54px auto 0;padding:0 28px}.public-previous>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.public-previous>header h2{margin:0;color:#a36af2;font-size:16px;font-weight:500}.public-previous>header a{color:#a36af2;text-decoration:none;font-size:13px}.public-article-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.public-article-card{min-height:370px;display:flex;flex-direction:column;overflow:hidden;background:#101012;border:1px solid #34303a;border-radius:10px}.public-card-image{position:relative;display:block;height:190px;overflow:hidden;background:#050506}.public-card-image img,.public-card-image video{width:100%;height:100%;object-fit:cover}.public-card-image>span{position:absolute;right:10px;top:10px;padding:5px 9px;border-radius:999px;background:rgba(8,8,9,.88);font-size:10px;font-weight:700;letter-spacing:.08em}.public-card-fallback .public-icon{width:62px;height:62px}.public-card-details{display:flex;flex:1;flex-direction:column;padding:17px}.public-card-details h3{margin:0 0 8px;font-size:16px;line-height:1.3}.public-card-details h3 a{text-decoration:none}.public-card-details>strong{color:#a36af2;font-size:12px;font-weight:500}.public-card-details>div{display:flex;justify-content:space-between;gap:12px;margin:16px 0;color:#b6b1bc;font-size:11px}.public-card-details>div span{display:flex;align-items:center;gap:5px}.public-card-details>div .public-icon{width:14px;height:14px}.public-card-read{min-width:0;width:100%;margin-top:auto;min-height:38px;padding:7px 12px}.public-pagination{min-height:72px;margin-top:18px;padding:14px 0;border-top:1px solid #201e24;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;color:#b6b1bc;font-size:13px}.public-pagination>span:last-child{text-align:right}.public-pagination nav{display:flex;gap:8px}.public-pagination nav a{width:42px;height:42px;display:grid;place-items:center;border:1px solid #29262f;border-radius:7px;text-decoration:none}.public-pagination nav a.active{background:#8145d1;border-color:#8145d1;color:#fff}.public-pagination nav a:hover:not(.disabled){border-color:#8e54e9}.public-pagination nav a.disabled{opacity:.35;pointer-events:none}.public-footer{padding:30px 20px;text-align:center;color:#817b88;font-size:12px}.public-article-shell{width:min(100% - 40px,1050px);margin:50px auto}.public-full-article{padding:clamp(22px,4vw,54px);background:#0a0a0c;border:1px solid #29262f;border-radius:12px}.public-full-article>header>span{color:#a36af2;font-size:12px;letter-spacing:.08em}.public-full-article>header h1{margin:10px 0 16px;font-size:clamp(34px,5vw,64px);line-height:1.05;letter-spacing:-.035em}.public-full-article>header>div{display:flex;justify-content:space-between;gap:20px;color:#b6b1bc}.public-full-media{margin:38px 0}.public-full-media img,.public-full-media video{display:block;width:100%;max-height:650px;object-fit:cover;border-radius:10px}.public-full-media figcaption{padding-top:9px;color:#817b88;font-size:12px}.public-video-embed{position:relative;padding-top:56.25%;margin:38px 0}.public-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:10px}.public-article-lead{font-size:20px;line-height:1.65;color:#c9c4ce}.public-article-content{font-size:17px;line-height:1.82;color:#e8e5eb}.public-article-content h2{margin:38px 0 14px;font-size:30px}.public-article-content p{margin:0 0 24px}.public-article-content a{color:#c8a8ff}.public-article-content ul{padding-left:24px}.public-article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:42px;padding-top:22px;border-top:1px solid #1e1c22}.public-article-tags span{padding:6px 10px;border-radius:999px;background:#241a38;color:#cbb5f6;font-size:11px}
@media(max-width:1199px){.public-main{grid-template-columns:minmax(0,1fr) 190px}.public-article-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-post-body{grid-template-columns:minmax(230px,40%) minmax(0,60%)}}
@media(max-width:899px){.public-topbar{height:60px;padding:0 18px}.public-brand img{width:min(230px,45vw);height:36px}.public-topnav{gap:20px;font-size:11px}.public-hero{height:max(240px,42vw)}.public-category-layout{grid-template-columns:1fr;padding:0 18px}.public-categories{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;overflow:visible;padding:20px 0;gap:14px}.public-category{flex:0 1 112px;min-width:0}.public-main{grid-template-columns:1fr;padding:0 18px}.public-side-menu{display:none}.public-post-body{grid-template-columns:36% 64%}.public-previous{padding:0 18px}.public-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-pagination{grid-template-columns:1fr}.public-pagination>span,.public-pagination>span:last-child{text-align:center}.public-pagination nav{justify-content:center;overflow-x:auto}}
@media(max-width:639px){.public-topnav a:nth-child(2){display:none}.public-brand img{width:min(205px,54vw);height:32px}.public-hero{height:auto;min-height:0}.public-hero img{height:auto;max-height:none;object-fit:contain}.public-category-layout{padding:0 14px}.public-categories{width:100%;padding-top:16px;padding-bottom:22px;gap:14px 10px;justify-content:center}.public-category{flex:0 1 calc(33.333% - 10px);max-width:112px;min-width:88px}.public-feature-post{min-height:0}.public-post-header{padding:20px 18px 10px;gap:15px}.public-post-header h1{font-size:25px}.public-post-header time{font-size:16px}.public-post-body{grid-template-columns:1fr}.public-post-copy{padding:14px 18px 20px}.public-post-media{min-height:220px;order:2}.public-post-media img,.public-post-media video{min-height:220px}.public-read-button{width:100%}.public-previous{margin-top:40px}.public-article-grid{grid-template-columns:1fr}.public-article-card{min-height:405px}.public-card-image{height:220px}.public-pagination nav a{width:40px;height:40px}.public-full-article>header>div{flex-direction:column;gap:6px}.public-article-shell{width:min(100% - 24px,1050px);margin:22px auto}.public-full-article{padding:22px 18px}.public-full-article>header h1{font-size:38px}}
.article-editor-actions{grid-template-columns:auto 1fr auto auto auto}
@media(max-width:639px){.article-editor-actions{grid-template-columns:1fr}}

/* SPEC-025 Category Manager */
.category-manager-content{padding-top:24px}.category-manager-layout{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(460px,1.18fr);gap:24px;align-items:start}.category-list-panel,.category-editor-panel{background:var(--dl-surface-1,#101012);border:1px solid var(--dl-border,#29262f);border-radius:8px;overflow:hidden}.category-list{display:grid;gap:8px;padding:12px 16px 18px;max-height:720px;overflow:auto}.category-list-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid transparent;border-radius:8px;color:var(--dl-text-1,#f5f3f7);text-decoration:none;background:#0d0d0f;transition:160ms ease}.category-list-item:hover,.category-list-item.active{border-color:var(--dl-accent,#8e54e9);background:#15111d}.category-list-item strong{display:block;font-size:14px}.category-list-item p{margin:4px 0;color:var(--dl-text-2,#b6b1bc);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-list-item small{color:var(--dl-text-3,#817b88)}.category-icon-preview{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#211833;border:1px solid #4d3674;color:#d4c1f7;font-weight:700;font-size:18px}.category-search{max-width:220px}.category-editor-form{padding-bottom:18px}.category-editor-form>label,.category-editor-form>.form-grid,.category-editor-form>.check-label{display:block;margin:0 22px 18px}.category-editor-form .form-grid{display:grid;grid-template-columns:1fr 160px;gap:14px}.category-editor-actions{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:4px 22px 0}.category-danger-zone{margin:22px;border:1px solid #5f252a;border-radius:8px;background:#1c0f11;padding:14px}.category-danger-zone summary{cursor:pointer;color:#ff9b9b;font-weight:650}.category-danger-zone p{color:#c9a3a6}.category-danger-zone label{display:block;margin:12px 0}.status-pill.pending{background:#2a2310;color:#e6c76f}.category-editor-panel .article-panel-head{margin-bottom:20px}
@media(max-width:1100px){.category-manager-layout{grid-template-columns:1fr}.category-list{max-height:440px}}
@media(max-width:640px){.category-manager-content{padding:16px}.category-manager-layout{gap:16px}.category-list-item{grid-template-columns:42px minmax(0,1fr)}.category-list-item>.status-pill{grid-column:2;justify-self:start}.category-icon-preview{width:42px;height:42px}.category-editor-form .form-grid{grid-template-columns:1fr}.category-editor-actions{grid-template-columns:1fr}.category-editor-actions span{display:none}.category-editor-actions .btn{width:100%}}

/* ThetaWire v2.7.2 — same-page reader and public search */
.public-inline-reader,.public-search-shell{max-width:1480px;margin:0 auto;padding:0 28px 28px}.public-inline-reader{scroll-margin-top:24px}.public-reader-close{display:inline-flex;align-items:center;gap:9px;margin:0 0 20px;color:#c8a8ff;text-decoration:none;font-size:13px}.public-reader-close:hover{color:#fff}.public-reader-close .public-icon{width:18px;height:18px}.public-inline-reader .public-full-article{width:min(100%,1100px);margin:0 auto}.public-search-panel{padding:26px;border:1px solid #29262f;border-radius:12px;background:#0a0a0c}.public-search-panel>header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.public-search-panel>header>span{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:#241a38;color:#c8a8ff}.public-search-panel>header .public-icon{width:24px;height:24px}.public-search-panel h1{margin:0 0 4px;font-size:28px}.public-search-panel p{margin:0;color:#b6b1bc}.public-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.public-search-form input{width:100%;height:48px;padding:0 16px;border:1px solid #34303a;border-radius:8px;background:#101012;color:#f5f3f7;font:inherit}.public-search-form input:focus{outline:none;border-color:#8e54e9;box-shadow:var(--dl-focus,0 0 0 3px rgb(142 84 233 / 28%))}.public-search-form button{height:48px;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 22px;border:1px solid #8e54e9;border-radius:8px;background:#8145d1;color:#fff;font:inherit;cursor:pointer}.public-search-form button:hover{background:#8e54e9}.public-search-form button .public-icon{width:18px;height:18px}.public-search-results{margin-top:32px}.public-search-results>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.public-search-results h2{margin:0;font-size:18px}.public-search-results>header a{color:#c8a8ff;text-decoration:none}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:639px){.public-inline-reader,.public-search-shell{padding:0 12px 22px}.public-search-panel{padding:20px 16px}.public-search-form{grid-template-columns:1fr}.public-search-form button{width:100%}.public-search-results>header{align-items:flex-start;flex-direction:column}.public-inline-reader .public-full-article{padding:22px 18px}}

/* v2.7.3 — Category form spacing and Activity Log optional filters */
.category-editor-form>label{display:grid;gap:10px;margin:0 22px 26px}
.category-editor-form>.form-grid{margin:0 22px 26px;gap:20px}
.category-editor-form .form-grid label{display:grid;gap:10px}
.category-editor-form textarea.control{min-height:112px;resize:vertical}
.category-editor-panel .article-panel-head{margin-bottom:26px}

.activity-toolbar{display:grid;gap:18px;padding:18px 20px}
.activity-core-filters{display:grid;grid-template-columns:minmax(280px,2fr) minmax(170px,1fr) minmax(170px,1fr) auto;gap:16px;align-items:end}
.activity-toolbar label{display:grid;gap:8px;color:var(--dl-text-2);font-size:13px}
.activity-filter-actions{display:flex;gap:10px;align-items:end;white-space:nowrap}
.activity-add-filter{position:relative}
.activity-add-filter>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.activity-add-filter>summary::-webkit-details-marker{display:none}
.activity-filter-menu{position:absolute;z-index:30;top:calc(100% + 8px);right:0;width:220px;padding:8px;background:#17141b;border:1px solid var(--dl-border);border-radius:8px;box-shadow:0 16px 36px rgba(0,0,0,.42)}
.activity-filter-menu button{display:block;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--dl-text-1);text-align:left;cursor:pointer}
.activity-filter-menu button:hover,.activity-filter-menu button:focus-visible{background:var(--dl-accent-deep);color:#fff;outline:none}
.activity-optional-filters{display:flex;flex-wrap:wrap;gap:14px}
.activity-optional-filter{min-width:220px;max-width:360px;flex:1 1 240px;padding:14px;background:#0d0c0f;border:1px solid var(--dl-border-soft);border-radius:8px}
.activity-optional-filter[hidden]{display:none!important}
.activity-filter-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:var(--dl-text-1)}
.activity-filter-panel-head button{width:30px;height:30px;border:0;border-radius:6px;background:transparent;color:var(--dl-text-2);font-size:22px;line-height:1;cursor:pointer}
.activity-filter-panel-head button:hover,.activity-filter-panel-head button:focus-visible{background:#251c33;color:#fff;outline:none}
.activity-date-range{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.activity-danger-row{display:flex;justify-content:flex-end;padding-top:2px;border-top:1px solid var(--dl-border-soft)}
.activity-pagination{display:flex;align-items:center;justify-content:center;gap:18px;padding:18px 0 8px}
.activity-pagination>[data-activity-pages]{display:flex;align-items:center;gap:10px}
.activity-pagination .btn{min-width:46px;min-height:42px}
.activity-pagination>[data-activity-prev],.activity-pagination>[data-activity-next]{min-width:112px}

@media(max-width:1180px){.activity-core-filters{grid-template-columns:minmax(240px,2fr) 1fr 1fr}.activity-filter-actions{grid-column:1/-1}}
@media(max-width:834px){.activity-core-filters{grid-template-columns:1fr 1fr}.activity-search{grid-column:1/-1}.activity-filter-actions{grid-column:1/-1}.activity-date-range{grid-template-columns:1fr}.activity-pagination{gap:12px;flex-wrap:wrap}}
@media(max-width:520px){.activity-core-filters{grid-template-columns:1fr}.activity-search,.activity-filter-actions{grid-column:auto}.activity-filter-actions{display:grid;grid-template-columns:1fr 1fr}.activity-filter-actions .btn,.activity-add-filter>summary{width:100%}.activity-filter-menu{left:0;right:auto;width:min(260px,calc(100vw - 64px))}.activity-optional-filter{min-width:100%}.activity-pagination{gap:10px}.activity-pagination>[data-activity-prev],.activity-pagination>[data-activity-next]{min-width:98px}.category-editor-form>label,.category-editor-form>.form-grid{margin-left:18px;margin-right:18px}}

/* v2.7.4 focused layout corrections */
.activity-toolbar{grid-template-columns:minmax(0,1fr)!important}
.activity-danger-row{grid-column:1/-1;display:flex;justify-content:flex-end;clear:both;margin-top:2px;padding-top:16px;border-top:1px solid var(--dl-border-soft)}
.public-post-copy{display:block;overflow-wrap:anywhere}
.public-post-summary{margin:0 0 22px!important;color:#c9c4ce!important;font-size:16px!important;line-height:1.7!important}
.public-post-article-content{color:#e8e5eb;font-size:15px;line-height:1.78}
.public-post-article-content p{margin:0 0 20px}
.public-post-article-content h2{margin:28px 0 12px;font-size:24px}
.public-post-article-content ul{padding-left:22px}
.public-post-meta{margin-top:26px;margin-bottom:0;flex-wrap:wrap}
.public-post-hits{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:#b6b1bc;font-size:12px}
.public-post-hits .public-icon{width:15px;height:15px}
.public-post-media{min-height:100%;height:100%}
.public-post-media img,.public-post-media video{height:100%;min-height:330px}
.public-card-details h3{margin:7px 0 14px;font-size:17px}
.public-card-category{color:#a36af2!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.03em}
.public-card-meta{display:grid;gap:9px;margin:0;color:#b6b1bc;font-size:11px}
.public-card-meta>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.public-card-meta dt{color:#817b88}
.public-card-meta dd{margin:0;display:flex;align-items:center;gap:5px;text-align:right}
.public-card-meta .public-icon{width:14px;height:14px}
.public-previous-empty{min-height:220px;display:grid;place-items:center;padding:30px;border:1px dashed #29262f;border-radius:10px;color:#817b88;text-align:center}
@media(max-width:639px){.public-post-hits{margin-left:0;width:100%}.public-post-media img,.public-post-media video{min-height:240px}}

/* v2.7.5 article media controls, wrapping, inline upload, YouTube preview */
.article-upload-inline{display:grid;gap:6px;margin-top:10px}.article-upload-inline small,.article-editor-form label>small{color:var(--dl-text-3);font-size:11px;line-height:1.45}.article-media-layout-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(220px,1.25fr);gap:14px;align-items:end}.article-wrap-control{min-height:38px;padding:8px 10px;border:1px solid var(--dl-border-soft);border-radius:7px;background:#0d0d10}.article-preview-media{margin:0 24px 24px;overflow:hidden}.article-preview-media img,.article-preview-media video,.article-preview-media iframe{display:block;width:100%;aspect-ratio:16/9;max-height:520px;border:0;border-radius:10px;object-fit:contain;background:#050506}.article-preview-media a{display:inline-flex;margin-top:9px;color:#c8a8ff;text-decoration:none;font-size:12px}.article-preview-media.media-size-small{max-width:34%}.article-preview-media.media-size-medium{max-width:48%}.article-preview-media.media-size-large{max-width:68%}.article-preview-media.media-size-full{max-width:100%}.article-preview-media.media-align-left{margin-right:auto}.article-preview-media.media-align-right{margin-left:auto}.article-preview-media.media-align-center{margin-left:auto;margin-right:auto}
.public-post-body{--post-media-width:56%;display:flow-root;min-height:250px}.public-post-body.media-size-small{--post-media-width:30%}.public-post-body.media-size-medium{--post-media-width:42%}.public-post-body.media-size-large{--post-media-width:56%}.public-post-body.media-size-full{--post-media-width:100%}.public-post-body.no-wrap{display:flex;align-items:stretch}.public-post-body.no-wrap.media-align-left{flex-direction:row}.public-post-body.no-wrap.media-align-right{flex-direction:row-reverse}.public-post-body.no-wrap.media-align-center,.public-post-body.no-wrap.media-size-full{display:block}.public-post-body.no-wrap .public-post-media{flex:0 0 var(--post-media-width);width:var(--post-media-width)}.public-post-body.no-wrap .public-post-copy{flex:1 1 auto;min-width:0}.public-post-body.no-wrap.media-align-center .public-post-media,.public-post-body.no-wrap.media-size-full .public-post-media{width:var(--post-media-width);margin-left:auto;margin-right:auto}.public-post-body.is-wrap .public-post-media{width:var(--post-media-width);margin:8px 24px 18px}.public-post-body.is-wrap.media-align-left .public-post-media{float:left;margin-left:24px}.public-post-body.is-wrap.media-align-right .public-post-media{float:right;margin-right:24px}.public-post-body.is-wrap.media-align-center .public-post-media,.public-post-body.is-wrap.media-size-full .public-post-media{float:none;width:var(--post-media-width);margin:8px auto 20px}.public-post-body.is-wrap .public-post-copy{display:block;padding:18px 24px 24px}.public-post-body.is-wrap .public-post-meta{clear:both}.public-post-media{height:auto;min-height:0;border-radius:9px;overflow:hidden}.public-post-media img,.public-post-media video{display:block;width:100%;height:auto;min-height:0;max-height:560px;aspect-ratio:auto;object-fit:contain;background:#050506}.public-post-body.no-wrap .public-post-media img,.public-post-body.no-wrap .public-post-media video{height:100%;min-height:280px;object-fit:contain}.public-youtube-frame{position:relative;width:100%;aspect-ratio:16/9;background:#050506}.public-youtube-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.public-youtube-link{display:flex;justify-content:flex-end;padding:9px 12px;background:#0d0d10;color:#c8a8ff!important;text-decoration:none;font-size:12px}.public-youtube-link:hover{text-decoration:underline}
@media(max-width:899px){.article-media-layout-controls{grid-template-columns:1fr 1fr}.article-wrap-control{grid-column:1/-1}.public-post-body.no-wrap{display:block}.public-post-body.no-wrap .public-post-media,.public-post-body.is-wrap .public-post-media{float:none!important;width:min(100%,680px)!important;margin:8px auto 18px!important}.public-post-body .public-post-copy{padding:16px 20px 22px}.public-post-media img,.public-post-media video{max-height:480px}}
@media(max-width:639px){.article-media-layout-controls{grid-template-columns:1fr}.article-wrap-control{grid-column:auto}.article-preview-media.media-size-small,.article-preview-media.media-size-medium,.article-preview-media.media-size-large,.article-preview-media.media-size-full{max-width:100%;margin-left:16px;margin-right:16px}.public-post-body.no-wrap .public-post-media,.public-post-body.is-wrap .public-post-media{width:100%!important;margin:8px 0 16px!important;border-radius:0}.public-post-media img,.public-post-media video{width:100%;max-height:none;min-height:0;object-fit:contain}}
/* v2.8.0 User Management */
.user-manager-content{padding-bottom:56px}.user-manager-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:28px;align-items:start}.user-list-panel,.user-editor-panel,.user-secret-panel,.user-security-card,.user-session-panel{background:var(--dl-surface-1,#101012);border:1px solid var(--dl-border,#29262f);border-radius:8px}.user-list-panel{overflow:hidden}.user-search{display:flex;gap:10px;padding:18px;border-bottom:1px solid var(--dl-border-soft,#1e1c22)}.user-list{display:grid}.user-list-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 18px;color:inherit;text-decoration:none;border-bottom:1px solid var(--dl-border-soft,#1e1c22)}.user-list-item:hover,.user-list-item.active{background:var(--dl-surface-2,#151419)}.user-list-item.active{box-shadow:inset 3px 0 0 var(--dl-accent,#8e54e9)}.user-list-item small{display:block;color:var(--dl-text-3,#817b88);margin-top:3px}.user-editor-panel{padding:22px}.user-editor-form>label,.user-editor-form .form-grid{margin-top:20px}.user-secret-panel{padding:22px;margin-bottom:24px;border-color:#5e4188}.user-secret-panel code{display:block;background:#080809;color:#d6c0ff;padding:14px;border-radius:6px;letter-spacing:2px;word-break:break-all}.recovery-code-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.recovery-code-grid code{text-align:center}.user-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.user-security-card{padding:20px}.user-security-card h3{display:flex;align-items:center;gap:9px;margin-top:0}.user-security-card form{display:grid;gap:14px}.user-session-panel{margin-top:18px;padding:20px}.user-session-panel>div:first-child{display:inline-block}.user-session-panel>form{float:right}.user-session-list{clear:both;display:grid;gap:8px;margin-top:18px}.user-session-list>div{display:grid;grid-template-columns:160px 1fr 90px;gap:12px;padding:11px 0;border-top:1px solid var(--dl-border-soft,#1e1c22);color:var(--dl-text-2,#b6b1bc)}
@media(max-width:1000px){.user-manager-layout{grid-template-columns:1fr}.user-list{grid-template-columns:repeat(2,minmax(0,1fr))}.user-security-grid{grid-template-columns:1fr}}
@media(max-width:640px){.user-list{grid-template-columns:1fr}.recovery-code-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-session-list>div{grid-template-columns:1fr}.user-session-panel>form{float:none;margin-top:14px}}


/* v2.8.1 user editor spacing and avatar chooser */
.user-editor-form{display:grid;gap:26px}
.user-editor-form>.article-panel-head{margin:-22px -22px 0}
.user-editor-form>label,.user-editor-form>.form-grid{margin-top:0}
.user-editor-form label{display:grid;gap:10px;color:var(--dl-text-2,#b6b1bc);font-size:13px;font-weight:600}
.user-editor-form .control{width:100%;min-height:44px}
.user-editor-form .form-grid{gap:24px}
.user-identity-grid,.user-access-grid{align-items:start}
.user-avatar-picker{margin:0;padding:20px;border:1px solid var(--dl-border-soft,#1e1c22);border-radius:8px;background:#0d0c0f}
.user-avatar-picker legend{padding:0 8px;color:var(--dl-text-1,#f5f3f7);font-size:14px;font-weight:650}
.user-avatar-picker>p{margin:0 0 16px;color:var(--dl-text-3,#817b88);font-size:12px}
.user-avatar-options{display:grid;grid-template-columns:repeat(8,minmax(64px,1fr));gap:10px}
.user-avatar-option{display:block!important;cursor:pointer}
.user-avatar-option input{position:absolute;opacity:0;pointer-events:none}
.user-avatar-choice{min-height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--dl-border,#29262f);border-radius:10px;background:#101012;color:#b6b1bc;transition:160ms ease}
.user-avatar-choice small{font-size:10px;font-weight:500;color:inherit}
.user-avatar-option:hover .user-avatar-choice{border-color:#604683;color:#d7c4ef;background:#15111d}
.user-avatar-option input:checked+.user-avatar-choice{border-color:var(--dl-accent,#8e54e9);background:var(--dl-accent-deep,#241a38);color:#fff;box-shadow:0 0 0 2px rgb(142 84 233 / 18%)}
.user-avatar-option input:focus-visible+.user-avatar-choice{box-shadow:var(--dl-focus,0 0 0 3px rgb(142 84 233 / 28%))}
.user-avatar-icon{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.user-avatar-display .user-avatar-icon{width:22px;height:22px}
.user-list-item .user-avatar-display{color:#d8c5fa}
.user-editor-form .category-editor-actions{margin-top:2px}
@media(max-width:1250px){.user-avatar-options{grid-template-columns:repeat(4,minmax(72px,1fr))}}
@media(max-width:700px){.user-editor-panel{padding:18px}.user-editor-form>.article-panel-head{margin:-18px -18px 0}.user-editor-form .form-grid{grid-template-columns:1fr;gap:20px}.user-avatar-options{grid-template-columns:repeat(2,minmax(92px,1fr))}.user-avatar-picker{padding:16px}}
/* v2.9.0 secure contact */
.contact-page{max-width:1120px;margin:0 auto;padding:64px 40px 100px}.contact-intro{max-width:760px;margin-bottom:36px}.contact-intro>span{color:var(--dl-accent);font-size:12px;letter-spacing:.16em}.contact-intro h1{font-size:38px;margin:10px 0 12px}.contact-intro p{color:var(--dl-text-2);font-size:16px;line-height:1.7}.contact-form{background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:12px;padding:32px;display:grid;gap:26px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form label,.contact-admin-settings label{display:grid;gap:10px;color:var(--dl-text-1);font-size:14px}.contact-form input,.contact-form select,.contact-form textarea,.contact-admin-settings input{width:100%;box-sizing:border-box;background:var(--dl-surface-2);color:var(--dl-text-1);border:1px solid var(--dl-border);border-radius:8px;padding:13px 14px;font:inherit}.contact-form textarea{resize:vertical;min-height:230px}.contact-form small{color:var(--dl-text-3)}.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-actions{display:flex;align-items:center;justify-content:space-between;gap:24px}.contact-actions span{color:var(--dl-text-3);font-size:12px;max-width:560px}.contact-success{background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:12px;padding:40px}.contact-success strong{color:var(--dl-accent)}.contact-admin-settings{background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:10px;padding:22px;margin-bottom:22px}.contact-admin-settings form{display:flex;align-items:end;gap:20px}.contact-admin-settings form>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;flex:1}.contact-status-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.contact-status-tabs a{padding:9px 14px;border:1px solid var(--dl-border);border-radius:999px;color:var(--dl-text-2);text-decoration:none}.contact-inbox-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px}.contact-message-list,.contact-message-preview{background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:10px;min-height:520px}.contact-message-list{padding:10px}.contact-message-row{display:grid;gap:7px;padding:14px;border-radius:8px;color:var(--dl-text-1);text-decoration:none;border:1px solid transparent}.contact-message-row:hover,.contact-message-row.active{background:var(--dl-surface-2);border-color:var(--dl-accent)}.contact-message-row small,.contact-message-row em{color:var(--dl-text-3);font-size:11px;font-style:normal}.contact-message-preview{padding:28px}.contact-message-preview header{display:flex;justify-content:space-between;gap:24px;margin-bottom:24px}.contact-message-preview header span{color:var(--dl-accent);font-size:11px}.contact-message-preview header h2{margin:7px 0 0}.contact-message-preview time{color:var(--dl-text-3)}.contact-message-preview dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 26px}.contact-message-preview dl div{background:var(--dl-surface-2);border-radius:8px;padding:12px}.contact-message-preview dt{font-size:11px;color:var(--dl-text-3);text-transform:uppercase}.contact-message-preview dd{margin:5px 0 0;word-break:break-word}.contact-message-preview article{white-space:normal;line-height:1.8;background:#0b0b0d;border:1px solid var(--dl-border-soft);border-radius:8px;padding:22px;min-height:180px}.contact-review-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.status-pending{color:#f2ca67}.status-quarantined{color:#eaa35b}.status-delivered{color:var(--dl-success)}.status-rejected{color:var(--dl-danger)}
@media(max-width:900px){.contact-grid,.contact-admin-settings form>div,.contact-inbox-layout{grid-template-columns:1fr}.contact-admin-settings form{align-items:stretch;flex-direction:column}.contact-message-list{min-height:auto}.contact-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.contact-page{padding:36px 18px 70px}.contact-form{padding:22px}.contact-intro h1{font-size:31px}.contact-message-preview{padding:18px}.contact-message-preview dl{grid-template-columns:1fr}}

/* v2.9.1 authenticated contact setup */
.contact-setup-panel{max-width:980px;background:var(--dl-surface-1);border:1px solid var(--dl-border);border-radius:12px;padding:32px;margin:0 auto 32px}.contact-setup-intro{max-width:760px;margin-bottom:28px}.contact-setup-intro>span{display:block;color:var(--dl-accent);font-size:11px;letter-spacing:.16em;margin-bottom:9px}.contact-setup-intro h2{margin:0 0 12px;font-size:26px}.contact-setup-intro p{margin:0;color:var(--dl-text-2);line-height:1.7}.contact-setup-form{display:grid;gap:26px}.contact-setup-grid{display:grid;grid-template-columns:1fr 180px;gap:22px 24px}.contact-setup-grid label{display:grid;gap:10px;color:var(--dl-text-1);font-size:14px}.contact-setup-grid input{width:100%;box-sizing:border-box;background:var(--dl-surface-2);color:var(--dl-text-1);border:1px solid var(--dl-border);border-radius:8px;padding:13px 14px;font:inherit}.contact-setup-grid label:nth-child(3),.contact-setup-grid label:nth-child(4),.contact-setup-grid .contact-setup-wide,.contact-setup-grid label:nth-child(6),.contact-setup-grid label:nth-child(7){grid-column:span 1}.contact-setup-grid .contact-setup-wide{grid-column:1/-1}.contact-setup-notes{padding:20px 22px;background:#0b0b0d;border:1px solid var(--dl-border-soft);border-radius:8px}.contact-setup-notes strong{color:var(--dl-text-1)}.contact-setup-notes ul{margin:12px 0 0;padding-left:20px;color:var(--dl-text-2);line-height:1.7}.contact-setup-form>.btn{justify-self:start}
@media(max-width:760px){.contact-setup-panel{padding:22px}.contact-setup-grid{grid-template-columns:1fr}.contact-setup-grid .contact-setup-wide{grid-column:auto}}

/* v2.9.2 isolated Message Center */
.message-center-page{background:var(--dl-bg-0,#050506);color:var(--dl-text-1,#f5f3f7)}
.message-center-main{max-width:1480px;margin:0 auto;padding:32px 40px 64px;box-sizing:border-box}
.message-center-main .page-header{padding-left:0;padding-right:0}
.message-center-main .content-wrap{padding:0}
@media (max-width:720px){.message-center-main{padding:24px 16px 48px}}

/* SPEC-027 System Settings */
.settings-content{max-width:1260px}.settings-form{display:grid;gap:24px;padding-bottom:40px}.settings-card{background:var(--dl-surface-1,#101012);border:1px solid var(--dl-border,#29262f);border-radius:8px;padding:24px;display:grid;gap:20px}.settings-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid var(--dl-border-soft,#1e1c22)}.settings-card-head h2{margin:0 0 5px;font-size:18px}.settings-card-head p{margin:0;color:var(--dl-text-2,#b6b1bc)}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 24px}.settings-grid label,.settings-card>label{display:grid;gap:9px;font-size:13px;font-weight:600;color:var(--dl-text-1,#f5f3f7)}.settings-grid label small,.settings-card label small{font-weight:400;color:var(--dl-text-3,#817b88)}.settings-span-2{grid-column:1/-1}.settings-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.settings-status-grid>div{background:var(--dl-surface-2,#151419);border:1px solid var(--dl-border-soft,#1e1c22);border-radius:7px;padding:16px;display:grid;gap:7px}.settings-status-grid strong{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--dl-text-3,#817b88)}.settings-status-grid span,.settings-status-grid a{color:var(--dl-text-1,#f5f3f7);overflow-wrap:anywhere}.settings-danger-card{border-color:#5c2c34}.settings-save-row{display:flex;justify-content:flex-end}.settings-migrations{border-top:1px solid var(--dl-border-soft,#1e1c22);padding-top:16px}.settings-migrations summary{cursor:pointer;color:var(--dl-text-2,#b6b1bc)}.settings-migrations ul{list-style:none;padding:12px 0 0;margin:0;display:grid;gap:8px}.settings-migrations li{display:flex;justify-content:space-between;gap:16px;color:var(--dl-text-2,#b6b1bc)}
@media(max-width:980px){.settings-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.settings-grid,.settings-status-grid{grid-template-columns:1fr}.settings-span-2{grid-column:auto}.settings-card{padding:18px}.settings-card-head{display:block}.settings-card-head p{margin-top:5px}}

/* ThetaWire v2.10.3 — mobile header and hero refinement */
.public-mobile-datetime{display:none;color:#d9d6dc;font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.public-footer-admin{display:flex;justify-content:center;gap:18px;margin-top:10px}
.public-footer-admin a{color:#b996ff;text-decoration:none}
.public-footer-admin a:hover{color:#d3bdff}

@media(max-width:639px){
  .public-topbar{
    height:54px;
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:12px;
    padding:0 14px;
  }
  .public-brand{display:none}
  .public-topnav{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:20px;
    height:100%;
    font-size:12px;
  }
  .public-topnav a{padding:0;white-space:nowrap}
  .public-topnav a.active:after{bottom:8px;left:0;right:0;width:auto;transform:none}
  .public-topnav .public-nav-search,
  .public-topnav .public-nav-admin,
  .public-topnav .public-nav-messages,
  .public-topnav .public-nav-logout{display:none}
  .public-mobile-datetime{
    display:block;
    justify-self:end;
    text-align:right;
    font-size:11px;
    letter-spacing:.01em;
  }
  .public-hero{
    height:auto;
    min-height:0;
    overflow:hidden;
  }
  .public-hero img{
    display:block;
    width:112%;
    max-width:none;
    height:auto;
    margin-left:-6%;
    object-fit:contain;
    object-position:center center;
  }
}

@media(max-width:380px){
  .public-topbar{gap:8px;padding-left:11px;padding-right:11px}
  .public-topnav{gap:14px;font-size:11px}
  .public-mobile-datetime{font-size:10px}
  .public-hero img{width:116%;margin-left:-8%}
}

/* ThetaWire v2.10.4 — footer, administrator menu, and Top link */
.public-side-admin{
  margin-top:18px;
  padding-top:8px;
  border-top:1px solid #2a2630;
}
.public-side-admin a:last-child{
  color:#c6a5ff;
}
.public-footer{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  min-height:54px;
  padding:14px 28px;
  border-top:1px solid #201e24;
  text-align:center;
  color:#817b88;
  font-size:12px;
}
.public-footer>span{
  grid-column:2;
  white-space:nowrap;
}
.public-top-link{
  grid-column:3;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:36px;
  padding:6px 0 6px 12px;
  color:#a99fb3;
  text-decoration:none;
  white-space:nowrap;
}
.public-top-link:hover,
.public-top-link:focus-visible{
  color:#fff;
}
.public-top-link span{
  font-size:12px;
  line-height:1;
}

@media(max-width:639px){
  .public-footer{
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    min-height:48px;
    padding:10px 14px;
    text-align:left;
    font-size:10px;
  }
  .public-footer>span{
    grid-column:1;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .public-top-link{
    grid-column:2;
    min-width:58px;
    min-height:40px;
    justify-content:flex-end;
    padding:6px 0 6px 8px;
    font-size:11px;
  }
}


/* ThetaWire v2.10.6 — navigation icons and menu typography */
.public-topnav{
  justify-content:flex-end;
  font-size:14px;
}
.public-topnav a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.public-topnav a .public-icon{
  width:18px;
  height:18px;
  stroke-width:1.7;
}
.public-side-menu a{
  gap:12px;
  font-size:15px;
  font-weight:500;
}
.public-side-menu a .public-icon{
  width:21px;
  height:21px;
  color:#a36af2;
}
.public-side-menu a span{min-width:0}
@media(max-width:899px){
  .public-topnav{font-size:12px}
  .public-topnav a{gap:6px}
  .public-topnav a .public-icon{width:16px;height:16px}
}
@media(max-width:639px){
  .public-topnav .public-icon{display:none}
  .public-topnav{font-size:12px}
}

/* ThetaWire v2.10.9 — preserve navigation icons and align categories edge-to-edge */
@media (min-width: 900px) {
  .public-categories {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    gap: 0;
  }

  .public-category {
    flex: 0 0 auto;
    min-width: 0;
  }

  .public-category:first-child {
    align-items: flex-start;
    text-align: left;
  }

  .public-category:last-child {
    align-items: flex-end;
    text-align: right;
  }
}

@media (max-width: 899px) {
  .public-categories {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }

  .public-category {
    align-items: center;
    text-align: center;
  }
}

/* ThetaWire v2.10.10 — mobile category visibility and typography */
@media (max-width: 639px) {
  /* Show only the first three category icon/name items on phones. */
  .public-categories .public-category:nth-child(n+4) {
    display: none;
  }

  /* Keep the three visible categories properly centred. */
  .public-categories {
    justify-content: center;
    flex-wrap: nowrap;
    gap: 10px;
  }

  .public-category {
    flex: 0 1 calc(33.333% - 7px);
    min-width: 0;
    max-width: 112px;
    align-items: center;
    text-align: center;
  }

  /* Match the compact date/time typography to Home and Contact. */
  .public-topnav,
  .public-mobile-datetime {
    font-size: 12px;
    font-weight: 500;
  }

  /* Keep both footer sides visually equal. */
  .public-footer,
  .public-footer > span,
  .public-top-link,
  .public-top-link span {
    font-size: 12px;
    font-weight: 500;
  }
}

@media (max-width: 380px) {
  .public-topnav,
  .public-mobile-datetime {
    font-size: 11px;
  }

  .public-footer,
  .public-footer > span,
  .public-top-link,
  .public-top-link span {
    font-size: 11px;
  }
}

/* ThetaWire v2.10.11 — desktop article editor polish */
@media (min-width: 640px) {
  /* Vertically center the native file picker inside its field. */
  .article-upload-inline input[type="file"].control {
    height: 58px;
    min-height: 58px;
    padding: 10px 12px;
    line-height: 36px;
  }

  .article-upload-inline input[type="file"]::file-selector-button {
    min-height: 36px;
    margin: 0 12px 0 0;
    padding: 7px 14px;
    vertical-align: middle;
  }

  /* Keep editor actions compact instead of allowing Save Draft to expand. */
  .article-editor-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding-top: 8px;
  }

  .article-editor-actions > span {
    flex: 1 1 auto;
  }

  .article-editor-actions .btn {
    width: auto;
    min-width: 0;
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .article-editor-actions .btn[name="action"][value="save"] {
    padding-left: 22px;
    padding-right: 22px;
  }

  .article-editor-actions .btn[name="action"][value="schedule"] {
    padding-left: 22px;
    padding-right: 22px;
  }

  .article-editor-actions .btn[name="action"][value="publish"] {
    padding-left: 26px;
    padding-right: 26px;
  }
}

/* ThetaWire v2.11.2 — isolated homepage login panel */
@media (min-width: 900px) {
  .public-inline-login {
    margin: 0 0 28px;
    padding: 0 0 22px;
    border-bottom: 1px solid #242129;
  }

  .public-inline-login h2 {
    margin-bottom: 14px;
  }

  .public-inline-login label {
    display: block;
    margin: 0 0 11px;
  }

  .public-inline-login label span {
    display: block;
    margin-bottom: 5px;
    color: #aaa4b0;
    font-size: 12px;
  }

  .public-inline-login input {
    display: block;
    width: 100%;
    min-height: 39px;
    padding: 8px 10px;
    border: 1px solid #302b36;
    border-radius: 6px;
    background: #0b0a0d;
    color: #f5f3f7;
    font: inherit;
  }

  .public-inline-login input:focus {
    outline: 2px solid rgba(163,106,242,.35);
    border-color: #8e54e9;
  }

  .public-inline-login button {
    width: 100%;
    min-height: 39px;
    padding: 8px 12px;
    border: 1px solid #6d3ab1;
    border-radius: 6px;
    background: #17101f;
    color: #d4b9ff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
  }

  .public-side-user {
    display: contents;
  }
}

@media (max-width: 899px) {
  .public-inline-login {
    display: none;
  }
}

/* ThetaWire v2.12.0 — Security & Audit Center */
.security-center {
  display: grid;
  gap: 22px;
}

.security-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 6px;
  border: 1px solid #29252f;
  border-radius: 10px;
  background: #0b0a0d;
}

.security-tabs a {
  padding: 10px 14px;
  border-radius: 7px;
  color: #aaa4b0;
  text-decoration: none;
  font-weight: 700;
}

.security-tabs a.active,
.security-tabs a:hover {
  background: #21152d;
  color: #e5d5ff;
}

.security-stat-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.security-stat-grid article {
  min-height: 118px;
  padding: 20px;
  border: 1px solid #29252f;
  border-radius: 10px;
  background: #0b0a0d;
}

.security-stat-grid span {
  display: block;
  margin-bottom: 12px;
  color: #918a99;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.security-stat-grid strong {
  font-size: 34px;
  color: #f4effa;
}

.security-panel {
  padding: 20px;
  border: 1px solid #29252f;
  border-radius: 10px;
  background: #0b0a0d;
}

.security-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}

.security-panel-head h2 {
  margin: 0;
}

.audit-table-wrap {
  overflow-x: auto;
}

.audit-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.audit-table th,
.audit-table td {
  padding: 12px 10px;
  border-bottom: 1px solid #242129;
  text-align: left;
  vertical-align: top;
}

.audit-table th {
  color: #938d9a;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.audit-severity {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
}

.severity-info { background:#17212a; color:#acd8ff; }
.severity-notice { background:#14251d; color:#b7efd0; }
.severity-warning { background:#2b2110; color:#ffd993; }
.severity-critical { background:#32151a; color:#ffb5bf; }

.audit-filters {
  display: grid;
  grid-template-columns: minmax(220px,1fr) minmax(180px,.7fr) minmax(150px,.5fr) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 20px;
}

.audit-filters label,
.community-review-filter label {
  display: grid;
  gap: 7px;
  color: #aaa4b0;
  font-size: 12px;
  font-weight: 700;
}

.audit-filters input,
.audit-filters select,
.community-review-filter select {
  min-height: 42px;
  padding: 8px 10px;
  border: 1px solid #302b36;
  border-radius: 7px;
  background: #08080a;
  color: #f4effa;
}

.audit-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 18px;
}

.audit-pagination a {
  min-width: 36px;
  padding: 8px;
  border: 1px solid #302b36;
  border-radius: 6px;
  color: #bdb6c4;
  text-align: center;
  text-decoration: none;
}

.audit-pagination a.active {
  background: #8145d1;
  color: #fff;
}

.community-review-list {
  display: grid;
  gap: 16px;
  margin-top: 18px;
}

.community-review-card {
  overflow: hidden;
  border: 1px solid #2b2731;
  border-left: 4px solid #655d6e;
  border-radius: 10px;
  background: #08080a;
}

.community-review-card.status-pending { border-left-color:#9b6be6; }
.community-review-card.status-quarantined { border-left-color:#d79a38; }
.community-review-card.status-approved { border-left-color:#4f9d70; }
.community-review-card.status-rejected { border-left-color:#a64f5b; }

.community-review-card > header,
.community-review-card > footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 16px 18px;
  background: #0d0c10;
}

.community-review-card > header h2 {
  margin: 4px 0;
  font-size: 21px;
}

.community-review-card > header p,
.community-review-card > header span {
  margin: 0;
  color: #8f8996;
  font-size: 12px;
}

.community-risk {
  min-width: 62px;
  text-align: center;
}

.community-risk strong {
  display: block;
  font-size: 24px;
}

.community-risk span {
  text-transform: uppercase;
}

.community-review-body {
  max-height: 360px;
  overflow: auto;
  padding: 18px;
  color: #d7d1dc;
  line-height: 1.65;
  white-space: normal;
}

.community-review-actions,
.community-review-actions form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.community-status {
  color: #aaa4b0;
  font-size: 12px;
  font-weight: 800;
}

.btn-small {
  min-height: 34px;
  padding: 6px 11px;
  font-size: 12px;
}

@media (max-width: 900px) {
  .security-stat-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .audit-filters {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 640px) {
  .security-stat-grid,
  .audit-filters {
    grid-template-columns: 1fr;
  }

  .community-review-card > header,
  .community-review-card > footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .community-review-actions,
  .community-review-actions form {
    width: 100%;
  }
}

/* ThetaWire v2.13.0 — Community Account Center */
.account-page,
.admin-community-member-page {
  min-height: 100vh;
  background: #050507;
  color: #eeeaf2;
}

.account-shell {
  width: min(100% - 36px, 1120px);
  margin: 42px auto 80px;
  display: grid;
  gap: 22px;
}

.account-heading {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 24px;
  border: 1px solid #29252f;
  border-radius: 12px;
  background: #0a090c;
}

.account-heading span {
  color: #a36af2;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.account-heading h1 {
  margin: 5px 0;
  font-size: clamp(30px, 5vw, 48px);
}

.account-heading p {
  margin: 0;
  color: #918b99;
}

.account-avatar {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  flex: 0 0 76px;
  border: 1px solid #4b3a5c;
  border-radius: 50%;
  background: #16101e;
  color: #c59cff;
}

.account-avatar-icon {
  width: 42px;
  height: 42px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}

.account-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 6px;
  border: 1px solid #29252f;
  border-radius: 10px;
  background: #0a090c;
}

.account-tabs a {
  padding: 10px 15px;
  border-radius: 7px;
  color: #a9a2b1;
  text-decoration: none;
  font-weight: 700;
}

.account-tabs a.active,
.account-tabs a:hover {
  background: #21152d;
  color: #e8d9ff;
}

.account-stat-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
}

.account-stat-grid article {
  min-height: 116px;
  padding: 20px;
  border: 1px solid #29252f;
  border-radius: 10px;
  background: #0a090c;
}

.account-stat-grid article span {
  display: block;
  margin-bottom: 12px;
  color: #918b99;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.account-stat-grid article strong {
  font-size: 32px;
}

.account-stat-date {
  font-size: 16px !important;
}

.account-panel {
  padding: 22px;
  border: 1px solid #29252f;
  border-radius: 11px;
  background: #0a090c;
}

.account-panel-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}

.account-panel-head h2 {
  margin: 0;
}

.account-panel-head a,
.account-primary-link {
  color: #c7a4fb;
}

.account-form {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
}

.account-form label {
  display: grid;
  gap: 8px;
  color: #b5aeba;
  font-size: 13px;
  font-weight: 700;
}

.account-form input,
.account-form select,
.account-form textarea,
.account-inline-form input {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #322d39;
  border-radius: 7px;
  background: #070709;
  color: #f3eff7;
  font: inherit;
}

.account-form textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.6;
}

.account-form-wide {
  grid-column: 1 / -1;
}

.account-form button,
.account-panel button,
.account-security-actions button {
  min-height: 42px;
  padding: 9px 15px;
  border: 1px solid #7440bc;
  border-radius: 7px;
  background: #7440bc;
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}

.account-form > button {
  justify-self: start;
}

.account-avatar-choices {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  padding: 0;
  border: 0;
}

.account-avatar-choices legend {
  margin-bottom: 10px;
  color: #b5aeba;
  font-weight: 800;
}

.account-avatar-choices label {
  position: relative;
}

.account-avatar-choices input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.account-avatar-choices span {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  padding: 10px;
  border: 1px solid #302a37;
  border-radius: 7px;
  background: #08080a;
  cursor: pointer;
}

.account-avatar-choices input:checked + span {
  border-color: #9a62e8;
  background: #1a1124;
  color: #dec8ff;
}

.account-choice-icon {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
}

.account-post-row,
.account-session-list article {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 13px 0;
  border-bottom: 1px solid #25212b;
}

.account-post-row:last-child,
.account-session-list article:last-child {
  border-bottom: 0;
}

.account-post-row div,
.account-session-list article div {
  display: grid;
  gap: 4px;
}

.account-post-row span,
.account-session-list article span {
  color: #8f8996;
  font-size: 12px;
}

.account-status {
  display: inline-block;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 11px !important;
  font-weight: 900;
}

.account-status.status-pending { background:#251936; color:#d6b7ff; }
.account-status.status-approved { background:#13241b; color:#b8efcd; }
.account-status.status-rejected { background:#32171c; color:#ffbac3; }
.account-status.status-quarantined { background:#30240f; color:#ffdc96; }

.account-post-list {
  display: grid;
  gap: 14px;
}

.account-post-card {
  padding: 17px;
  border: 1px solid #2b2731;
  border-radius: 9px;
  background: #08080a;
}

.account-post-card header,
.account-post-card footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}

.account-post-card h3 {
  margin: 4px 0;
}

.account-post-card header span,
.account-post-card header p {
  margin: 0;
  color: #8f8996;
  font-size: 12px;
}

.account-post-card > p {
  color: #c7c0cc;
  line-height: 1.55;
}

.account-post-card footer {
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}

.account-post-card footer a,
.account-post-card footer button {
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid #44394f;
  border-radius: 6px;
  background: transparent;
  color: #cfb4f7;
  text-decoration: none;
  font-size: 12px;
  font-weight: 800;
}

.account-recovery-codes {
  margin-bottom: 18px;
  padding: 16px;
  border: 1px solid #6c5630;
  border-radius: 8px;
  background: #1f190d;
}

.account-recovery-codes div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.account-recovery-codes code,
.account-totp-setup > code {
  padding: 7px 9px;
  border-radius: 5px;
  background: #050507;
  color: #f0d18b;
}

.account-small {
  overflow-wrap: anywhere;
  color: #8f8996;
  font-size: 12px;
}

.account-inline-form,
.account-security-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 12px;
}

.account-inline-form label {
  display: grid;
  gap: 6px;
  min-width: 250px;
}

.account-danger {
  border-color: #7e3844 !important;
  background: #2d1419 !important;
  color: #ffc1c9 !important;
}

.admin-member-shell {
  margin-top: 28px;
}

@media (max-width: 850px) {
  .account-stat-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .account-avatar-choices {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 620px) {
  .account-shell {
    width: min(100% - 22px,1120px);
    margin-top: 20px;
  }

  .account-heading {
    align-items: flex-start;
    padding: 18px;
  }

  .account-avatar {
    width: 58px;
    height: 58px;
    flex-basis: 58px;
  }

  .account-avatar-icon {
    width: 32px;
    height: 32px;
  }

  .account-stat-grid,
  .account-form {
    grid-template-columns: 1fr;
  }

  .account-form-wide {
    grid-column: auto;
  }

  .account-panel-head,
  .account-post-row,
  .account-session-list article,
  .account-post-card header {
    align-items: flex-start;
    flex-direction: column;
  }

  .account-inline-form,
  .account-security-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .account-inline-form label {
    min-width: 0;
  }
}

/* ==========================================================
   ThetaWire v2.13.1 — Admin desktop sizing consistency
   Mobile layouts intentionally retain full-width controls.
   ========================================================== */

@media (min-width: 901px) {

  /* --------------------------------------------------------
     USER MANAGEMENT
     -------------------------------------------------------- */

  .user-editor-panel {
    padding-right: 28px;
  }

  .user-editor-form {
    max-width: 940px;
  }

  .user-editor-form .user-identity-grid,
  .user-editor-form .user-access-grid {
    grid-template-columns: repeat(2, minmax(250px, 430px));
    justify-content: start;
  }

  .user-editor-form > label {
    max-width: 720px;
  }

  .user-editor-form .control {
    width: 100%;
    max-width: 430px;
  }

  .user-editor-form > label > .control[type="email"] {
    max-width: 720px;
  }

  .user-editor-form .category-editor-actions {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-left: 0;
    padding-right: 0;
  }

  .user-editor-form .category-editor-actions > span {
    display: none;
  }

  .user-editor-form .category-editor-actions .btn {
    width: auto;
    min-width: 150px;
    padding-left: 22px;
    padding-right: 22px;
  }

  .user-security-grid {
    grid-template-columns: repeat(2, minmax(280px, 390px));
    justify-content: start;
  }

  .user-security-card {
    padding: 18px;
  }

  .user-security-card .control {
    width: 100%;
    max-width: 300px;
  }

  .user-security-card form {
    justify-items: start;
  }

  .user-security-card .btn,
  .user-session-panel .btn {
    width: auto;
    min-width: 150px;
    padding-left: 18px;
    padding-right: 18px;
  }

  .user-session-panel {
    max-width: 800px;
  }

  /* --------------------------------------------------------
     SYSTEM + APPEARANCE SETTINGS
     -------------------------------------------------------- */

  .settings-content {
    max-width: 1120px;
  }

  .settings-card {
    padding: 20px;
  }

  .settings-grid {
    grid-template-columns: repeat(2, minmax(250px, 430px));
    justify-content: start;
    gap: 18px 24px;
  }

  .settings-grid label,
  .settings-card > label {
    width: 100%;
    max-width: 430px;
  }

  .settings-grid .settings-span-2,
  .settings-card > .settings-span-2 {
    max-width: 720px;
  }

  .settings-grid input,
  .settings-grid select,
  .settings-grid textarea,
  .settings-card > label input,
  .settings-card > label select,
  .settings-card > label textarea {
    width: 100%;
    max-width: 430px;
  }

  .settings-grid .settings-span-2 input,
  .settings-grid .settings-span-2 select,
  .settings-grid .settings-span-2 textarea {
    max-width: 720px;
  }

  .settings-save-row {
    justify-content: flex-start;
  }

  .settings-save-row .btn,
  .settings-card .btn {
    width: auto;
    min-width: 150px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .settings-status-grid {
    grid-template-columns: repeat(4, minmax(150px, 220px));
    justify-content: start;
  }

  /* --------------------------------------------------------
     SECURITY & AUDIT
     -------------------------------------------------------- */

  .security-center {
    max-width: 1180px;
  }

  .security-stat-grid {
    grid-template-columns: repeat(3, minmax(190px, 260px));
    justify-content: start;
  }

  .security-stat-grid article {
    min-height: 92px;
    padding: 16px 18px;
  }

  .security-stat-grid strong {
    font-size: 29px;
  }

  .security-panel {
    padding: 18px;
  }

  .audit-filters {
    grid-template-columns: minmax(280px, 420px) minmax(180px, 260px) minmax(150px, 210px) auto;
    justify-content: start;
  }

  .audit-filters input,
  .audit-filters select {
    width: 100%;
  }

  .audit-filters .btn,
  .security-panel .btn {
    width: auto;
    min-width: 110px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .community-review-filter {
    max-width: 280px;
  }

  /* --------------------------------------------------------
     MESSAGE CENTER: ADMIN SHELL + COMPACT CONTROLS
     -------------------------------------------------------- */

  .message-center-page .admin-shell {
    min-height: calc(100vh - 250px);
  }

  .message-center-page .main {
    min-width: 0;
  }

  .message-center-page .message-center-main {
    max-width: none;
    margin: 0;
    padding: 26px 30px 60px;
  }

  .message-center-page .contact-admin-settings form > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 420px));
    justify-content: start;
    gap: 18px 22px;
  }

  .message-center-page .contact-admin-settings input,
  .message-center-page .contact-setup-form input {
    width: 100%;
    max-width: 420px;
  }

  .message-center-page .contact-admin-settings .btn,
  .message-center-page .contact-setup-form .btn,
  .message-center-page .contact-review-actions .btn {
    width: auto;
    min-width: 120px;
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* ========================================================
   ThetaWire v2.14.1 — Settings UI Standardization
   Compact, predictable settings controls derived from the
   Media Manager design system.
   ======================================================== */

.settings-content {
  width: min(100%, 1060px);
  max-width: 1060px;
  padding-top: 18px;
}

.settings-section-nav {
  position: sticky;
  top: 10px;
  z-index: 20;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  padding: 10px;
  border: 1px solid var(--dl-border-soft, #1e1c22);
  border-radius: 8px;
  background: rgb(10 10 12 / 94%);
  backdrop-filter: blur(10px);
}

.settings-section-nav a {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--dl-text-2, #b6b1bc);
  text-decoration: none;
  font-size: 12px;
  font-weight: 650;
}

.settings-section-nav a:hover,
.settings-section-nav a:focus-visible {
  color: var(--dl-text-1, #f5f3f7);
  border-color: #4f3a68;
  background: var(--dl-accent-deep, #241a38);
  outline: none;
}

.settings-form {
  gap: 18px;
}

.settings-card {
  scroll-margin-top: 76px;
  padding: 20px;
  gap: 18px;
}

.settings-card-head {
  display: block;
  padding-bottom: 13px;
}

.settings-card-head h2 {
  font-size: 17px;
}

.settings-card-head p {
  max-width: 680px;
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.55;
}

.settings-grid {
  grid-template-columns: minmax(220px, 360px) minmax(220px, 360px);
  justify-content: start;
  gap: 16px 22px;
}

.settings-grid label,
.settings-card > label {
  width: auto;
  max-width: 100%;
  gap: 7px;
  color: var(--dl-text-2, #b6b1bc);
  font-size: 12px;
  line-height: 1.4;
}

.settings-grid label small,
.settings-card label small {
  max-width: 520px;
  line-height: 1.45;
}

.settings-grid input,
.settings-grid select,
.settings-grid textarea,
.settings-card > label input,
.settings-card > label select,
.settings-card > label textarea {
  width: 100%;
  max-width: 360px;
  min-height: 38px;
}

.settings-grid textarea,
.settings-card > label textarea {
  min-height: 92px;
  padding: 10px 12px;
  resize: vertical;
}

.settings-field-small {
  width: 100% !important;
  max-width: 150px !important;
}

.settings-field-medium {
  width: 100% !important;
  max-width: 300px !important;
}

.settings-field-large {
  width: 100% !important;
  max-width: 520px !important;
}

.settings-grid .settings-span-2,
.settings-card > .settings-span-2 {
  grid-column: 1 / -1;
  max-width: 720px;
}

.settings-grid .settings-span-2 input,
.settings-grid .settings-span-2 select,
.settings-grid .settings-span-2 textarea {
  max-width: 520px;
}

.settings-grid .check-label,
.settings-card > .check-label {
  width: fit-content;
  min-width: 0;
  max-width: 520px;
  min-height: 38px;
  padding: 8px 11px;
  color: var(--dl-text-1, #f5f3f7);
}

.settings-status-grid {
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  max-width: 760px;
  gap: 10px;
}

.settings-status-grid > div {
  min-height: 82px;
  padding: 14px;
}

.settings-save-row {
  position: sticky;
  bottom: 10px;
  z-index: 15;
  width: fit-content;
  margin-left: auto;
  padding: 8px;
  border: 1px solid var(--dl-border-soft, #1e1c22);
  border-radius: 8px;
  background: rgb(10 10 12 / 94%);
  backdrop-filter: blur(10px);
}

.settings-save-row .btn {
  min-width: 150px;
}

@media (max-width: 900px) {
  .settings-content {
    max-width: 100%;
  }

  .settings-grid {
    grid-template-columns: 1fr;
  }

  .settings-grid .settings-span-2,
  .settings-card > .settings-span-2 {
    grid-column: auto;
  }

  .settings-status-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 639px) {
  .settings-section-nav {
    position: static;
    overflow-x: auto;
    flex-wrap: nowrap;
  }

  .settings-section-nav a {
    flex: 0 0 auto;
    min-height: 44px;
  }

  .settings-card {
    padding: 16px;
  }

  .settings-grid input,
  .settings-grid select,
  .settings-grid textarea,
  .settings-card > label input,
  .settings-card > label select,
  .settings-card > label textarea,
  .settings-field-small,
  .settings-field-medium,
  .settings-field-large {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px;
  }

  .settings-grid .check-label,
  .settings-card > .check-label {
    width: 100%;
    min-height: 44px;
  }

  .settings-status-grid {
    grid-template-columns: 1fr;
  }

  .settings-save-row {
    width: 100%;
    margin: 0;
  }

  .settings-save-row .btn {
    width: 100%;
  }
}

/* ========================================================
   ThetaWire v2.14.3 — Homepage restore + menu alignment fix
   Restores the category bar and login panel exactly to the
   pre-v2.14.2 layout. Only the right-side MENU alignment is
   adjusted. Normal icon/text reading order is preserved.
   ======================================================== */

/* Keep the original category layout untouched and visible. */
.public-category-layout,
.public-categories,
.public-category {
  direction: ltr;
  transform: none;
  writing-mode: horizontal-tb;
  unicode-bidi: normal;
}

/* Keep the original login form position, heading, labels, fields,
   spacing and authentication markup unchanged. */
.public-inline-login {
  direction: ltr;
  transform: none;
  writing-mode: horizontal-tb;
  unicode-bidi: normal;
}

/* Right-align only the utility menu heading and menu rows.
   The DOM remains icon first, label second. */
.public-side-menu > h2 {
  text-align: right;
  direction: ltr;
  transform: none;
  writing-mode: horizontal-tb;
  unicode-bidi: normal;
}

.public-side-menu > h2::after {
  margin-left: auto;
  margin-right: 0;
}

.public-side-menu > a,
.public-side-menu .public-side-user > a,
.public-side-menu .public-side-admin > a {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  direction: ltr;
  transform: none;
  writing-mode: horizontal-tb;
  unicode-bidi: normal;
  text-align: right;
}

.public-side-menu a .public-icon {
  order: 0;
  flex: 0 0 auto;
}

.public-side-menu a span {
  order: 1;
  min-width: 0;
  direction: ltr;
  transform: none;
  writing-mode: horizontal-tb;
  unicode-bidi: normal;
}

/* ========================================================
   ThetaWire v2.14.4 — Homepage sidebar alignment
   Scope: desktop homepage sidebar only.
   - Keeps the category bar and sidebar position unchanged.
   - Keeps the hero/category divider line visible.
   - Right-aligns SIGN IN, labels and entered field text.
   - Keeps the Sign In button text centered.
   - Right-aligns MENU rows with their icons on the far right.
   - Adds no surrounding panel borders.
   ======================================================== */

/* Preserve the single line separating the hero from the row below. */
.public-hero {
  border-bottom: 1px solid #242329;
}

@media (min-width: 900px) {
  /* The login block remains in its existing grid position, aligned to
     the top of the categories. Only its internal alignment changes. */
  .public-inline-login {
    text-align: right;
  }

  .public-inline-login h2 {
    text-align: right;
  }

  .public-inline-login h2::after {
    margin-left: auto;
    margin-right: 0;
  }

  .public-inline-login label span {
    text-align: right;
  }

  .public-inline-login input {
    text-align: right;
    direction: ltr;
  }

  .public-inline-login button {
    text-align: center;
  }

  /* Keep only the existing divider between SIGN IN and MENU. */
  .public-inline-login {
    border-right: 0;
    border-left: 0;
    border-top: 0;
  }

  /* MENU heading and underline align to the right. */
  .public-side-menu > h2 {
    text-align: right;
  }

  .public-side-menu > h2::after {
    margin-left: auto;
    margin-right: 0;
  }

  /* Normal wording, right-justified text, icon on the far right. */
  .public-side-menu > a,
  .public-side-menu .public-side-user > a,
  .public-side-menu .public-side-admin > a {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    text-align: right;
    direction: ltr;
  }

  .public-side-menu a span {
    order: 0;
    text-align: right;
    direction: ltr;
  }

  .public-side-menu a .public-icon {
    order: 1;
    flex: 0 0 auto;
  }
}

/* ========================================================
   ThetaWire v2.14.5 — Compact homepage sidebar controls
   Combined refinement of the v2.14.4 alignment update.
   - Preserves category and sidebar placement.
   - Keeps SIGN IN, field labels and MENU right-aligned.
   - Keeps entered field values right-aligned.
   - Keeps menu icons in one column on the far right.
   - Reduces login field, button and menu-row widths.
   - Adds no panel borders; preserves one divider line.
   ======================================================== */

@media (min-width: 900px) {
  /* Shared compact width keeps the sign-in and menu areas aligned
     without changing the 230px sidebar column itself. */
  .public-inline-login,
  .public-side-menu {
    --dl-public-sidebar-control-w: 202px;
  }

  /* Keep headings and their short accent rules on the right edge. */
  .public-inline-login h2,
  .public-side-menu > h2 {
    width: var(--dl-public-sidebar-control-w);
    margin-left: auto;
    text-align: right;
  }

  /* Labels line up with the compact fields. */
  .public-inline-login label {
    width: var(--dl-public-sidebar-control-w);
    margin-left: auto;
  }

  .public-inline-login label span {
    width: 100%;
    text-align: right;
  }

  /* Shorter fields, still anchored to the right. */
  .public-inline-login input {
    width: var(--dl-public-sidebar-control-w);
    max-width: 100%;
    min-height: 38px;
    margin-left: auto;
    padding: 7px 10px;
    text-align: right;
  }

  /* Slightly narrower button than the fields, centered label. */
  .public-inline-login button {
    display: block;
    width: 184px;
    max-width: 100%;
    min-height: 37px;
    margin-left: auto;
    padding: 7px 12px;
    text-align: center;
  }

  /* Menu rows use the same compact right-aligned measurement. */
  .public-side-menu > a,
  .public-side-menu .public-side-user > a,
  .public-side-menu .public-side-admin > a {
    width: var(--dl-public-sidebar-control-w);
    min-height: 50px;
    margin-left: auto;
    padding: 0 2px 0 8px;
    justify-content: flex-end;
    gap: 12px;
  }

  /* Text ends at a consistent point before the fixed icon column. */
  .public-side-menu a span {
    flex: 1 1 auto;
    text-align: right;
  }

  .public-side-menu a .public-icon {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
  }
}

/* ========================================================
   ThetaWire v2.14.6 — category/login row alignment
   - Moves the existing Sign In + Menu sidebar into the same
     desktop grid row as the category navigation.
   - Centers the six category entries in the content column.
   - Removes the separate ALL/MORE category from the template.
   - Preserves the compact right-aligned sidebar controls from
     v2.14.5 and keeps the article column width unchanged.
   ======================================================== */

@media (min-width: 900px) {
  .public-category-layout {
    align-items: start;
  }

  .public-category-layout > .public-side-menu {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    position: static;
    top: auto;
    padding-top: 28px;
  }

  .public-categories {
    grid-column: 1;
    grid-row: 1;
    display: grid;
    grid-template-columns: repeat(6, minmax(100px, 1fr));
    justify-content: center;
    align-items: start;
    gap: 14px;
    width: 100%;
    padding: 28px 0 32px;
  }

  .public-category,
  .public-category:first-child,
  .public-category:last-child {
    width: 100%;
    min-width: 0;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

  /* The article grid retains its original content + sidebar columns,
     but the sidebar is now occupied above beside the categories. */
  .public-main {
    align-items: start;
  }
}

/* ========================================================
   ThetaWire v2.14.7 — Restore article row beside sidebar
   Corrects v2.14.6 desktop flow:
   - Category row controls the height of the category section.
   - Sign In / Menu remains aligned to the category row top.
   - Sidebar no longer increases the category row height.
   - Blog posts rise directly beneath the categories.
   - The main grid continues reserving the right sidebar column.
   ======================================================== */

@media (min-width: 900px) {
  .public-category-layout {
    position: relative;
    display: block;
    min-height: 136px;
  }

  .public-category-layout > .public-categories {
    width: calc(100% - 258px);
    margin: 0;
  }

  .public-category-layout > .public-side-menu {
    position: absolute;
    top: 0;
    right: 28px;
    width: 230px;
    margin: 0;
    padding-top: 28px;
  }

  .public-main {
    margin-top: 0;
  }
}

@media (min-width: 900px) and (max-width: 1199px) {
  .public-category-layout > .public-categories {
    width: calc(100% - 218px);
  }

  .public-category-layout > .public-side-menu {
    width: 190px;
  }
}

/* ThetaWire v2.14.8 — Previous Articles header alignment
   Keep the section title and View All Articles link together on the left. */
.public-previous > header {
  justify-content: flex-start;
  gap: 24px;
}

.public-previous > header h2,
.public-previous > header a {
  flex: 0 0 auto;
}

@media (max-width: 639px) {
  .public-previous > header {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 8px 16px;
  }
}

/* ========================================================
   ThetaWire v2.14.9 — Public search layout correction
   - Reserves the existing right sidebar column on desktop so
     the Search panel and results cannot overlap Sign In/Menu.
   - Uses a compact, content-sized search field instead of a
     page-wide input.
   - Restores normal full-width flow below the desktop breakpoint.
   ======================================================== */

@media (min-width: 1200px) {
  .public-search-shell {
    width: calc(100% - 258px);
    max-width: none;
    margin: 0;
    padding: 0 0 28px 28px;
    box-sizing: border-box;
  }
}

@media (min-width: 900px) and (max-width: 1199px) {
  .public-search-shell {
    width: calc(100% - 218px);
    max-width: none;
    margin: 0;
    padding: 0 0 28px 28px;
    box-sizing: border-box;
  }
}

@media (min-width: 900px) {
  .public-search-panel {
    width: 100%;
    box-sizing: border-box;
  }

  .public-search-form {
    grid-template-columns: minmax(280px, 520px) auto;
    justify-content: start;
    align-items: center;
  }

  .public-search-form label {
    width: 100%;
    max-width: 520px;
  }

  .public-search-form input {
    width: 100%;
    max-width: 520px;
    box-sizing: border-box;
  }
}

@media (max-width: 899px) {
  .public-search-shell {
    width: auto;
    max-width: 1480px;
    margin: 0 auto;
    padding: 0 18px 24px;
  }
}

@media (max-width: 639px) {
  .public-search-shell {
    padding: 0 12px 22px;
  }

  .public-search-form,
  .public-search-form label,
  .public-search-form input,
  .public-search-form button {
    width: 100%;
    max-width: none;
  }
}

/* ========================================================
   ThetaWire v2.14.10 — Compact public search panel
   - Narrows only the visible search panel background.
   - Keeps the reserved desktop sidebar space from v2.14.9.
   - Does not alter search results, search logic, or sidebar layout.
   ======================================================== */

@media (min-width: 900px) {
  .public-search-panel {
    width: min(100%, 760px);
    max-width: 760px;
    margin: 0;
  }

  .public-search-form {
    grid-template-columns: minmax(260px, 440px) auto;
  }

  .public-search-form label,
  .public-search-form input {
    max-width: 440px;
  }
}

@media (min-width: 640px) and (max-width: 899px) {
  .public-search-panel {
    width: min(100%, 720px);
    max-width: 720px;
    margin: 0 auto;
  }
}

/* ========================================================
   ThetaWire v2.14.11 — Search panel cache + hard width fix
   The prior width rule was not taking effect on the live page.
   This dedicated modifier uses stronger specificity and a cache-busted
   stylesheet URL from index.php so the visible background panel is
   actually compact on desktop.
   ======================================================== */
@media (min-width: 900px) {
  body.public-site main.public-search-shell > section.public-search-panel.public-search-panel--compact {
    display: block;
    width: 760px !important;
    max-width: calc(100% - 56px) !important;
    min-width: 0 !important;
    margin: 0 !important;
    justify-self: start !important;
    align-self: start !important;
    box-sizing: border-box !important;
  }

  body.public-site .public-search-panel--compact .public-search-form {
    grid-template-columns: minmax(260px, 440px) auto !important;
    justify-content: start !important;
    width: fit-content !important;
    max-width: 100% !important;
  }

  body.public-site .public-search-panel--compact .public-search-form label,
  body.public-site .public-search-panel--compact .public-search-form input {
    width: 440px !important;
    max-width: 440px !important;
    min-width: 0 !important;
  }
}

@media (max-width: 899px) {
  body.public-site main.public-search-shell > section.public-search-panel.public-search-panel--compact {
    width: 100% !important;
    max-width: 720px !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 639px) {
  body.public-site .public-search-panel--compact .public-search-form,
  body.public-site .public-search-panel--compact .public-search-form label,
  body.public-site .public-search-panel--compact .public-search-form input,
  body.public-site .public-search-panel--compact .public-search-form button {
    width: 100% !important;
    max-width: none !important;
  }
}

/* ========================================================
   ThetaWire v2.14.12 — Search structure and Top-link correction

   Search is constrained to a true main-content column rather than
   being sized against the full viewport.  The existing Sign In/Menu
   sidebar remains outside that column.  The footer and Top jump link
   follow the same main-column boundary so they cannot appear inside
   or underneath the sidebar.
   ======================================================== */

@media (min-width: 1200px) {
  body.public-search-open {
    --dl-public-sidebar-width: 350px;
    --dl-public-column-gap: 28px;
    --dl-public-left-gutter: 36px;
  }

  body.public-search-open main.public-search-shell {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 calc(var(--dl-public-sidebar-width) + var(--dl-public-column-gap)) 0 0 !important;
    padding: 0 0 28px var(--dl-public-left-gutter) !important;
    box-sizing: border-box !important;
  }

  body.public-search-open main.public-search-shell > section.public-search-panel.public-search-panel--compact {
    width: min(100%, 1120px) !important;
    max-width: 1120px !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form {
    display: grid !important;
    grid-template-columns: minmax(320px, 640px) 170px !important;
    justify-content: start !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 822px !important;
    gap: 12px !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form label,
  body.public-search-open .public-search-panel--compact .public-search-form input {
    width: 100% !important;
    max-width: 640px !important;
    min-width: 0 !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form button {
    width: 170px !important;
    max-width: 170px !important;
  }

  body.public-search-open .public-search-results {
    width: min(100%, 1120px) !important;
    max-width: 1120px !important;
  }

  body.public-search-open .public-footer {
    width: auto !important;
    margin-right: calc(var(--dl-public-sidebar-width) + var(--dl-public-column-gap)) !important;
    box-sizing: border-box !important;
  }

  body.public-search-open .public-top-link {
    grid-column: 3 !important;
    justify-self: end !important;
    position: static !important;
    transform: none !important;
  }
}

@media (min-width: 900px) and (max-width: 1199px) {
  body.public-search-open {
    --dl-public-sidebar-width: 290px;
    --dl-public-column-gap: 22px;
    --dl-public-left-gutter: 28px;
  }

  body.public-search-open main.public-search-shell {
    width: auto !important;
    max-width: none !important;
    margin: 0 calc(var(--dl-public-sidebar-width) + var(--dl-public-column-gap)) 0 0 !important;
    padding: 0 0 26px var(--dl-public-left-gutter) !important;
    box-sizing: border-box !important;
  }

  body.public-search-open main.public-search-shell > section.public-search-panel.public-search-panel--compact,
  body.public-search-open .public-search-results {
    width: 100% !important;
    max-width: 860px !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form {
    grid-template-columns: minmax(260px, 1fr) 150px !important;
    width: 100% !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form label,
  body.public-search-open .public-search-panel--compact .public-search-form input {
    width: 100% !important;
    max-width: none !important;
  }

  body.public-search-open .public-search-panel--compact .public-search-form button {
    width: 150px !important;
  }

  body.public-search-open .public-footer {
    margin-right: calc(var(--dl-public-sidebar-width) + var(--dl-public-column-gap)) !important;
  }
}

@media (max-width: 899px) {
  body.public-search-open main.public-search-shell,
  body.public-search-open .public-footer {
    margin-right: 0 !important;
  }
}

/* ========================================================
   ThetaWire v2.15.0 — Homepage layout foundation

   Establishes one structural two-column page grid:
   - left: categories and all public content views
   - right: Sign In / Menu sidebar
   - footer: a separate full-width row below both columns

   This supersedes the earlier absolute-positioned sidebar and
   search-specific margin calculations. It prevents content from
   extending beneath the sidebar and keeps Copyright and Top in the
   actual footer.
   ======================================================== */

.public-page-layout {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 28px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  gap: 28px;
  align-items: start;
  box-sizing: border-box;
}

.public-page-main {
  min-width: 0;
  width: 100%;
}

/* Categories belong to the main column and remain centred. */
.public-page-main > .public-categories {
  width: 100%;
  margin: 0;
  padding: 28px 0 32px;
  display: grid;
  grid-template-columns: repeat(6, minmax(100px, 1fr));
  gap: 14px;
  align-items: start;
  justify-content: center;
}

.public-page-main > .public-categories .public-category {
  width: 100%;
  min-width: 0;
  text-align: center;
  align-items: center;
  justify-content: center;
}

/* The sidebar is now an ordinary grid item, never absolute or sticky.
   Its natural height participates in page flow, so the footer cannot
   rise beside it. */
.public-page-layout > .public-side-menu {
  position: static !important;
  inset: auto !important;
  width: 230px;
  max-width: 100%;
  margin: 0;
  padding-top: 28px;
  align-self: start;
  transform: none !important;
}

/* Content views use the main column itself; they no longer reserve a
   second sidebar column or calculate against the viewport. */
.public-page-main > .public-main,
.public-page-main > .public-search-shell,
.public-page-main > .public-inline-reader,
.public-page-main > .public-previous {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

.public-page-main > .public-main {
  display: block !important;
  padding-bottom: 0 !important;
}

.public-page-main > .public-main .public-content-column {
  width: 100%;
}

.public-page-main > .public-previous {
  margin-top: 54px !important;
}

/* Search remains compact, but is now constrained by the real main
   column rather than by manual sidebar offsets. */
body.public-search-open .public-page-main > main.public-search-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 28px !important;
}

body.public-search-open .public-page-main .public-search-panel.public-search-panel--compact {
  width: min(100%, 760px) !important;
  max-width: 760px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.public-search-open .public-page-main .public-search-panel--compact .public-search-form {
  width: 100% !important;
  max-width: 622px !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 440px) 170px !important;
  gap: 12px !important;
  justify-content: start !important;
}

body.public-search-open .public-page-main .public-search-panel--compact .public-search-form label,
body.public-search-open .public-page-main .public-search-panel--compact .public-search-form input {
  width: 100% !important;
  max-width: 440px !important;
  min-width: 0 !important;
}

body.public-search-open .public-page-main .public-search-panel--compact .public-search-form button {
  width: 170px !important;
  max-width: 170px !important;
}

body.public-search-open .public-page-main .public-search-results {
  width: 100% !important;
  max-width: none !important;
}

/* The footer is intentionally outside the two-column layout. */
.public-footer,
body.public-search-open .public-footer {
  clear: both;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  min-height: 54px;
  padding: 14px 28px;
  border-top: 1px solid #201e24;
  box-sizing: border-box;
}

.public-footer > span {
  grid-column: 2;
  justify-self: center;
}

.public-footer .public-top-link,
body.public-search-open .public-footer .public-top-link {
  grid-column: 3 !important;
  justify-self: end !important;
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
  transform: none !important;
}

@media (min-width: 900px) and (max-width: 1199px) {
  .public-page-layout {
    grid-template-columns: minmax(0, 1fr) 190px;
    gap: 28px;
  }

  .public-page-layout > .public-side-menu {
    width: 190px;
  }

  .public-page-main > .public-categories {
    grid-template-columns: repeat(6, minmax(76px, 1fr));
    gap: 10px;
  }

  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form {
    grid-template-columns: minmax(220px, 1fr) 150px !important;
    max-width: 100% !important;
  }

  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form label,
  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form input {
    max-width: none !important;
  }

  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form button {
    width: 150px !important;
    max-width: 150px !important;
  }
}

@media (max-width: 899px) {
  .public-page-layout {
    display: block;
    padding: 0 18px;
  }

  .public-page-main > .public-categories {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 14px;
    padding: 20px 0;
  }

  .public-page-main > .public-categories .public-category {
    flex: 0 1 112px;
  }

  .public-page-layout > .public-side-menu {
    display: none;
  }

  .public-page-main > .public-previous {
    margin-top: 40px !important;
  }

  body.public-search-open .public-page-main .public-search-panel.public-search-panel--compact {
    width: 100% !important;
    max-width: 720px !important;
  }
}

@media (max-width: 639px) {
  .public-page-layout {
    padding: 0 12px;
  }

  .public-page-main > .public-categories {
    padding-top: 16px;
    padding-bottom: 22px;
    gap: 14px 10px;
  }

  .public-page-main > .public-categories .public-category {
    flex: 0 1 calc(33.333% - 10px);
    max-width: 112px;
    min-width: 88px;
  }

  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }

  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form label,
  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form input,
  body.public-search-open .public-page-main .public-search-panel--compact .public-search-form button {
    width: 100% !important;
    max-width: none !important;
  }

  .public-footer,
  body.public-search-open .public-footer {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    min-height: 48px;
    padding: 10px 14px;
  }

  .public-footer > span {
    grid-column: 1;
    justify-self: start;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .public-footer .public-top-link,
  body.public-search-open .public-footer .public-top-link {
    grid-column: 2 !important;
    justify-self: end !important;
  }
}

/* ThetaWire v2.15.1 — public pagination cleanup
   Public visitors see navigation only when multiple pages exist.
   Record counts and page-size details remain admin-only information. */
.public-pagination {
  width: 100%;
  min-height: 72px;
  margin-top: 18px;
  padding: 14px 0;
  border-top: 1px solid #201e24;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #b6b1bc;
}
.public-pagination > nav {
  display: flex;
  justify-content: center;
  gap: 8px;
}
@media (max-width: 899px) {
  .public-pagination {
    display: flex;
  }
  .public-pagination > nav {
    width: 100%;
    overflow-x: auto;
  }
}


/* ThetaWire v2.15.2 — footer spacing refinement
   Keep the final Previous Articles cards visually separated from the
   full-width footer rule without moving the copyright or Top link. */
.public-page-main > .public-previous {
  padding-bottom: 48px !important;
}

@media (max-width: 639px) {
  .public-page-main > .public-previous {
    padding-bottom: 36px !important;
  }
}

/* ThetaWire v2.16.0 — protected security summaries and public date/time. */
.public-topnav .public-nav-datetime {
  display: inline-flex;
  align-items: center;
  margin-left: 14px;
  padding-left: 18px;
  border-left: 1px solid var(--dl-border-soft, #1e1c22);
  color: var(--dl-text-2, #b6b1bc);
  font-size: 12px;
  line-height: 1.2;
  white-space: nowrap;
  letter-spacing: .02em;
}
.dashboard-security-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-bottom:20px; }
.dashboard-security-summary { min-width:0; }
.dashboard-mini-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:16px 0; }
.dashboard-mini-stats span { display:flex; flex-direction:column; gap:4px; padding:12px; border:1px solid var(--dl-border-soft,#1e1c22); border-radius:6px; color:var(--dl-text-2,#b6b1bc); font-size:12px; }
.dashboard-mini-stats strong { color:var(--dl-text-1,#f5f3f7); font-size:22px; }
.audit-table-dense td { vertical-align:top; }
.audit-table-dense td small { display:block; margin-top:4px; color:var(--dl-text-3,#817b88); max-width:280px; overflow-wrap:anywhere; }
.audit-table-dense code { color:var(--dl-text-1,#f5f3f7); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; }
@media (max-width:1100px){ .public-topnav .public-nav-datetime{display:none}.dashboard-security-grid{grid-template-columns:1fr}.dashboard-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr));} }
.dashboard-side-stack .dashboard-security-grid { grid-template-columns: 1fr; margin-bottom: 0; }
.dashboard-side-stack .dashboard-mini-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }

/* ThetaWire v2.16.1 — Activity Log navigation, compact filters and overlap fix. */
.activity-page-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 18px 28px;
}
.activity-page-head .title-cluster {
  min-width: min(100%, 420px);
  flex: 1 1 420px;
}
.activity-page-actions {
  display: flex;
  flex: 0 1 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  margin-left: auto;
  max-width: 100%;
}
.activity-page-actions .btn {
  min-width: 0;
  white-space: nowrap;
}
.activity-section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--dl-border-soft);
}
.activity-section-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid var(--dl-border-soft);
  border-radius: 7px;
  color: var(--dl-text-2);
  text-decoration: none;
  background: #0d0c0f;
}
.activity-section-nav a:hover,
.activity-section-nav a:focus-visible,
.activity-section-nav a.active {
  border-color: var(--dl-accent);
  color: #fff;
  background: #1b1425;
  outline: none;
}
.activity-core-filters {
  grid-template-columns: minmax(260px, 420px) minmax(170px, 250px) minmax(170px, 250px) auto !important;
  justify-content: start;
}
.activity-search {
  width: 100%;
  max-width: 420px;
}
.activity-search .control {
  width: 100%;
  max-width: 420px;
}
.activity-core-filters > label:not(.activity-search) {
  width: 100%;
  max-width: 250px;
}
.activity-filter-actions {
  align-self: end;
}
@media (max-width: 1280px) {
  .activity-page-actions {
    flex-basis: 100%;
    justify-content: flex-start;
    margin-left: 0;
  }
  .activity-core-filters {
    grid-template-columns: minmax(260px, 420px) minmax(170px, 250px) minmax(170px, 250px) !important;
  }
  .activity-filter-actions {
    grid-column: 1 / -1;
  }
}
@media (max-width: 834px) {
  .activity-core-filters {
    grid-template-columns: 1fr 1fr !important;
  }
  .activity-search {
    grid-column: 1 / -1;
    max-width: none;
  }
  .activity-search .control,
  .activity-core-filters > label:not(.activity-search) {
    max-width: none;
  }
}
@media (max-width: 560px) {
  .activity-page-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
  .activity-page-actions .btn:first-child {
    grid-column: 1 / -1;
  }
  .activity-core-filters {
    grid-template-columns: 1fr !important;
  }
  .activity-search,
  .activity-filter-actions {
    grid-column: auto;
  }
  .activity-section-nav a {
    flex: 1 1 100%;
  }
}

/* ThetaWire v2.16.3 — complete protected login-history page */
.login-history-panel{overflow:hidden}
.login-export-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.login-history-filters{display:grid;grid-template-columns:minmax(220px,360px) 170px 190px 160px 160px auto;gap:14px;align-items:end;padding:18px 20px;border-top:1px solid var(--border,#28252f);border-bottom:1px solid var(--border,#28252f)}
.login-history-filters label{display:grid;gap:7px;color:var(--muted,#aaa4b3);font-size:13px}
.login-history-filters input,.login-history-filters select{width:100%;height:40px;min-width:0}
.login-filter-actions{display:flex;gap:8px;align-items:center}
.login-history-count{padding:12px 20px;color:var(--muted,#aaa4b3);font-size:13px}
.login-history-table{min-width:2200px}
.login-history-table th,.login-history-table td{vertical-align:top;white-space:normal;min-width:120px}
.login-history-table th:first-child,.login-history-table td:first-child{min-width:150px;white-space:nowrap}
.login-history-table code{white-space:nowrap}
@media(max-width:1350px){.login-history-filters{grid-template-columns:repeat(3,minmax(180px,1fr))}.login-filter-actions{grid-column:1/-1}}
@media(max-width:780px){.login-history-filters{grid-template-columns:1fr}.login-filter-actions{grid-column:auto}.login-export-actions{justify-content:flex-start}}
@media print{
  .login-print-view .public-header,.login-print-view .admin-sidebar,.login-print-view .security-tabs,.login-print-view .login-history-filters,.login-print-view .login-export-actions,.login-print-view .security-stat-grid,.login-print-view .audit-pagination{display:none!important}
  .login-print-view,.login-print-view .admin-content,.login-print-view .security-panel{background:#fff!important;color:#000!important;border:0!important}
  .login-print-view .login-history-table{min-width:0;font-size:8pt}
  .login-print-view .login-history-table th,.login-print-view .login-history-table td{color:#000!important;border-color:#bbb!important;padding:5px!important}
  .login-print-view .audit-table-wrap{overflow:visible!important}
}

/* ThetaWire v2.16.4 — bounded login history and selectable filters */
.main,.content,.security-center,.security-panel,.login-history-panel{min-width:0;max-width:100%}
.login-history-panel{width:100%;overflow:hidden}
.login-history-panel .security-panel-head{min-width:0;flex-wrap:wrap}
.login-history-panel .security-panel-head>div:first-child{min-width:260px;flex:1 1 480px}
.login-history-filters{display:block;padding:16px 20px;border-top:1px solid var(--border,#28252f);border-bottom:1px solid var(--border,#28252f)}
.login-filter-primary{display:flex;align-items:end;gap:14px;min-width:0}
.login-filter-search{display:grid;gap:7px;flex:0 1 460px;min-width:220px;color:var(--muted,#aaa4b3);font-size:13px}
.login-filter-search input{width:100%;height:40px;min-width:0}
.login-filter-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.login-add-filter{position:relative}
.login-add-filter>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.login-add-filter>summary::-webkit-details-marker{display:none}
.login-filter-menu{position:absolute;z-index:40;top:calc(100% + 8px);left:0;width:210px;padding:8px;background:#17141b;border:1px solid var(--dl-border,#29262f);border-radius:8px;box-shadow:0 16px 36px rgba(0,0,0,.42)}
.login-filter-menu button{display:block;width:100%;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--dl-text-1,#f5f3f7);text-align:left;cursor:pointer}
.login-filter-menu button:hover,.login-filter-menu button:focus-visible{background:var(--dl-accent-deep,#241a38);color:#fff;outline:none}
.login-optional-filters{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.login-optional-filter{flex:0 1 300px;min-width:230px;padding:12px;background:#0d0c0f;border:1px solid var(--dl-border-soft,#1e1c22);border-radius:8px}
.login-optional-filter[hidden]{display:none!important}
.login-filter-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}
.login-filter-panel-head button{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--dl-text-2,#b6b1bc);font-size:21px;line-height:1;cursor:pointer}
.login-filter-panel-head button:hover,.login-filter-panel-head button:focus-visible{background:#251c33;color:#fff;outline:none}
.login-optional-filter label{display:grid;gap:7px;color:var(--muted,#aaa4b3);font-size:13px}
.login-optional-filter input,.login-optional-filter select{width:100%;height:40px;min-width:0}
.login-date-range{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.login-history-scroll{display:block;width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain}
.login-history-table{width:100%;min-width:1120px;table-layout:fixed}
.login-history-table th,.login-history-table td{min-width:0;white-space:normal;overflow-wrap:anywhere;vertical-align:top}
.login-history-table th:nth-child(1){width:145px}
.login-history-table th:nth-child(2){width:130px}
.login-history-table th:nth-child(3){width:135px}
.login-history-table th:nth-child(4){width:285px}
.login-history-table th:nth-child(5){width:170px}
.login-history-table th:nth-child(6){width:150px}
.login-history-table th:nth-child(7){width:150px}
.login-history-scroll:focus-visible{outline:3px solid rgba(142,84,233,.28);outline-offset:-3px}
@media(max-width:900px){.login-filter-primary{align-items:stretch;flex-direction:column}.login-filter-search{flex-basis:auto;width:100%}.login-filter-actions{width:100%}.login-optional-filter{flex:1 1 100%;max-width:none}}
@media(max-width:520px){.login-filter-actions{display:grid;grid-template-columns:1fr 1fr}.login-filter-actions .btn,.login-add-filter>summary{width:100%}.login-add-filter{grid-column:1/-1}.login-filter-menu{width:min(240px,calc(100vw - 64px))}.login-date-range{grid-template-columns:1fr}}

/* ThetaWire v2.16.5 — responsive login history with expandable details */
.login-history-panel{width:100%;max-width:100%;min-width:0;overflow:hidden}
.login-history-list{display:grid;gap:10px;padding:0 20px 20px;min-width:0}
.login-history-record{width:100%;min-width:0;border:1px solid var(--border,#29262f);border-radius:8px;background:var(--surface,#101012);overflow:hidden}
.login-history-record[open]{border-color:#50435f}
.login-history-summary{display:grid;grid-template-columns:minmax(140px,170px) minmax(105px,130px) minmax(135px,1fr) minmax(175px,1.25fr) minmax(130px,160px) auto;gap:14px;align-items:center;padding:14px 16px;cursor:pointer;list-style:none;min-width:0}
.login-history-summary::-webkit-details-marker{display:none}
.login-history-summary>span{min-width:0}
.login-history-summary strong,.login-history-summary code{display:block;overflow-wrap:anywhere}
.login-history-summary small{display:block;margin-top:3px;color:var(--muted,#817b88);font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.login-history-datetime{white-space:normal}
.login-history-datetime strong{white-space:nowrap}
.login-history-datetime small{white-space:nowrap}
.login-history-status{font-weight:650}
.login-status-success,.login-status-accepted{color:var(--success,#69d77a)}
.login-status-failed,.login-status-locked{color:var(--danger,#e05858)}
.login-status-logout{color:var(--text-2,#b6b1bc)}
.login-history-expand{justify-self:end;color:var(--accent,#8e54e9);font-size:12px;font-weight:600;white-space:nowrap}
.login-history-expand::after{content:' ▾'}
.login-history-record[open] .login-history-expand::after{content:' ▴'}
.login-history-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:18px 20px 22px;border-top:1px solid var(--border-soft,#1e1c22);background:var(--surface-2,#151419)}
.login-history-details section{min-width:0}
.login-history-details h3{margin:0 0 10px;font-size:14px;color:var(--text-1,#f5f3f7)}
.login-history-details dl{display:grid;gap:7px;margin:0}
.login-history-details dl>div{display:grid;grid-template-columns:minmax(110px,145px) minmax(0,1fr);gap:12px;align-items:start}
.login-history-details dt{color:var(--muted,#817b88);font-size:12px}
.login-history-details dd{margin:0;color:var(--text-2,#b6b1bc);font-size:13px;overflow-wrap:anywhere}
.login-history-details code{white-space:normal;overflow-wrap:anywhere}
.login-history-empty{padding:22px;text-align:center;color:var(--muted,#817b88);border:1px solid var(--border,#29262f);border-radius:8px}
/* old wide table is retained only for print styles, not the interactive page */
.login-history-scroll{display:none!important}
@media(max-width:1180px){
  .login-history-summary{grid-template-columns:minmax(140px,170px) minmax(105px,130px) minmax(135px,1fr) minmax(175px,1.2fr) auto}
  .login-history-session-summary{display:none}
}
@media(max-width:900px){
  .login-history-summary{grid-template-columns:minmax(135px,165px) minmax(100px,125px) minmax(0,1fr) auto}
  .login-history-network{display:none}
  .login-history-details{grid-template-columns:1fr}
}
@media(max-width:620px){
  .login-history-list{padding-inline:12px}
  .login-history-summary{grid-template-columns:1fr auto;gap:8px 12px}
  .login-history-datetime,.login-history-user{grid-column:1}
  .login-history-status,.login-history-expand{grid-column:2;grid-row:1}
  .login-history-user{grid-row:2}
  .login-history-status{align-self:start}
  .login-history-details{padding:16px}
  .login-history-details dl>div{grid-template-columns:1fr;gap:2px}
}
@media print{
  .login-history-list{display:block;padding:0}
  .login-history-record{break-inside:avoid;margin-bottom:8px;border:1px solid #bbb;background:#fff}
  .login-history-summary{grid-template-columns:150px 100px 140px 1fr 130px;padding:8px;color:#000}
  .login-history-expand{display:none}
  .login-history-details{display:grid!important;grid-template-columns:repeat(2,1fr);padding:10px;background:#fff;color:#000}
}

/* ThetaWire v2.17.0 — Local GeoIP maintenance */
.geoip-stat-grid article small{display:block;margin-top:5px;color:var(--muted,#817b88);font-size:12px}
.geoip-ok{color:var(--success,#69d77a)!important}.geoip-bad{color:var(--danger,#e05858)!important}
.geoip-maintenance-panel{overflow:hidden}
.geoip-maintenance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 20px 20px}
.geoip-tool-card{display:flex;min-width:0;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border,#29262f);border-radius:8px;background:var(--surface,#101012)}
.geoip-tool-card h3,.geoip-tool-card p{margin:0}.geoip-tool-card p{color:var(--muted,#817b88);font-size:13px;line-height:1.5}
.geoip-tool-card label{display:grid;gap:7px;color:var(--muted,#817b88);font-size:13px}.geoip-tool-card input{width:100%;max-width:360px}
.geoip-tool-card .btn{align-self:flex-start}
.geoip-test-result{margin:0 20px 20px;padding:16px;border:1px solid var(--border,#29262f);border-radius:8px;background:var(--surface-2,#151419)}
.geoip-test-result h3{margin:0 0 12px}.geoip-test-result dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:0}
.geoip-test-result dl>div{display:grid;grid-template-columns:minmax(125px,160px) minmax(0,1fr);gap:10px}.geoip-test-result dt{color:var(--muted,#817b88);font-size:12px}.geoip-test-result dd{margin:0;overflow-wrap:anywhere}
@media(max-width:1000px){.geoip-maintenance-grid{grid-template-columns:1fr}.geoip-test-result dl{grid-template-columns:1fr}}
@media(max-width:600px){.geoip-maintenance-grid{padding-inline:12px}.geoip-test-result{margin-inline:12px}.geoip-test-result dl>div{grid-template-columns:1fr;gap:2px}}
/* ThetaWire v2.17.1 self-contained GeoIP importer */
.geoip-import-grid{display:grid;gap:10px;margin:16px 0 28px;max-width:820px}.geoip-import-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 14px;border:1px solid var(--dl-border,#29262f);border-radius:8px;background:var(--dl-surface-1,#101012)}.geoip-import-row small{display:block;margin-top:4px;color:var(--dl-text-3,#817b88)}@media(max-width:640px){.geoip-import-row{align-items:stretch;flex-direction:column}.geoip-import-row .btn{width:100%}}

/* ThetaWire v2.17.2 — GeoIP diagnostics */
.geoip-diagnostics-panel{margin-bottom:24px;overflow:hidden}
.geoip-path-diagnostics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.geoip-path-diagnostics>div{min-width:0;padding:14px;border:1px solid var(--border,#2b2933);border-radius:12px;background:rgba(255,255,255,.015)}
.geoip-path-diagnostics dt{margin-bottom:7px;color:var(--muted,#aaa);font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}
.geoip-path-diagnostics dd{margin:0;min-width:0;overflow-wrap:anywhere}
.geoip-path-diagnostics code,.geoip-file-list code{display:block;margin-top:5px;color:var(--muted,#aaa);font-size:.78rem;overflow-wrap:anywhere;word-break:break-word}
.geoip-file-list{display:grid;gap:10px;margin:10px 0 24px}
.geoip-file-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 18px;align-items:center;padding:13px 15px;border:1px solid var(--border,#2b2933);border-radius:12px;background:rgba(255,255,255,.015)}
.geoip-file-list article>div{min-width:0}
.geoip-file-list article>span{white-space:nowrap;font-weight:700}
.geoip-file-list article>small{grid-column:1/-1;color:var(--muted,#aaa);overflow-wrap:anywhere}
.geoip-inline-import{grid-column:1/-1;margin-top:4px}
@media(max-width:900px){.geoip-path-diagnostics{grid-template-columns:1fr}.geoip-file-list article{grid-template-columns:1fr}.geoip-file-list article>span{white-space:normal}}

/* ThetaWire v2.22.0e — emergency upload interaction hardening */
.upload-modal{
  pointer-events:auto !important;
}
.upload-modal .upload-panel{
  position:relative !important;
  z-index:1002 !important;
  pointer-events:auto !important;
}
.upload-modal .upload-panel,
.upload-modal .upload-panel *{
  pointer-events:auto !important;
}
.upload-modal .upload-panel::before,
.upload-modal .upload-panel::after,
.upload-modal::before,
.upload-modal::after{
  pointer-events:none !important;
}
.upload-modal [data-file-input]{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.upload-native-file-label{
  cursor:pointer !important;
  user-select:none;
}
.upload-modal .modal-close,
.upload-modal [data-close-modal]{
  cursor:pointer !important;
  position:relative;
  z-index:1004 !important;
}

/* ==========================================================
   ThetaWire v2.22.3 — Responsive Accessibility Foundation
   Comfortable by default, readable with glasses, touch-safe.
   ========================================================== */

:root{
  --dl-readable-body:17px;
  --dl-readable-small:14px;
  --dl-readable-button:16px;
  --dl-touch-target:48px;
  --dl-comfort-gap:12px;
  --dl-comfort-section:24px;
  --dl-mobile-padding:16px;
}

/* Global readability */
html{
  font-size:100%;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-behavior:smooth;
}

body{
  font-size:var(--dl-readable-body);
  line-height:1.6;
  overflow-x:hidden;
}

p,
li,
dd,
label,
input,
select,
textarea,
button{
  font-size:inherit;
}

small,
.meta,
.metadata,
.help-text,
.field-help,
.caption{
  font-size:var(--dl-readable-small)!important;
  line-height:1.5;
}

/* Never allow low-contrast tiny interface text. */
body small{
  color:#aaa3b2;
}

a,
button,
input,
select,
textarea,
summary{
  -webkit-tap-highlight-color:rgba(158,109,240,.2);
}

button,
.btn,
input[type="button"],
input[type="submit"],
input[type="reset"]{
  min-height:var(--dl-touch-target);
  padding:.72rem 1rem;
  font-size:var(--dl-readable-button);
  line-height:1.25;
}

.btn,
button{
  gap:10px;
}

.btn .svg-icon,
button .svg-icon{
  margin-right:2px;
  flex:0 0 auto;
}

input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
select,
textarea,
.control{
  min-height:48px;
  padding:.72rem .85rem;
  font-size:16px; /* Prevents mobile browser auto-zoom. */
}

textarea{
  min-height:120px;
  resize:vertical;
}

input[type="checkbox"],
input[type="radio"]{
  width:20px;
  height:20px;
  flex:0 0 20px;
}

label{
  line-height:1.45;
}

/* Visible keyboard focus */
:focus-visible{
  outline:3px solid #b88cff!important;
  outline-offset:3px!important;
}

/* Comfortable icon-and-word spacing */
.btn,
button,
nav a,
.toolbar a,
.sidebar a,
.public-nav a,
.gallery-tabs a,
.card-actions a{
  align-items:center;
}

nav a .svg-icon,
.sidebar a .svg-icon,
.toolbar a .svg-icon,
.gallery-tabs a .svg-icon{
  margin-right:8px;
}

/* Responsive media */
img,
video,
iframe,
canvas,
svg{
  max-width:100%;
}

img,
video{
  height:auto;
}

table{
  max-width:100%;
}

/* Cards and panels should breathe without becoming oversized. */
.card,
.panel,
.admin-card,
.settings-card,
.auth-card,
.modal-panel,
.gallery-builder,
.gallery-editor-panel,
.gallery-list-panel{
  box-sizing:border-box;
}

form{
  min-width:0;
}

.form-row,
.field-row,
.action-row,
.toolbar,
.page-actions,
.card-actions,
.bulk-actions{
  gap:var(--dl-comfort-gap);
  flex-wrap:wrap;
}

/* Modal safety */
.modal,
dialog{
  max-width:calc(100vw - 24px);
  max-height:calc(100dvh - 24px);
}

.modal-panel,
dialog>form,
dialog>.modal-content{
  max-height:calc(100dvh - 40px);
  overflow:auto;
}

/* Avoid unreadable fixed-width content. */
pre,
code{
  overflow-wrap:anywhere;
}

pre{
  overflow:auto;
  max-width:100%;
}

/* Reduced motion accessibility */
@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}

/* Tablet */
@media(max-width:900px){
  body{
    font-size:17px;
  }

  .admin-shell,
  .dashboard-grid,
  .content-grid,
  .settings-grid,
  .two-column,
  .three-column{
    min-width:0;
  }

  .toolbar,
  .page-actions,
  .form-actions,
  .bulk-actions{
    align-items:stretch;
  }

  .toolbar>.btn,
  .page-actions>.btn,
  .form-actions>.btn{
    min-width:140px;
  }
}

/* Mobile comfort mode */
@media(max-width:640px){
  :root{
    --dl-readable-body:18px;
    --dl-readable-small:15px;
    --dl-readable-button:17px;
    --dl-touch-target:50px;
    --dl-comfort-gap:14px;
    --dl-comfort-section:22px;
  }

  body{
    font-size:var(--dl-readable-body);
    line-height:1.65;
  }

  h1{
    font-size:clamp(1.8rem,9vw,2.6rem);
    line-height:1.15;
  }

  h2{
    font-size:clamp(1.4rem,7vw,2rem);
    line-height:1.2;
  }

  h3{
    font-size:1.25rem;
  }

  .page,
  main,
  .admin-content,
  .public-content,
  .content{
    min-width:0;
  }

  .public-header,
  .toolbar,
  .page-head,
  .section-head,
  .form-actions,
  .page-actions,
  .bulk-actions{
    gap:14px;
  }

  .btn,
  button,
  input[type="button"],
  input[type="submit"],
  input[type="reset"]{
    min-height:50px;
    font-size:17px;
    padding:.78rem 1rem;
  }

  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  select,
  textarea,
  .control{
    min-height:50px;
    font-size:17px;
  }

  .toolbar>.btn,
  .page-actions>.btn,
  .form-actions>.btn,
  .bulk-actions>.btn{
    width:100%;
    justify-content:center;
  }

  .form-row,
  .field-row,
  .two-column,
  .three-column,
  .settings-grid,
  .dashboard-grid{
    grid-template-columns:1fr!important;
  }

  table.responsive-table,
  .table-wrap{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .modal,
  dialog{
    width:calc(100vw - 16px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 16px)!important;
    margin:8px!important;
    border-radius:8px!important;
  }

  .modal-panel,
  dialog>form,
  dialog>.modal-content{
    max-height:calc(100dvh - 32px)!important;
  }

  .modal-close,
  [data-close-modal],
  [data-lightbox-close]{
    min-width:50px;
    min-height:50px;
  }
}

/* Very narrow phones */
@media(max-width:390px){
  body{
    font-size:17px;
  }

  .btn,
  button{
    font-size:16px;
  }

  .public-nav,
  .toolbar,
  .page-actions{
    width:100%;
  }
}

/* ==========================================================
   ThetaWire v2.22.3d — Site-wide mobile navigation
   ========================================================== */

.public-mobile-menu-button{
  display:none;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-width:96px;
  min-height:48px;
  padding:9px 13px;
  border:1px solid #352d3e;
  border-radius:8px;
  background:#121015;
  color:#f2edf7;
  font-size:16px;
  font-weight:600;
  cursor:pointer;
}

.public-mobile-menu-button .public-icon,
.public-mobile-menu-close .public-icon{
  width:22px;
  height:22px;
  margin:0;
}

.public-mobile-menu-overlay{
  position:fixed;
  inset:0;
  z-index:980;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(2px);
}

.public-mobile-menu{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  z-index:990;
  display:flex;
  flex-direction:column;
  width:min(360px,88vw);
  padding:18px;
  background:#0c0b0f;
  border-left:1px solid #352d3e;
  box-shadow:-20px 0 54px rgba(0,0,0,.52);
  transform:translateX(105%);
  visibility:hidden;
  transition:transform .2s ease,visibility .2s ease;
  overflow-y:auto;
}

body.public-menu-open{
  overflow:hidden;
}

body.public-menu-open .public-mobile-menu{
  transform:translateX(0);
  visibility:visible;
}

.public-mobile-menu-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:16px;
  border-bottom:1px solid #29242f;
}

.public-mobile-menu-head strong{
  font-size:20px;
  letter-spacing:.06em;
}

.public-mobile-menu-close{
  display:grid;
  place-items:center;
  width:50px;
  min-width:50px;
  height:50px;
  min-height:50px;
  padding:0;
  border:1px solid #352d3e;
  border-radius:8px;
  background:#141118;
  color:#fff;
  cursor:pointer;
}

.public-mobile-menu-links{
  display:grid;
  gap:8px;
  padding:18px 0;
}

.public-mobile-menu-links a{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:52px;
  padding:12px 14px;
  border:1px solid transparent;
  border-radius:8px;
  color:#eee8f3;
  text-decoration:none;
  font-size:17px;
  font-weight:600;
}

.public-mobile-menu-links a .public-icon{
  width:22px;
  height:22px;
  flex:0 0 22px;
  margin:0;
}

.public-mobile-menu-links a:hover,
.public-mobile-menu-links a:focus-visible,
.public-mobile-menu-links a.active{
  background:#19131f;
  border-color:#453454;
  color:#d8bdff;
}

.public-mobile-menu-time{
  display:block;
  margin-top:auto;
  padding:16px 4px 4px;
  border-top:1px solid #29242f;
  color:#aaa3b2;
  font-size:15px;
  line-height:1.5;
}

/* Make the admin menu button visible and readable whenever the sidebar becomes a drawer. */
@media(max-width:899px){
  .public-topbar{
    min-height:68px!important;
    height:auto!important;
    padding:8px 14px!important;
    gap:12px;
  }

  .public-brand{
    min-width:0;
    flex:1 1 auto;
  }

  .public-brand img{
    width:min(230px,58vw)!important;
    max-width:100%!important;
    height:auto!important;
  }

  .public-topnav{
    display:none!important;
  }

  .public-mobile-menu-button{
    display:inline-flex;
    flex:0 0 auto;
  }

  .public-mobile-datetime{
    display:none!important;
  }

  .mobile-admin-bar{
    display:flex!important;
    min-height:64px!important;
    padding:8px 14px!important;
    font-size:17px!important;
  }

  .mobile-menu-button{
    display:grid!important;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    font-size:24px!important;
  }

  body.sidebar-open{
    overflow:hidden;
  }

  .sidebar{
    width:min(340px,88vw)!important;
  }

  .sidebar .nav-item{
    min-height:52px!important;
    padding:12px 16px!important;
    font-size:17px!important;
    gap:13px!important;
  }

  .sidebar .nav-group-title{
    font-size:13px!important;
    padding:13px 16px 8px!important;
  }
}

@media(max-width:390px){
  .public-mobile-menu-button{
    min-width:52px;
    width:52px;
    padding:0;
  }

  .public-mobile-menu-button span{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
}

/* ==========================================================
   ThetaWire v2.22.3e — Mobile-only navigation correction
   The mobile header must never show desktop navigation links.
   ========================================================== */

@media(max-width:899px){
  /* Compact mobile header */
  body .public-topbar{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    width:100%!important;
    min-height:64px!important;
    height:64px!important;
    padding:7px 12px!important;
    gap:10px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  body .public-topbar .public-brand{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    width:auto!important;
    overflow:hidden!important;
  }

  body .public-topbar .public-brand img{
    display:block!important;
    width:auto!important;
    max-width:min(210px,58vw)!important;
    height:48px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  /* Desktop navigation is completely removed from the mobile layout. */
  body .public-topbar .public-topnav,
  body .public-topbar nav.public-topnav,
  body .public-nav-datetime,
  body .public-mobile-datetime{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
  }

  body .public-mobile-menu-button{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:52px!important;
    min-width:52px!important;
    height:50px!important;
    min-height:50px!important;
    padding:0!important;
    margin:0!important;
    border-radius:8px!important;
    font-size:0!important;
    line-height:1!important;
  }

  body .public-mobile-menu-button .public-icon{
    width:25px!important;
    height:25px!important;
    margin:0!important;
  }

  body .public-mobile-menu-label{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    padding:0!important;
    margin:-1px!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;
    border:0!important;
  }

  /* Drawer overlay */
  body .public-mobile-menu-overlay{
    position:fixed!important;
    inset:0!important;
    z-index:2147483000!important;
    display:block!important;
    width:100vw!important;
    height:100dvh!important;
    background:rgba(0,0,0,.78)!important;
  }

  body .public-mobile-menu-overlay[hidden]{
    display:none!important;
  }

  /* Drawer itself */
  body aside.public-mobile-menu{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    z-index:2147483001!important;
    display:flex!important;
    flex-direction:column!important;
    width:min(340px,88vw)!important;
    max-width:88vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:16px!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    border:0!important;
    border-left:1px solid #352d3e!important;
    border-radius:0!important;
    background:#0c0b0f!important;
    box-shadow:-18px 0 46px rgba(0,0,0,.58)!important;
    transform:translateX(105%)!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    box-sizing:border-box!important;
  }

  body.public-menu-open aside.public-mobile-menu{
    transform:translateX(0)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  body .public-mobile-menu-head{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:56px!important;
    padding:0 0 14px!important;
    margin:0!important;
    border-bottom:1px solid #29242f!important;
  }

  body .public-mobile-menu-head strong{
    display:block!important;
    font-size:20px!important;
    line-height:1.2!important;
  }

  body .public-mobile-menu-close{
    display:grid!important;
    place-items:center!important;
    width:50px!important;
    min-width:50px!important;
    height:50px!important;
    min-height:50px!important;
    padding:0!important;
    margin:0!important;
  }

  /* Vertical mobile-only link list */
  body .public-mobile-menu nav.public-mobile-menu-links{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    gap:8px!important;
    padding:16px 0!important;
    margin:0!important;
  }

  body .public-mobile-menu nav.public-mobile-menu-links a{
    display:grid!important;
    grid-template-columns:28px minmax(0,1fr)!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:54px!important;
    padding:12px 14px!important;
    margin:0!important;
    gap:14px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#f1ecf5!important;
    font-size:18px!important;
    font-weight:600!important;
    line-height:1.25!important;
    text-align:left!important;
    white-space:normal!important;
    box-sizing:border-box!important;
  }

  body .public-mobile-menu nav.public-mobile-menu-links a .public-icon{
    width:24px!important;
    height:24px!important;
    margin:0!important;
  }

  body .public-mobile-menu nav.public-mobile-menu-links a.active,
  body .public-mobile-menu nav.public-mobile-menu-links a:focus-visible{
    background:#19131f!important;
    border-color:#553d70!important;
    color:#d8bdff!important;
  }

  body .public-mobile-menu-time{
    display:block!important;
    width:100%!important;
    margin-top:auto!important;
    padding:15px 2px 2px!important;
    border-top:1px solid #29242f!important;
    color:#aaa3b2!important;
    font-size:15px!important;
    line-height:1.45!important;
    white-space:normal!important;
  }

  body.public-menu-open{
    overflow:hidden!important;
    touch-action:none!important;
  }
}

/* Desktop remains unchanged and the drawer remains unavailable. */
@media(min-width:900px){
  body .public-mobile-menu-button,
  body aside.public-mobile-menu,
  body .public-mobile-menu-overlay{
    display:none!important;
  }
}

/* ==========================================================
   ThetaWire v2.22.4 — Space TV Live
   Compact and intentionally unobtrusive.
   ========================================================== */

.space-tv-panel{
  width:100%;
  box-sizing:border-box;
  margin:0 0 16px;
  padding:14px;
  border:1px solid #29242f;
  border-radius:8px;
  background:#0d0c10;
}

.space-tv-panel header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.space-tv-panel header>div{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

.space-tv-panel header strong{
  font-size:15px;
  line-height:1.3;
  white-space:nowrap;
}

.space-tv-status-dot{
  width:9px;
  height:9px;
  flex:0 0 9px;
  border-radius:50%;
  background:#68616d;
}

.space-tv-panel.is-live .space-tv-status-dot{
  background:#d44949;
  box-shadow:0 0 0 4px rgba(212,73,73,.11);
}

.space-tv-state{
  color:#9f98a6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

.space-tv-panel.is-live .space-tv-state{
  color:#ef8d8d;
}

.space-tv-event{
  margin:13px 0 3px;
  color:#f2edf5;
  font-size:15px;
  font-weight:600;
  line-height:1.4;
}

.space-tv-provider,
.space-tv-offline{
  margin:0;
  color:#9d96a3;
  font-size:14px;
  line-height:1.45;
}

.space-tv-player{
  margin-top:12px;
  overflow:hidden;
  border-radius:7px;
  background:#030304;
  aspect-ratio:16/9;
}

.space-tv-player iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.space-tv-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.space-tv-actions button,
.space-tv-actions a{
  min-height:40px;
  padding:9px 12px;
  border:1px solid #37303f;
  border-radius:6px;
  background:#151219;
  color:#eee8f2;
  font-size:14px;
  text-decoration:none;
  cursor:pointer;
}

.space-tv-actions .space-tv-start{
  border-color:#604385;
  background:#24182f;
}

.space-tv-actions .space-tv-stop{
  border-color:#593434;
}

.space-tv-admin{
  max-width:1040px;
}

.space-tv-admin-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0;
  padding:16px 18px;
  border:1px solid #2c2831;
  border-radius:8px;
  background:#0f0e12;
}

.space-tv-admin-status>div{
  display:flex;
  align-items:center;
  gap:10px;
}

.space-tv-admin-status p{
  margin:0;
  color:#aaa3b2;
}

.space-tv-admin-dot{
  width:11px;
  height:11px;
  border-radius:50%;
  background:#68616d;
}

.space-tv-admin-status.is-live .space-tv-admin-dot{
  background:#d44949;
}

.space-tv-admin-form{
  display:grid;
  grid-template-columns:220px minmax(0,1fr);
  gap:18px;
  padding:20px;
  border:1px solid #29242f;
  border-radius:8px;
  background:#0e0d11;
}

.space-tv-admin-form label{
  display:block;
}

.space-tv-admin-form label>span{
  display:block;
  margin-bottom:7px;
  color:#c9c1ce;
  font-size:14px;
}

.space-tv-admin-form .space-tv-wide{
  grid-column:1/-1;
}

.space-tv-admin-actions{
  display:flex;
  justify-content:flex-start;
}

.space-tv-stop-form,
.space-tv-admin-note{
  margin-top:18px;
  padding:20px;
  border:1px solid #29242f;
  border-radius:8px;
  background:#0e0d11;
}

.space-tv-stop-form{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.space-tv-admin-note h2{
  margin-top:0;
  font-size:18px;
}

.space-tv-admin-note p{
  margin-bottom:0;
  color:#aaa3b2;
}

@media(max-width:1100px){
  .space-tv-panel{
    margin:0 18px 18px;
    width:auto;
  }
}

@media(max-width:700px){
  .space-tv-admin-form{
    grid-template-columns:1fr;
    padding:16px;
  }

  .space-tv-admin-form .space-tv-wide{
    grid-column:auto;
  }

  .space-tv-admin-status,
  .space-tv-stop-form{
    align-items:stretch;
    flex-direction:column;
  }

  .space-tv-stop-form .btn{
    width:100%;
  }
}

/* ==========================================================
   ThetaWire v2.22.4a — Space TV sidebar placement correction
   Keeps Space TV inside the existing right sidebar.
   ========================================================== */

.public-right-sidebar .space-tv-panel{
  width:100%!important;
  margin:18px 0 24px!important;
  padding:13px!important;
  position:static!important;
  inset:auto!important;
  align-self:auto!important;
}

.public-right-sidebar .public-inline-login + .space-tv-panel{
  margin-top:22px!important;
}

.public-right-sidebar .space-tv-panel + h2{
  margin-top:0!important;
}

.public-right-sidebar .space-tv-panel header strong{
  font-size:14px!important;
}

.public-right-sidebar .space-tv-event{
  font-size:14px!important;
}

.public-right-sidebar .space-tv-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}

.public-right-sidebar .space-tv-actions a{
  grid-column:1/-1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.public-right-sidebar .space-tv-actions button,
.public-right-sidebar .space-tv-actions a{
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  box-sizing:border-box!important;
}

@media(max-width:899px){
  .public-right-sidebar .space-tv-panel{
    margin:18px 0 24px!important;
    width:100%!important;
  }
}

/* ==========================================================
   ThetaWire v2.22.5 — Multi-event Space TV Live
   ========================================================== */

.space-tv-panel label{
  display:block;
  margin-top:13px;
}

.space-tv-panel label>span{
  display:block;
  margin-bottom:7px;
  color:#a9a2ae;
  font-size:13px;
}

.space-tv-panel select.control{
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:9px 10px!important;
  font-size:14px!important;
}

.space-tv-power-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  width:100%!important;
  min-height:42px!important;
  margin-top:10px!important;
  padding:9px 12px!important;
  border:1px solid #604385!important;
  border-radius:6px!important;
  background:#24182f!important;
  color:#f1ebf5!important;
  font-size:14px!important;
  cursor:pointer!important;
}

.space-tv-power-button svg{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.space-tv-power-button.is-stop{
  border-color:#593434!important;
  background:#211417!important;
}

.space-tv-playing>span{
  display:block;
  margin-top:12px;
  color:#9d96a3;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.space-tv-playing>strong{
  display:block;
  margin-top:4px;
  color:#f2edf5;
  font-size:15px;
  line-height:1.4;
}

.space-tv-playing>small{
  display:block;
  margin-top:3px;
  color:#9d96a3;
  font-size:13px;
}

.space-tv-playing-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:10px;
}

.space-tv-playing-actions a{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  border:1px solid #37303f;
  border-radius:6px;
  color:#ddd5e4;
  font-size:13px;
  text-decoration:none;
}

.live-events-admin{
  max-width:1240px;
}

.live-events-admin-layout{
  display:grid;
  grid-template-columns:minmax(300px,380px) minmax(0,1fr);
  gap:22px;
}

.live-events-list,
.live-events-editor{
  padding:20px;
  border:1px solid #29242f;
  border-radius:8px;
  background:#0e0d11;
}

.live-events-list h2,
.live-events-editor h2{
  margin-top:0;
}

.live-event-admin-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  margin-top:10px;
  padding:13px;
  border:1px solid #29242f;
  border-radius:7px;
  background:#121016;
}

.live-event-admin-card>div:first-child{
  min-width:0;
}

.live-event-admin-card strong,
.live-event-admin-card small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.live-event-admin-card small{
  margin-top:4px;
  color:#9f98a6;
}

.live-event-admin-card>a{
  grid-column:2;
  grid-row:1/3;
}

.live-event-admin-flags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.live-event-admin-flags span{
  padding:3px 7px;
  border-radius:999px;
  background:#24182f;
  color:#c9b1ea;
  font-size:11px;
}

.live-events-form{
  display:grid;
  gap:16px;
}

.live-events-form label>span{
  display:block;
  margin-bottom:7px;
  color:#c9c1ce;
  font-size:14px;
}

.live-event-checks{
  display:grid;
  align-content:center;
  gap:10px;
}

.live-events-form-actions{
  display:flex;
  justify-content:flex-start;
}

.live-event-delete-form{
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #29242f;
}

@media(max-width:980px){
  .live-events-admin-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:640px){
  .live-event-admin-card{
    grid-template-columns:1fr;
  }

  .live-event-admin-card>a{
    grid-column:auto;
    grid-row:auto;
    width:100%;
  }
}

/* ==========================================================
   ThetaWire v2.22.5a — Space TV first in sidebar
   ========================================================== */

.public-right-sidebar > .space-tv-panel:first-child{
  margin-top:0!important;
  margin-bottom:24px!important;
}

.public-right-sidebar > .space-tv-panel + .public-inline-login{
  margin-top:0!important;
}

.public-right-sidebar > .space-tv-panel + .public-inline-login h2{
  margin-top:0!important;
}

/* ==========================================================
   ThetaWire v2.22.5b — Space TV switch and always-available rule
   ========================================================== */

.space-tv-channel-switch{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
  padding:8px 10px;
  border:1px solid #2f2936;
  border-radius:6px;
  background:#111014;
}

.space-tv-channel-switch span{
  color:#9f98a6;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.1em;
}

.space-tv-channel-switch strong{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#cdb3ec;
  font-size:12px;
  letter-spacing:.12em;
}

.space-tv-channel-switch strong::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:#8e54e9;
  box-shadow:0 0 0 4px rgba(142,84,233,.12);
}

.live-channel-control{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:18px 0 10px;
  padding:16px 18px;
  border:1px solid #302a37;
  border-radius:8px;
  background:#0f0e12;
}

.live-channel-control>div{
  display:flex;
  align-items:center;
  gap:12px;
}

.live-channel-power-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid #3a333f;
  border-radius:50%;
  color:#8b8490;
  font-size:22px;
}

.live-channel-control.is-on .live-channel-power-icon{
  border-color:#76529c;
  color:#c9a8ee;
  background:#21162b;
}

.live-channel-control strong,
.live-channel-control small{
  display:block;
}

.live-channel-control small{
  margin-top:3px;
  color:#99919f;
  font-size:12px;
  letter-spacing:.12em;
}

.live-channel-control.is-on small{
  color:#c9a8ee;
}

.live-channel-rule{
  margin:0 0 20px;
  color:#aaa3b2;
  font-size:14px;
  line-height:1.55;
}

@media(max-width:640px){
  .live-channel-control{
    align-items:stretch;
    flex-direction:column;
  }

  .live-channel-control form,
  .live-channel-control .btn{
    width:100%;
  }
}

/* ==========================================================
   ThetaWire v2.22.5c — Space TV panel always visible
   ========================================================== */

.space-tv-panel.is-disabled{
  opacity:1!important;
}

.space-tv-panel.is-disabled .space-tv-status-dot{
  background:#68616d!important;
  box-shadow:none!important;
}

.space-tv-panel.is-enabled .space-tv-status-dot{
  background:#8e54e9!important;
  box-shadow:0 0 0 4px rgba(142,84,233,.12)!important;
}

.space-tv-panel.is-disabled .space-tv-channel-switch strong{
  color:#918a97!important;
}

.space-tv-panel.is-disabled .space-tv-channel-switch strong::before{
  background:#68616d!important;
  box-shadow:none!important;
}

.space-tv-power-button:disabled{
  cursor:not-allowed!important;
  opacity:.5!important;
  border-color:#37303f!important;
  background:#151219!important;
}

.space-tv-disabled-note{
  display:block;
  margin-top:8px;
  color:#8f8796;
  font-size:12px;
  line-height:1.45;
}

.space-tv-empty-library{
  margin-top:12px;
  padding:10px;
  border:1px dashed #302a36;
  border-radius:6px;
  background:#0f0e12;
}

.space-tv-empty-library p{
  margin:0;
  color:#9b94a0;
  font-size:13px;
  line-height:1.45;
}

.space-tv-empty-library a{
  display:inline-flex;
  margin-top:9px;
  color:#b997e4;
  font-size:12px;
  text-decoration:none;
}


/* ==========================================================
   ThetaWire v2.22.5d — Center Space TV title only
   ========================================================== */

.space-tv-panel header{
    display:block !important;
    text-align:center !important;
    margin-bottom:14px;
}

.space-tv-panel header > div{
    display:block !important;
}

.space-tv-panel header .space-tv-status-dot{
    display:none !important;
}

.space-tv-panel header strong{
    display:block;
    width:100%;
    text-align:center !important;
    font-size:17px;
    letter-spacing:.10em;
    font-weight:700;
}

/* Keep all controls following the existing sidebar alignment */
.space-tv-channel-switch,
.space-tv-idle,
.space-tv-playing,
.space-tv-empty-library{
    text-align:right;
}

/* ==========================================================
   ThetaWire v2.22.6 — Special Live Event homepage viewer
   ========================================================== */

.special-live-event{
  overflow:hidden;
  margin-bottom:24px;
  border:1px solid #40334d;
  border-radius:10px;
  background:#0b0a0d;
}

.special-live-event[hidden]{
  display:none!important;
}

.special-live-event-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  padding:22px 24px;
  border-bottom:1px solid #2d2733;
}

.special-live-event-header>div{
  min-width:0;
}

.special-live-event-header span{
  display:block;
  color:#a36af2;
  font-size:13px;
  font-weight:600;
  letter-spacing:.16em;
}

.special-live-event-header h1{
  margin:8px 0 4px;
  color:#f3eef6;
  font-size:clamp(25px,3vw,38px);
  line-height:1.18;
  overflow-wrap:anywhere;
}

.special-live-event-header p{
  margin:0;
  color:#a9a2af;
  font-size:14px;
  text-transform:capitalize;
}

.special-live-player{
  width:100%;
  aspect-ratio:16/9;
  background:#030304;
}

.special-live-player iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.special-live-stop{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-width:104px;
  min-height:44px;
  padding:10px 15px;
  border:1px solid #593434;
  border-radius:7px;
  background:#211417;
  color:#f0e9ed;
  font-size:14px;
  cursor:pointer;
}

.special-live-stop svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.special-live-event-footer{
  display:flex;
  justify-content:flex-end;
  padding:14px 20px;
}

.special-live-event-footer a{
  color:#b997e4;
  font-size:13px;
  text-decoration:none;
}

/* Sidebar is now a remote control, not a miniature player. */
.public-right-sidebar .space-tv-playing-actions{
  margin-top:12px;
}

@media(max-width:700px){
  .special-live-event-header{
    align-items:stretch;
    flex-direction:column;
    padding:18px;
  }

  .special-live-stop{
    width:100%;
  }

  .special-live-event-footer{
    justify-content:center;
  }
}

/* ==========================================================
   ThetaWire v2.22.6a — Complete Space TV repair
   ========================================================== */

.live-events-admin.page-content,
.main .live-events-admin{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  box-sizing:border-box;
}

.main > .content.live-events-admin{
  padding:28px;
}

.space-tv-panel .space-tv-channel-switch strong{
  min-width:38px;
  text-align:right;
}

@media(max-width:700px){
  .main > .content.live-events-admin{
    padding:18px;
  }
}

/* ==========================================================
   ThetaWire v2.22.6b — Space TV admin form and spacing repair
   ========================================================== */

.live-events-page-head{
  position:static!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  flex-wrap:wrap!important;
  gap:22px!important;
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  margin:0 0 28px!important;
  padding:6px 4px 0!important;
  overflow:visible!important;
}

.live-events-page-head .title-cluster{
  flex:1 1 520px!important;
  min-width:0!important;
}

.live-events-page-head .page-kicker{
  display:block!important;
  position:static!important;
  margin:0 0 12px!important;
  color:#b998e8!important;
  font-size:14px!important;
  line-height:1.3!important;
  letter-spacing:.12em!important;
}

.live-events-page-head h1{
  position:static!important;
  margin:0 0 12px!important;
  font-size:clamp(34px,5vw,58px)!important;
  line-height:1.08!important;
}

.live-events-page-head p{
  position:static!important;
  max-width:820px!important;
  margin:0!important;
  color:#b4adb9!important;
  font-size:17px!important;
  line-height:1.55!important;
}

.live-events-head-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin:0!important;
}

.live-events-head-actions form{
  margin:0!important;
}

.live-channel-control{
  margin-top:0!important;
  padding:24px 28px!important;
}

.live-channel-rule{
  margin:20px 0 28px!important;
  padding:0 8px!important;
  line-height:1.6!important;
}

.live-events-form .field-help{
  display:block;
  margin-top:7px;
  color:#918a97;
  font-size:13px;
  line-height:1.45;
}

@media(max-width:760px){
  .live-events-page-head{
    display:block!important;
    padding-top:4px!important;
  }

  .live-events-head-actions{
    justify-content:stretch!important;
    margin-top:18px!important;
  }

  .live-events-head-actions .btn,
  .live-events-head-actions form{
    width:100%!important;
  }

  .live-channel-control{
    padding:20px!important;
  }
}

/* ==========================================================
   ThetaWire v2.22.6c — Space replaces Music category
   ========================================================== */

.public-category[href*="category=space"] .public-icon{
  width:46px;
  height:46px;
}

.public-page-main > .public-categories{
  grid-template-columns:repeat(6,minmax(100px,1fr))!important;
}

@media(max-width:899px){
  .public-page-main > .public-categories{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:560px){
  .public-page-main > .public-categories{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* ==========================================================
   ThetaWire v2.22.6e — Supplied transparent category icons
   Uses the exact six-icon transparent artwork supplied by the owner.
   ========================================================== */

.public-category{
  min-width:0;
  overflow:visible;
}

.public-category-picture{
  display:block;
  width:clamp(92px,8.4vw,154px);
  height:clamp(92px,8.4vw,154px);
  margin:0 auto 10px;
  pointer-events:none;
}

.public-category-art{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:transparent;
  border:0;
  border-radius:0;
  opacity:1;
  transform:translateY(0) scale(1);
  filter:
    drop-shadow(0 0 7px rgba(80,155,255,.16))
    drop-shadow(0 0 2px rgba(255,255,255,.08));
  transition:
    transform 180ms ease,
    filter 180ms ease;
  will-change:transform,filter;
}

/* Existing rollover behaviour, adapted to transparent artwork. */
.public-category:hover .public-category-art,
.public-category:focus-visible .public-category-art{
  transform:translateY(-3px) scale(1.025);
  filter:
    drop-shadow(0 0 11px rgba(112,181,255,.34))
    drop-shadow(0 0 18px rgba(153,86,239,.24))
    drop-shadow(0 0 3px rgba(255,255,255,.14));
}

.public-category.active .public-category-art,
.public-category.active-all .public-category-art{
  filter:
    drop-shadow(0 0 12px rgba(112,181,255,.38))
    drop-shadow(0 0 20px rgba(163,106,242,.34))
    drop-shadow(0 0 4px rgba(255,255,255,.16));
}

.public-category:focus-visible{
  outline:1px solid rgba(163,106,242,.72);
  outline-offset:6px;
  border-radius:6px;
}

/* Hide the old line icon only when a supplied image asset is present. */
.public-category-picture + .public-icon{
  display:none;
}

@media(max-width:899px){
  .public-category-picture{
    width:112px;
    height:112px;
  }
}

@media(max-width:560px){
  .public-category-picture{
    width:94px;
    height:94px;
    margin-bottom:8px;
  }

  .public-category:hover .public-category-art,
  .public-category:focus-visible .public-category-art{
    transform:translateY(-2px) scale(1.018);
  }
}

@media(prefers-reduced-motion:reduce){
  .public-category-art{
    transition:none;
  }
}

/* ==========================================================
   ThetaWire v2.22.6f — Space TV selector usability
   Cleaner native dropdown on Windows, macOS, iPadOS and mobile.
   ========================================================== */

.space-tv-event-field{
  display:block!important;
  margin-top:16px!important;
  text-align:right!important;
}

.space-tv-event-field>span:first-child{
  margin:0 0 8px!important;
  color:#c6becb!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.3!important;
}

.space-tv-select-shell{
  position:relative!important;
  display:block!important;
  width:100%!important;
  container-type:inline-size!important;
}

.space-tv-panel .space-tv-select-shell select.control{
  display:block!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 43px 0 14px!important;
  border:1px solid #45404b!important;
  border-radius:8px!important;
  background:#111014!important;
  color:#f4f0f6!important;
  font-family:inherit!important;
  font-size:15px!important;
  font-weight:500!important;
  line-height:48px!important;
  text-align:left!important;
  text-align-last:left!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  -moz-appearance:none!important;
  box-sizing:border-box!important;
  transition:border-color 160ms ease,box-shadow 160ms ease,background 160ms ease!important;
}

.space-tv-panel .space-tv-select-shell select.control:hover{
  border-color:#665476!important;
  background:#151219!important;
}

.space-tv-panel .space-tv-select-shell select.control:focus{
  outline:none!important;
  border-color:#9e6be1!important;
  box-shadow:
    0 0 0 3px rgba(158,107,225,.16),
    0 0 16px rgba(120,76,190,.10)!important;
}

.space-tv-panel .space-tv-select-shell select.control:disabled{
  cursor:not-allowed!important;
  opacity:.66!important;
}

.space-tv-select-arrow{
  position:absolute!important;
  top:50%!important;
  right:14px!important;
  width:18px!important;
  height:18px!important;
  transform:translateY(-50%)!important;
  fill:none!important;
  stroke:#c8a8ed!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  pointer-events:none!important;
}

.space-tv-selected-details{
  min-width:0!important;
  margin-top:9px!important;
  padding:10px 12px!important;
  border:1px solid #2f2a34!important;
  border-radius:7px!important;
  background:#0d0c0f!important;
  text-align:right!important;
}

.space-tv-selected-details>strong{
  display:block!important;
  overflow:hidden!important;
  color:#f1edf3!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.4!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

.space-tv-selected-details>span{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  margin-top:4px!important;
  color:#9d95a3!important;
  font-size:11px!important;
  line-height:1.3!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
}

.space-tv-selected-details b,
.space-tv-selected-details em{
  font:inherit!important;
}

.space-tv-selected-details i{
  color:#76529c!important;
  font-style:normal!important;
}

.space-tv-power-button{
  min-height:46px!important;
  border-radius:8px!important;
  font-size:15px!important;
}

@media(max-width:899px){
  .space-tv-panel .space-tv-select-shell select.control{
    height:50px!important;
    min-height:50px!important;
    line-height:50px!important;
    font-size:16px!important; /* prevents mobile browser zoom */
  }

  .space-tv-selected-details{
    padding:11px 12px!important;
  }
}

@media(max-width:560px){
  .space-tv-event-field{
    margin-top:14px!important;
  }

  .space-tv-panel .space-tv-select-shell select.control{
    padding-left:12px!important;
    padding-right:40px!important;
  }

  .space-tv-selected-details>strong{
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

/* ==========================================================
   ThetaWire v2.22.6g — Space TV video labels
   ========================================================== */

.space-tv-event-field>span:first-child::after{
  content:"";
}

.space-tv-selected-details>span{
  font-size:11.5px!important;
}

.space-tv-selected-details b{
  color:#c9b1ea!important;
  font-weight:600!important;
}

/* ==========================================================
   ThetaWire v2.22.7 — Space Events Calendar
   ========================================================== */

.space-tv-calendar-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  width:100%!important;
  min-height:44px!important;
  margin-top:9px!important;
  padding:10px 12px!important;
  border:1px solid #3b3542!important;
  border-radius:8px!important;
  background:#111014!important;
  color:#ded7e3!important;
  font-size:14px!important;
  cursor:pointer!important;
}

.space-tv-calendar-button:hover,
.space-tv-calendar-button:focus-visible{
  border-color:#745795!important;
  background:#17121d!important;
  color:#efe5fb!important;
}

.space-tv-calendar-button svg,
.space-calendar-close svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.space-events-calendar{
  overflow:hidden;
  margin-bottom:28px;
  border:1px solid #3b3245;
  border-radius:11px;
  background:#0b0a0d;
}

.space-events-calendar[hidden]{
  display:none!important;
}

.space-events-calendar-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding:24px 26px;
  border-bottom:1px solid #2e2933;
}

.space-events-calendar-header>div{
  min-width:0;
}

.space-events-calendar-header>div>span{
  display:block;
  color:#a36af2;
  font-size:13px;
  font-weight:600;
  letter-spacing:.15em;
}

.space-events-calendar-header h1{
  margin:8px 0 5px;
  color:#f4eff7;
  font-size:clamp(28px,3vw,40px);
  line-height:1.15;
}

.space-events-calendar-header p{
  margin:0;
  color:#aaa3b0;
  font-size:15px;
  line-height:1.5;
}

.space-calendar-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border:1px solid #51465c;
  border-radius:7px;
  background:#151219;
  color:#eee8f2;
  cursor:pointer;
}

.space-calendar-toolbar{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:18px 20px;
}

.space-calendar-toolbar button{
  min-height:42px;
  padding:9px 16px;
  border:1px solid #393340;
  border-radius:7px;
  background:#121015;
  color:#ddd7e1;
  cursor:pointer;
}

.space-calendar-toolbar button:hover,
.space-calendar-toolbar button:focus-visible{
  border-color:#76579a;
  color:#f0e6fb;
}

.space-calendar-weekdays,
.space-calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
}

.space-calendar-weekdays{
  margin:0 20px;
  border:1px solid #2b2730;
  border-bottom:0;
  border-radius:8px 8px 0 0;
  background:#111014;
}

.space-calendar-weekdays span{
  padding:12px 8px;
  color:#a79fab;
  font-size:12px;
  font-weight:600;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.09em;
}

.space-calendar-grid{
  margin:0 20px 24px;
  border-top:1px solid #2b2730;
  border-left:1px solid #2b2730;
}

.space-calendar-day{
  min-height:146px;
  padding:11px;
  border-right:1px solid #2b2730;
  border-bottom:1px solid #2b2730;
  background:#0d0c0f;
  box-sizing:border-box;
}

.space-calendar-day.is-empty{
  background:#09090b;
}

.space-calendar-date{
  display:block;
  margin-bottom:9px;
  color:#c8c1cc;
  font-size:14px;
}

.space-calendar-event{
  display:block;
  width:100%;
  min-width:0;
  margin:0 0 7px;
  padding:8px 9px;
  border:1px solid #40354d;
  border-radius:6px;
  background:#17121d;
  color:#eee8f2;
  text-align:left;
  cursor:pointer;
}

.space-calendar-event:hover,
.space-calendar-event:focus-visible{
  border-color:#8e63bd;
  background:#20172a;
  box-shadow:0 0 0 2px rgba(142,99,189,.12);
}

.space-calendar-event strong{
  display:block;
  overflow:hidden;
  font-size:12px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.space-calendar-event span{
  display:block;
  margin-top:4px;
  color:#a89faf;
  font-size:10px;
  line-height:1.25;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.space-calendar-event.is-live{
  border-color:#744047;
}

.space-calendar-event.is-upcoming{
  border-color:#4e4662;
}

.space-calendar-event.is-replay{
  border-color:#3e4f60;
}

.space-calendar-agenda{
  display:none;
}

.space-calendar-empty{
  margin:0;
  padding:24px;
  border:1px dashed #3a3340;
  border-radius:8px;
  color:#99919f;
  text-align:center;
}

@media(max-width:900px){
  .space-calendar-day{
    min-height:128px;
    padding:8px;
  }

  .space-calendar-event{
    padding:7px;
  }
}

@media(max-width:700px){
  .space-events-calendar-header{
    align-items:stretch;
    flex-direction:column;
    padding:20px;
  }

  .space-calendar-close{
    width:100%;
  }

  .space-calendar-weekdays,
  .space-calendar-grid{
    display:none;
  }

  .space-calendar-agenda{
    display:grid;
    gap:10px;
    padding:0 16px 20px;
  }

  .space-calendar-agenda-item{
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    gap:10px;
    align-items:stretch;
  }

  .space-calendar-agenda-item time{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:10px;
    border:1px solid #302b35;
    border-radius:7px;
    background:#101014;
    text-align:center;
  }

  .space-calendar-agenda-item time strong{
    color:#d9d2de;
    font-size:14px;
  }

  .space-calendar-agenda-item time span{
    margin-top:4px;
    color:#99919f;
    font-size:11px;
  }

  .space-calendar-agenda-item .space-calendar-event{
    height:100%;
    margin:0;
    padding:11px 12px;
  }

  .space-calendar-agenda-item .space-calendar-event strong{
    white-space:normal;
    overflow-wrap:anywhere;
  }

  .space-calendar-toolbar{
    padding:14px 12px;
  }

  .space-calendar-toolbar button{
    flex:1 1 0;
    padding:9px 8px;
  }
}

/* ==========================================================
   ThetaWire v2.22.8 — Events Calendar administration
   ========================================================== */

.events-calendar-admin{
  width:100%;
  max-width:1320px;
  margin:0 auto;
  padding:28px;
  box-sizing:border-box;
}

.events-calendar-page-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:22px!important;
  margin:0 0 26px!important;
}

.events-calendar-admin-layout{
  display:grid;
  grid-template-columns:minmax(300px,390px) minmax(0,1fr);
  gap:22px;
}

.events-calendar-list-panel,
.events-calendar-editor-panel,
.events-category-manager{
  padding:20px;
  border:1px solid #2d2832;
  border-radius:9px;
  background:#0e0d11;
}

.events-calendar-list{
  display:grid;
  gap:9px;
}

.events-calendar-list-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px;
  border:1px solid #2d2832;
  border-radius:7px;
  background:#121016;
  color:#eee8f1;
  text-decoration:none;
}

.events-calendar-list-item.active,
.events-calendar-list-item:hover{
  border-color:#76549a;
  background:#18121f;
}

.events-calendar-list-item>div{
  min-width:0;
}

.events-calendar-list-item strong,
.events-calendar-list-item small{
  display:block;
}

.events-calendar-list-item strong{
  margin-top:7px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.events-calendar-list-item small{
  margin-top:5px;
  color:#9e96a3;
}

.event-video-linked{
  flex:0 0 auto;
  padding:4px 7px;
  border:1px solid #3f5365;
  border-radius:999px;
  color:#a8c9e8;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.events-calendar-form{
  display:grid;
  gap:16px;
}

.events-calendar-form label>span{
  display:block;
  margin-bottom:7px;
  color:#c9c1ce;
  font-size:14px;
}

.events-calendar-checks{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  padding:14px;
  border:1px solid #2d2832;
  border-radius:7px;
  background:#111014;
}

.events-calendar-form-actions{
  display:flex;
  justify-content:flex-start;
}

.events-calendar-delete-form{
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #2d2832;
}

.events-category-manager{
  margin-top:22px;
}

.events-category-manager>header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.events-category-manager h2{
  margin:0;
}

.events-category-manager p{
  margin:6px 0 0;
  color:#9f98a4;
}

.events-category-grid{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin:18px 0;
}

.events-category-form{
  display:grid;
  grid-template-columns:1.3fr 1.2fr .9fr 110px auto auto;
  gap:10px;
  align-items:center;
}

.event-category-badge,
.space-calendar-event-category{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}

.accent-purple{background:#2b1b3c!important;color:#d0b3f5!important;border:1px solid #65418d!important}
.accent-blue{background:#14253a!important;color:#a9cef5!important;border:1px solid #315b83!important}
.accent-cyan{background:#123037!important;color:#9fe2e8!important;border:1px solid #2c6971!important}
.accent-orange{background:#382414!important;color:#f0c08c!important;border:1px solid #82562c!important}
.accent-red{background:#3b181d!important;color:#ef9ca5!important;border:1px solid #813842!important}
.accent-violet{background:#251b40!important;color:#c5aff4!important;border:1px solid #5d438e!important}
.accent-magenta{background:#37172f!important;color:#eea8dd!important;border:1px solid #85356d!important}
.accent-slate{background:#242932!important;color:#bdc7d4!important;border:1px solid #4f5c6b!important}

.space-calendar-event-category{
  margin-bottom:6px!important;
}

.space-calendar-event:disabled,
.space-calendar-event.has-no-video{
  cursor:not-allowed!important;
  opacity:.58!important;
}

.space-calendar-event:disabled:hover,
.space-calendar-event.has-no-video:hover{
  transform:none!important;
  box-shadow:none!important;
}

@media(max-width:1000px){
  .events-calendar-admin-layout{
    grid-template-columns:1fr;
  }

  .events-category-form{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:650px){
  .events-calendar-admin{
    padding:18px;
  }

  .events-calendar-page-head{
    display:block!important;
  }

  .events-calendar-page-head .actions{
    margin-top:16px;
  }

  .events-calendar-page-head .btn{
    width:100%;
  }

  .events-category-form{
    grid-template-columns:1fr;
  }

  .events-category-form .btn{
    width:100%;
  }

  .events-calendar-checks{
    display:grid;
    gap:12px;
  }
}

/* ==========================================================
   ThetaWire v2.22.8a — Main-page article card links
   ========================================================== */

.public-article-card-link{
  display:block;
  height:100%;
  color:inherit;
  text-decoration:none;
  border-radius:inherit;
}

.public-article-card-link:focus-visible{
  outline:2px solid #9e6be1;
  outline-offset:3px;
}

.public-article-card-link .public-card-image,
.public-article-card-link .public-card-details{
  pointer-events:none;
}

.public-article-card{
  cursor:pointer;
  transition:
    transform 170ms ease,
    border-color 170ms ease,
    box-shadow 170ms ease;
}

.public-article-card:hover{
  transform:translateY(-2px);
  border-color:#5f4778;
  box-shadow:0 8px 24px rgba(0,0,0,.24);
}

.public-article-card:hover h3{
  color:#c8a8ff;
}

@media(prefers-reduced-motion:reduce){
  .public-article-card{
    transition:none;
  }

  .public-article-card:hover{
    transform:none;
  }
}

/* ==========================================================
   ThetaWire v2.22.9 — Space TV Topics and two-source sidebar
   ========================================================== */

.space-tv-source-area{
  margin-top:14px;
}

.space-tv-active-sources{
  display:grid;
  gap:8px;
}

.space-tv-source-check{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  min-height:32px;
  color:#ddd6e2;
  font-size:13px;
  cursor:pointer;
}

.space-tv-source-check input,
.space-topics-choice input{
  width:17px;
  height:17px;
  accent-color:#9e6be1;
}

.space-tv-topics-link{
  display:inline-flex;
  width:auto;
  margin:8px 0 0 auto;
  padding:0;
  border:0;
  background:transparent;
  color:#b997e4;
  font-size:12px;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
}

.space-topics-panel{
  overflow:hidden;
  margin-bottom:28px;
  border:1px solid #3b3245;
  border-radius:11px;
  background:#0b0a0d;
}

.space-topics-panel[hidden]{
  display:none!important;
}

.space-topics-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding:24px 26px;
  border-bottom:1px solid #2e2933;
}

.space-topics-header>div>span{
  display:block;
  color:#a36af2;
  font-size:13px;
  font-weight:600;
  letter-spacing:.15em;
}

.space-topics-header h1{
  margin:8px 0 5px;
  color:#f4eff7;
  font-size:clamp(28px,3vw,40px);
  line-height:1.15;
}

.space-topics-header p{
  margin:0;
  color:#aaa3b0;
  font-size:15px;
}

.space-topics-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border:1px solid #51465c;
  border-radius:7px;
  background:#151219;
  color:#eee8f2;
  cursor:pointer;
}

.space-topics-close svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

.space-topics-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  padding:24px 26px;
}

.space-topics-group{
  padding:18px;
  border:1px solid #302a36;
  border-radius:8px;
  background:#100e13;
}

.space-topics-group h2{
  margin:0 0 14px;
  color:#e8e1ec;
  font-size:18px;
}

.space-topics-choices{
  display:grid;
  gap:10px;
}

.space-topics-choice{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:10px 12px;
  border:1px solid #302a36;
  border-radius:7px;
  background:#151219;
  color:#ddd6e2;
  cursor:pointer;
}

.space-topics-choice small{
  grid-column:2;
  color:#817986;
  font-size:11px;
}

.space-topics-choice:has(input:disabled){
  opacity:.55;
  cursor:not-allowed;
}

.space-topics-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 26px;
  border-top:1px solid #2e2933;
}

.space-topics-footer>span{
  color:#9e96a3;
  font-size:13px;
}

@media(max-width:700px){
  .space-topics-header{
    align-items:stretch;
    flex-direction:column;
    padding:20px;
  }

  .space-topics-close{
    width:100%;
  }

  .space-topics-groups{
    grid-template-columns:1fr;
    padding:18px;
  }

  .space-topics-footer{
    align-items:stretch;
    flex-direction:column;
    padding:18px;
  }

  .space-topics-footer .btn{
    width:100%;
  }
}

/* ==========================================================
   ThetaWire v2.22.9a — Compact 10-topic selector
   ========================================================== */

.space-tv-source-area{
  margin-top:14px!important;
}

.space-tv-topics-summary{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:8px!important;
}

.space-tv-topics-summary>span{
  color:#c8c0cd!important;
  font-size:13px!important;
  font-weight:600!important;
}

.space-tv-topics-summary .space-tv-topics-link{
  display:inline-flex!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#b997e4!important;
  font-size:12px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  cursor:pointer!important;
}

.space-tv-active-topic-field{
  display:block!important;
  margin:0!important;
}

.space-tv-panel .space-tv-active-topic-field select.control{
  height:42px!important;
  min-height:42px!important;
  padding:0 40px 0 12px!important;
  border:1px solid #37313d!important;
  border-radius:7px!important;
  background:#0f0e12!important;
  color:#d9d2de!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:42px!important;
  cursor:pointer!important;
}

.space-tv-panel .space-tv-active-topic-field select.control:focus{
  border-color:#76549a!important;
  box-shadow:0 0 0 3px rgba(118,84,154,.13)!important;
}

/* The selected-video details card was removed in v2.22.9a. */
.space-tv-selected-details{
  display:none!important;
}

/* Retire the old vertically stacked source-checkbox layout. */
.space-tv-active-sources,
.space-tv-source-check{
  display:none!important;
}

/* ==========================================================
   ThetaWire v2.23.0 — Full-screen fluid public layout
   Uses the complete browser canvas on desktop and large displays
   while retaining compact responsive spacing on smaller screens.
   ========================================================== */

:root{
  --dl-public-edge:clamp(18px,2.2vw,56px);
  --dl-public-sidebar-fluid:clamp(220px,15vw,300px);
  --dl-public-gap-fluid:clamp(20px,2vw,44px);
}

html,
body.public-site{
  width:100%;
  min-width:0;
  min-height:100%;
}

body.public-site{
  overflow-x:hidden;
}

.public-topbar{
  width:100%;
  padding-left:var(--dl-public-edge);
  padding-right:var(--dl-public-edge);
}

.public-hero{
  width:100%;
  min-height:clamp(260px,32vh,520px);
  height:clamp(300px,34vw,520px);
}

.public-page-layout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:var(--dl-public-edge)!important;
  padding-right:var(--dl-public-edge)!important;
  grid-template-columns:minmax(0,1fr) var(--dl-public-sidebar-fluid)!important;
  gap:var(--dl-public-gap-fluid)!important;
}

.public-page-layout>.public-side-menu{
  width:100%!important;
  max-width:none!important;
}

.public-page-main,
.public-page-main>.public-main,
.public-page-main>.public-search-shell,
.public-page-main>.public-inline-reader,
.public-page-main>.public-previous,
.public-content-column{
  width:100%!important;
  max-width:none!important;
}

.public-main,
.public-previous,
.public-category-layout,
.public-search-shell{
  max-width:none!important;
}

.public-page-main>.public-previous{
  padding-left:0!important;
  padding-right:0!important;
}

.public-article-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));
}

.public-footer,
body.public-search-open .public-footer{
  width:100%!important;
  max-width:none!important;
  padding-left:var(--dl-public-edge)!important;
  padding-right:var(--dl-public-edge)!important;
}

@media (min-width:1600px){
  .public-page-main>.public-categories{
    grid-template-columns:repeat(6,minmax(120px,1fr))!important;
  }

  .public-post-body{
    grid-template-columns:minmax(320px,30%) minmax(0,70%);
  }

  .public-post-copy>p{
    max-width:46ch;
  }
}

@media (max-width:899px){
  :root{
    --dl-public-edge:18px;
  }

  .public-page-layout{
    display:block!important;
  }

  .public-hero{
    min-height:220px;
    height:clamp(220px,48vw,360px);
  }
}

@media (max-width:639px){
  :root{
    --dl-public-edge:12px;
  }

  .public-topbar{
    padding-left:12px;
    padding-right:12px;
  }

  .public-hero{
    min-height:180px;
    height:clamp(180px,56vw,290px);
  }
}

/* ==========================================================
   ThetaWire 5.4a — Phone-only header logo spacing fix v2
   Scope: phones only (639px and below).
   Desktop and tablet layouts are intentionally unchanged.
   ========================================================== */
@media (max-width:639px){
  body.public-site .public-topbar{
    min-height:58px!important;
    height:58px!important;
    padding:4px 12px!important;
    gap:10px!important;
  }

  body.public-site .public-topbar .public-brand{
    height:50px!important;
    display:flex!important;
    align-items:center!important;
    overflow:visible!important;
  }

  body.public-site .public-topbar .public-brand picture{
    display:flex!important;
    align-items:center!important;
    width:min(238px,64vw)!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    line-height:0!important;
  }

  body.public-site .public-topbar .public-brand picture img{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  body.public-site .public-mobile-menu-button{
    width:48px!important;
    min-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    margin:0!important;
  }
}


/* ==========================================================
   ThetaWire 5.4b — Mobile hero logo sizing and spacing
   Phones only. Desktop and tablet remain unchanged.
   ========================================================== */
@media (max-width:639px){
  body.public-site .public-hero{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:6px 0 8px!important;
    overflow:hidden!important;
    line-height:0!important;
    background:#020203!important;
  }

  body.public-site .public-hero img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  body.public-site .public-page-layout{
    margin-top:0!important;
  }

  body.public-site .public-page-main > .public-categories{
    margin-top:0!important;
    padding-top:14px!important;
  }
}

/* ==========================================================
   ThetaWire 5.5 — Site-wide public search
   Mixed results: Blog + Gallery + Space TV.
   This block is intentionally isolated from article/gallery layouts.
   ========================================================== */
.public-site-search-results{
  display:grid;
  gap:22px;
}

.site-search-group{
  display:grid;
  gap:10px;
}

.site-search-group-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  padding:0 2px 8px;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.site-search-group-head div{
  display:grid;
  gap:2px;
}

.site-search-group-head span{
  font-size:.72rem;
  letter-spacing:.16em;
  color:#8f9dad;
}

.site-search-group-head h3{
  margin:0;
  font-size:1.05rem;
  font-weight:600;
}

.site-search-group-head strong{
  font-size:.78rem;
  font-weight:500;
  color:#9ca9b7;
}

.site-search-list{
  display:grid;
  gap:8px;
}

.site-search-result{
  display:grid;
  grid-template-columns:86px minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(8,11,16,.72);
  text-decoration:none;
  color:inherit;
  transition:border-color .18s ease,background .18s ease;
}

.site-search-result:hover,
.site-search-result:focus-visible{
  border-color:rgba(255,255,255,.28);
  background:rgba(14,18,25,.92);
}

.site-search-type{
  font-size:.66rem;
  letter-spacing:.13em;
  color:#93a4b5;
}

.site-search-result>div{
  min-width:0;
  display:grid;
  gap:4px;
}

.site-search-result h4{
  margin:0;
  font-size:.98rem;
  font-weight:600;
}

.site-search-result p{
  margin:0;
  color:#b5bec8;
  font-size:.86rem;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.site-search-result small{
  color:#7f8c99;
  font-size:.76rem;
}

.site-search-open{
  white-space:nowrap;
  font-size:.78rem;
  color:#c9d2dc;
}

@media (max-width:639px){
  .site-search-group-head{
    align-items:start;
  }

  .site-search-result{
    grid-template-columns:1fr auto;
    gap:8px 12px;
    padding:12px;
  }

  .site-search-type{
    grid-column:1 / -1;
  }

  .site-search-open{
    align-self:center;
  }
}


/* ThetaWire Production v1.1 — cinematic hero slideshow */
body.public-site .public-hero.public-hero-slideshow{
  position:relative;
  height:auto;
  aspect-ratio:1946/698;
  min-height:0;
  overflow:hidden;
  isolation:isolate;
  background:#000103;
  border-bottom:1px solid #242329;
  outline:none;
}
body.public-site .public-hero-stage{
  position:absolute;
  inset:0;
  overflow:hidden;
}
body.public-site .public-hero-slideshow .public-hero-slide{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  opacity:0;
  visibility:visible!important;
  transform:translate3d(0,0,0);
  transition:none!important;
  animation:none!important;
  z-index:0;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  will-change:transform,opacity;
  pointer-events:none;
}
body.public-site .public-hero-slideshow .public-hero-slide.is-active{
  opacity:1;
  z-index:2;
}
body.public-site .public-hero-slideshow .public-hero-slide.is-active.is-under{
  opacity:1;
  z-index:1;
}
body.public-site .public-hero-slideshow .public-hero-slide.is-active.is-moving{
  opacity:1;
  z-index:3;
}
body.public-site .public-hero-pagination{
  position:absolute;
  left:50%;
  bottom:14px;
  z-index:8;
  display:flex;
  align-items:center;
  gap:7px;
  padding:5px 8px;
  transform:translateX(-50%);
  border:1px solid rgba(91,170,235,.24);
  border-radius:999px;
  background:rgba(0,7,14,.48);
  box-shadow:0 8px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:.92;
  transition:opacity .25s ease,background .25s ease;
}
body.public-site .public-hero-pagination.is-idle{opacity:.48}
body.public-site .public-hero-pagination:hover,
body.public-site .public-hero-pagination:focus-within{opacity:1;background:rgba(0,8,16,.70)}
body.public-site .public-hero-arrow{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  color:rgba(240,249,255,.85);
  font:300 25px/1 Arial,sans-serif;
  cursor:pointer;
}
body.public-site .public-hero-arrow:hover,
body.public-site .public-hero-arrow:focus-visible{color:#67c5ff;background:rgba(46,153,230,.14);outline:none}
body.public-site .public-hero-dots{display:flex;align-items:center;gap:6px}
body.public-site .public-hero-dot{
  width:17px;
  height:17px;
  display:grid;
  place-items:center;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
body.public-site .public-hero-dot span{
  width:5px;
  height:5px;
  display:block;
  border-radius:999px;
  background:rgba(235,247,255,.46);
  transition:width .2s ease,background .2s ease;
}
body.public-site .public-hero-dot.is-active span{
  width:17px;
  background:linear-gradient(90deg,#2fa6ff,#7bd0ff);
}
body.public-site .public-hero-dot:focus-visible{outline:1px solid #39a8ff;outline-offset:1px;border-radius:50%}

@media(max-width:899px){
  body.public-site .public-hero.public-hero-slideshow{height:auto;min-height:0;aspect-ratio:1946/698}
  body.public-site .public-hero-slideshow .public-hero-slide{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;margin:0!important}
}
@media(max-width:639px){
  body.public-site .public-hero.public-hero-slideshow{height:auto;min-height:0;aspect-ratio:16/7}
  body.public-site .public-hero-slideshow .public-hero-slide{object-fit:cover!important;object-position:50% 50%!important}
  body.public-site .public-hero-pagination{bottom:9px;padding:4px 6px;gap:5px}
  body.public-site .public-hero-arrow{width:28px;height:28px;font-size:21px}
}
@media(prefers-reduced-motion:reduce){
  body.public-site .public-hero-slideshow .public-hero-slide,
  body.public-site .public-hero-pagination{transition:none!important;animation:none!important}
}

/* ==========================================================
   ThetaWire Production v1.3 — identity categories + dual themes
   - Top navigation structure is unchanged; only the logo asset changes.
   - Six publication categories use the approved ThetaWire art family.
   - Independent NAV and BLOG theme switches live above Space TV.
   ========================================================== */

/* Proper ThetaWire wordmark in the existing top-nav slot. */
.public-topbar .public-brand img{
  width:min(330px,34vw)!important;
  height:46px!important;
  object-fit:contain!important;
  object-position:left center!important;
}

/* Six-icon publication row. */
.public-page-main > .public-categories{
  grid-template-columns:repeat(6,minmax(112px,1fr))!important;
  gap:16px!important;
}
.public-page-main > .public-categories .public-category{
  gap:7px!important;
  font-weight:650!important;
  letter-spacing:.04em!important;
}
.public-category-picture{
  width:clamp(112px,9.3vw,170px)!important;
  height:clamp(86px,6.9vw,126px)!important;
  margin:0 auto 8px!important;
  overflow:hidden!important;
}
.public-category-art{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* Appearance panel: exactly above Space TV in the right rail. */
.thetawire-appearance-panel{
  width:100%;
  margin:0 0 16px;
  padding:13px;
  border:1px solid #29242f;
  border-radius:8px;
  background:#0d0c10;
}
.public-side-menu .thetawire-appearance-panel h2{
  margin:0 0 11px!important;
  color:#d8d2df!important;
  font-size:12px!important;
  font-weight:750!important;
  letter-spacing:.12em!important;
}
.public-side-menu .thetawire-appearance-panel h2::after{display:none!important;}
.thetawire-theme-control{
  display:grid;
  grid-template-columns:52px 1fr;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:6px 0;
  border-top:1px solid #211e25;
}
.thetawire-theme-control>span{
  color:#aaa3b2;
  font-size:11px;
  font-weight:750;
  letter-spacing:.1em;
}
.thetawire-theme-toggle{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:6px 10px;
  border:1px solid #39323f;
  border-radius:7px;
  background:#151219;
  color:#f2edf5;
  cursor:pointer;
  font:inherit;
}
.thetawire-theme-toggle:hover,
.thetawire-theme-toggle:focus-visible{
  border-color:#168bd5;
  outline:none;
}
.thetawire-theme-toggle strong{
  font-size:11px;
  letter-spacing:.08em;
}
.thetawire-theme-glyph{
  width:18px;
  font-size:16px;
  line-height:1;
}

/* ---------------- NAV light mode ---------------- */
body.public-site[data-nav-theme="light"] .public-topbar{
  background:#ffffff!important;
  border-bottom-color:#d7dde5!important;
  color:#171c23!important;
  box-shadow:0 1px 0 rgba(0,0,0,.035);
}
body.public-site[data-nav-theme="light"] .public-topnav a{
  color:#242a31!important;
}
body.public-site[data-nav-theme="light"] .public-topnav a:hover,
body.public-site[data-nav-theme="light"] .public-topnav a.active{
  color:#087fc4!important;
}
body.public-site[data-nav-theme="light"] .public-topnav a.active::after{
  background:#0b9de8!important;
}
body.public-site[data-nav-theme="light"] .public-nav-datetime{
  color:#4f5965!important;
}
body.public-site[data-nav-theme="light"] .public-mobile-menu-button{
  background:#f7f9fb!important;
  border-color:#cfd7df!important;
  color:#1e2730!important;
}

/* ---------------- BLOG light mode ---------------- */
body.public-site[data-blog-theme="light"]{
  background:#f5f7fa!important;
  color:#161b21!important;
}
body.public-site[data-blog-theme="light"] .public-hero{
  background:#020203!important;
}
body.public-site[data-blog-theme="light"] .public-page-layout,
body.public-site[data-blog-theme="light"] .public-previous,
body.public-site[data-blog-theme="light"] .public-footer{
  color:#161b21!important;
}
body.public-site[data-blog-theme="light"] .public-category{
  color:#222a33!important;
}
body.public-site[data-blog-theme="light"] .public-category:hover,
body.public-site[data-blog-theme="light"] .public-category.active,
body.public-site[data-blog-theme="light"] .public-category.active-all{
  color:#087fc4!important;
}
body.public-site[data-blog-theme="light"] .public-feature-post,
body.public-site[data-blog-theme="light"] .public-article-card,
body.public-site[data-blog-theme="light"] .public-full-article,
body.public-site[data-blog-theme="light"] .public-empty-posts,
body.public-site[data-blog-theme="light"] .public-search-panel,
body.public-site[data-blog-theme="light"] .public-search-results{
  background:#ffffff!important;
  border-color:#d9dfe6!important;
  color:#151a20!important;
  box-shadow:0 5px 20px rgba(25,39,52,.045);
}
body.public-site[data-blog-theme="light"] .public-post-header time,
body.public-site[data-blog-theme="light"] .public-post-heading h1,
body.public-site[data-blog-theme="light"] .public-card-details h3,
body.public-site[data-blog-theme="light"] .public-article-content,
body.public-site[data-blog-theme="light"] .public-full-article,
body.public-site[data-blog-theme="light"] .public-side-menu,
body.public-site[data-blog-theme="light"] .public-side-menu a{
  color:#171c22!important;
}
body.public-site[data-blog-theme="light"] .public-post-copy>p,
body.public-site[data-blog-theme="light"] .public-post-summary,
body.public-site[data-blog-theme="light"] .public-card-meta,
body.public-site[data-blog-theme="light"] .public-full-article>header>div,
body.public-site[data-blog-theme="light"] .public-article-lead{
  color:#56616d!important;
}
body.public-site[data-blog-theme="light"] .public-card-category,
body.public-site[data-blog-theme="light"] .public-post-category,
body.public-site[data-blog-theme="light"] .public-previous>header h2,
body.public-site[data-blog-theme="light"] .public-previous>header a,
body.public-site[data-blog-theme="light"] .public-side-menu h2{
  color:#087fc4!important;
}
body.public-site[data-blog-theme="light"] .public-side-menu h2::after{
  background:#0b9de8!important;
}
body.public-site[data-blog-theme="light"] .public-side-menu a{
  border-bottom-color:#dce2e8!important;
}
body.public-site[data-blog-theme="light"] .public-read-button,
body.public-site[data-blog-theme="light"] .public-card-read{
  border-color:#188dca!important;
  color:#087fc4!important;
  background:#fff!important;
}
body.public-site[data-blog-theme="light"] .public-read-button:hover,
body.public-site[data-blog-theme="light"] .public-card-read:hover{
  background:#eef8fd!important;
}
body.public-site[data-blog-theme="light"] .public-card-image,
body.public-site[data-blog-theme="light"] .public-post-media{
  background:#edf2f6!important;
}
body.public-site[data-blog-theme="light"] .public-pagination,
body.public-site[data-blog-theme="light"] .public-article-tags{
  border-color:#dce2e8!important;
}
body.public-site[data-blog-theme="light"] .public-pagination nav a{
  border-color:#cfd8e2!important;
  background:#fff!important;
  color:#27313a!important;
}
body.public-site[data-blog-theme="light"] .public-pagination nav a.active{
  border-color:#0b91d4!important;
  background:#0b91d4!important;
  color:#fff!important;
}

/* Sidebar modules participate in BLOG theme, including Appearance and Space TV. */
body.public-site[data-blog-theme="light"] .thetawire-appearance-panel,
body.public-site[data-blog-theme="light"] .space-tv-panel,
body.public-site[data-blog-theme="light"] .public-inline-login{
  background:#ffffff!important;
  border-color:#d7dfe7!important;
  color:#17202a!important;
  box-shadow:0 4px 16px rgba(25,39,52,.04);
}
body.public-site[data-blog-theme="light"] .public-side-menu .thetawire-appearance-panel h2,
body.public-site[data-blog-theme="light"] .space-tv-panel header strong,
body.public-site[data-blog-theme="light"] .space-tv-event,
body.public-site[data-blog-theme="light"] .public-inline-login label span{
  color:#26313c!important;
}
body.public-site[data-blog-theme="light"] .thetawire-theme-control{
  border-top-color:#dce2e8!important;
}
body.public-site[data-blog-theme="light"] .thetawire-theme-control>span,
body.public-site[data-blog-theme="light"] .space-tv-provider,
body.public-site[data-blog-theme="light"] .space-tv-offline{
  color:#66727e!important;
}
body.public-site[data-blog-theme="light"] .thetawire-theme-toggle,
body.public-site[data-blog-theme="light"] .space-tv-actions button,
body.public-site[data-blog-theme="light"] .space-tv-actions a,
body.public-site[data-blog-theme="light"] .space-tv-panel select.control,
body.public-site[data-blog-theme="light"] .public-inline-login input{
  background:#f7f9fb!important;
  border-color:#cfd7df!important;
  color:#18212a!important;
}
body.public-site[data-blog-theme="light"] .space-tv-channel-switch,
body.public-site[data-blog-theme="light"] .space-tv-idle,
body.public-site[data-blog-theme="light"] .space-tv-playing,
body.public-site[data-blog-theme="light"] .space-tv-empty-library{
  border-color:#d9e0e7!important;
  background:#f8fafc!important;
  color:#1a232c!important;
}
body.public-site[data-blog-theme="light"] .public-footer{
  border-top-color:#dce2e8!important;
  color:#65717d!important;
}

@media(max-width:899px){
  .public-topbar .public-brand img{
    width:min(250px,58vw)!important;
    height:auto!important;
  }
  .public-page-main > .public-categories{
    grid-template-columns:repeat(3,minmax(96px,1fr))!important;
  }
  .public-category-picture{
    width:116px!important;
    height:86px!important;
  }
  .thetawire-appearance-panel{
    margin-top:0;
  }
}

@media(max-width:560px){
  .public-page-main > .public-categories{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .public-category-picture{
    width:122px!important;
    height:90px!important;
  }
}

/* ================================================================
   THETAWIRE v1.4 — transparent category artwork + true light reading
   ================================================================ */
.public-category-picture{
  overflow:visible!important;
  background:transparent!important;
}
.public-category-art{
  display:block;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  background:transparent!important;
  transform:translateY(0) scale(1);
  transform-origin:center bottom;
  transition:transform .22s ease, filter .22s ease, opacity .22s ease;
  filter:drop-shadow(0 8px 12px rgba(0,113,190,.18));
}
.public-category:hover .public-category-art,
.public-category:focus-visible .public-category-art,
.public-category.active .public-category-art{
  transform:translateY(-5px) scale(1.07);
  filter:drop-shadow(0 10px 18px rgba(0,174,255,.52));
}
body.public-site[data-blog-theme="light"] .public-category-art{
  filter:drop-shadow(0 8px 12px rgba(0,93,155,.20));
}
body.public-site[data-blog-theme="light"] .public-category:hover .public-category-art,
body.public-site[data-blog-theme="light"] .public-category:focus-visible .public-category-art,
body.public-site[data-blog-theme="light"] .public-category.active .public-category-art{
  filter:drop-shadow(0 10px 18px rgba(0,132,214,.42));
}

/* BLOG light mode: dark readable type on the light surface. */
body.public-site[data-blog-theme="light"] .public-page-main,
body.public-site[data-blog-theme="light"] .public-page-main main,
body.public-site[data-blog-theme="light"] .public-page-main aside,
body.public-site[data-blog-theme="light"] .public-page-main section,
body.public-site[data-blog-theme="light"] .public-page-main article{
  color:#111820!important;
}
body.public-site[data-blog-theme="light"] .public-page-main h1,
body.public-site[data-blog-theme="light"] .public-page-main h2,
body.public-site[data-blog-theme="light"] .public-page-main h3,
body.public-site[data-blog-theme="light"] .public-page-main h4,
body.public-site[data-blog-theme="light"] .public-page-main h5,
body.public-site[data-blog-theme="light"] .public-page-main h6,
body.public-site[data-blog-theme="light"] .public-page-main p,
body.public-site[data-blog-theme="light"] .public-page-main li,
body.public-site[data-blog-theme="light"] .public-page-main dd,
body.public-site[data-blog-theme="light"] .public-page-main dt,
body.public-site[data-blog-theme="light"] .public-page-main time,
body.public-site[data-blog-theme="light"] .public-page-main label,
body.public-site[data-blog-theme="light"] .public-post-copy,
body.public-site[data-blog-theme="light"] .public-post-copy p,
body.public-site[data-blog-theme="light"] .public-article-content,
body.public-site[data-blog-theme="light"] .public-card-details,
body.public-site[data-blog-theme="light"] .public-card-details h3{
  color:#111820!important;
}
body.public-site[data-blog-theme="light"] .public-page-main small,
body.public-site[data-blog-theme="light"] .public-post-summary,
body.public-site[data-blog-theme="light"] .public-card-meta,
body.public-site[data-blog-theme="light"] .public-card-meta dt,
body.public-site[data-blog-theme="light"] .public-card-meta dd{
  color:#4c5966!important;
}
\n\n/* ==========================================================\n   ThetaWire Production v1.5 — simple transparent navigation icons\n   Large v1.4 category artwork remains under category-icons for blog/post use.\n   ========================================================== */\n.public-page-main > .public-categories .public-category-picture{width:clamp(72px,6.4vw,112px);height:clamp(72px,6.4vw,112px);margin:0 auto 8px}\n.public-page-main > .public-categories .public-category-art{object-fit:contain;background:transparent;filter:drop-shadow(0 0 5px rgba(0,174,255,.20)) drop-shadow(0 0 2px rgba(255,255,255,.08));transition:transform 180ms ease,filter 180ms ease,opacity 180ms ease}\n.public-page-main > .public-categories .public-category:hover .public-category-art,.public-page-main > .public-categories .public-category:focus-visible .public-category-art{transform:translateY(-4px) scale(1.10);filter:drop-shadow(0 0 8px rgba(0,190,255,.55)) drop-shadow(0 0 16px rgba(0,136,255,.34)) drop-shadow(0 0 3px rgba(255,255,255,.18))}\n.public-page-main > .public-categories .public-category.active .public-category-art{transform:translateY(-2px) scale(1.055);filter:drop-shadow(0 0 8px rgba(0,190,255,.48)) drop-shadow(0 0 14px rgba(0,136,255,.30))}\n@media(max-width:639px){.public-page-main > .public-categories .public-category-picture{width:76px;height:76px}}\n

/* ==========================================================
   ThetaWire Production v1.6
   Tighten the six-item navigation strip against the slideshow.
   ========================================================== */
.public-page-layout{
  margin-top:0;
}
.public-page-main > .public-categories{
  margin-top:-14px;
  padding-top:4px;
  padding-bottom:10px;
}
.public-page-main > .public-categories .public-category{
  padding-top:2px;
  padding-bottom:4px;
}
.public-page-main > .public-categories .public-category-picture{
  margin-bottom:2px;
}
@media(max-width:900px){
  .public-page-main > .public-categories{
    margin-top:-8px;
    padding-top:4px;
    padding-bottom:8px;
  }
}


/* ThetaWire Production v1.7 — slideshow direction control spacing */
#slideshow .slideshow-direction-field{gap:10px;}
#slideshow .slideshow-direction-select{min-height:46px;padding:0 42px 0 14px;line-height:1.35;}
#slideshow .slideshow-direction-field small{display:block;margin-top:2px;line-height:1.5;max-width:520px;}
@media(max-width:700px){#slideshow .slideshow-direction-select{width:100%;max-width:none;}}


/* ==========================================================
   ThetaWire Production v1.8
   Light-theme cleanup + admin banner + blog/footer artwork sizing
   ========================================================== */

/* NAV LIGHT */
html[data-nav-theme="light"] .site-header,
body.nav-theme-light .site-header{
  background:#ffffff !important;
  color:#101820 !important;
  border-bottom:1px solid rgba(16,24,32,.12) !important;
  box-shadow:0 4px 16px rgba(0,0,0,.06) !important;
}
html[data-nav-theme="light"] .site-header a,
html[data-nav-theme="light"] .site-header button,
html[data-nav-theme="light"] .site-header .nav-link,
body.nav-theme-light .site-header a,
body.nav-theme-light .site-header button,
body.nav-theme-light .site-header .nav-link{
  color:#101820 !important;
}
html[data-nav-theme="light"] .site-header a:hover,
html[data-nav-theme="light"] .site-header a:focus-visible,
body.nav-theme-light .site-header a:hover,
body.nav-theme-light .site-header a:focus-visible{
  color:#0087d8 !important;
}

/* BLOG LIGHT */
html[data-blog-theme="light"] body,
body.blog-theme-light{
  background:#f4f7fa !important;
  color:#111820 !important;
}
html[data-blog-theme="light"] .public-page-main,
html[data-blog-theme="light"] .article-card,
html[data-blog-theme="light"] .post-card,
html[data-blog-theme="light"] .sidebar-card,
html[data-blog-theme="light"] .public-sidebar,
html[data-blog-theme="light"] .appearance-panel,
html[data-blog-theme="light"] .live-events-card,
body.blog-theme-light .public-page-main,
body.blog-theme-light .article-card,
body.blog-theme-light .post-card,
body.blog-theme-light .sidebar-card,
body.blog-theme-light .public-sidebar,
body.blog-theme-light .appearance-panel,
body.blog-theme-light .live-events-card{
  background:#ffffff !important;
  color:#111820 !important;
  border-color:rgba(16,24,32,.12) !important;
}
html[data-blog-theme="light"] h1,
html[data-blog-theme="light"] h2,
html[data-blog-theme="light"] h3,
html[data-blog-theme="light"] h4,
html[data-blog-theme="light"] .article-title,
html[data-blog-theme="light"] .post-title,
html[data-blog-theme="light"] .sidebar-title,
html[data-blog-theme="light"] .category-title,
body.blog-theme-light h1,
body.blog-theme-light h2,
body.blog-theme-light h3,
body.blog-theme-light h4,
body.blog-theme-light .article-title,
body.blog-theme-light .post-title,
body.blog-theme-light .sidebar-title,
body.blog-theme-light .category-title{
  color:#0d141b !important;
}
html[data-blog-theme="light"] p,
html[data-blog-theme="light"] .article-body,
html[data-blog-theme="light"] .post-body,
html[data-blog-theme="light"] .meta,
html[data-blog-theme="light"] time,
html[data-blog-theme="light"] .byline,
html[data-blog-theme="light"] .sidebar-card,
html[data-blog-theme="light"] .live-events-card,
body.blog-theme-light p,
body.blog-theme-light .article-body,
body.blog-theme-light .post-body,
body.blog-theme-light .meta,
body.blog-theme-light time,
body.blog-theme-light .byline,
body.blog-theme-light .sidebar-card,
body.blog-theme-light .live-events-card{
  color:#2a333c !important;
}
html[data-blog-theme="light"] .muted,
html[data-blog-theme="light"] .subtle,
body.blog-theme-light .muted,
body.blog-theme-light .subtle{
  color:#5d6872 !important;
}
html[data-blog-theme="light"] a,
body.blog-theme-light a{
  color:#007fc8;
}

/* BLOG POST DETAILED ICONS */
.article-card img[src*="/assets/images/category-art/"],
.post-card img[src*="/assets/images/category-art/"],
.blog-card img[src*="/assets/images/category-art/"],
.article-category-art,
.post-category-art,
.blog-category-art{
  width:clamp(120px,11vw,165px) !important;
  height:clamp(120px,11vw,165px) !important;
  object-fit:contain !important;
  margin:4px 18px 12px 0 !important;
  padding:4px !important;
  background:transparent !important;
  filter:drop-shadow(0 0 10px rgba(0,155,255,.24));
}
@media(max-width:720px){
  .article-card img[src*="/assets/images/category-art/"],
  .post-card img[src*="/assets/images/category-art/"],
  .blog-card img[src*="/assets/images/category-art/"],
  .article-category-art,
  .post-category-art,
  .blog-category-art{
    width:104px !important;
    height:104px !important;
    margin:2px 12px 8px 0 !important;
  }
}

/* FOOTER CARD IMAGES — same detailed artwork, card-specific sizing */
.footer-card img[src*="/assets/images/category-art/"],
.footer-card-icon,
.footer-card-art{
  width:clamp(74px,7vw,98px) !important;
  height:clamp(74px,7vw,98px) !important;
  object-fit:contain !important;
  margin:0 auto 10px !important;
  padding:2px !important;
  background:transparent !important;
  filter:drop-shadow(0 0 8px rgba(0,155,255,.22));
}
.footer-card{
  padding-top:14px !important;
  padding-bottom:14px !important;
}

/* ADMIN BANNER */
.admin-header,
.admin-topbar,
.admin-banner{
  background:
    radial-gradient(circle at 18% 0%, rgba(0,170,255,.16), transparent 34%),
    linear-gradient(180deg,#0a1118 0%,#071019 100%) !important;
  color:#f8fbff !important;
  border-bottom:1px solid rgba(0,174,255,.28) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.28) !important;
}
.admin-header h1,
.admin-topbar h1,
.admin-banner h1,
.admin-header .brand,
.admin-topbar .brand,
.admin-banner .brand{
  color:#ffffff !important;
}
.admin-header a,
.admin-topbar a,
.admin-banner a{
  color:#ddecf7 !important;
}
.admin-header a:hover,
.admin-topbar a:hover,
.admin-banner a:hover{
  color:#21b8ff !important;
}


/* ==========================================================
   ThetaWire Production v1.9
   Admin topic management + top navigation + light/dark banner
   ========================================================== */

.admin-top-nav{
  display:flex;
  align-items:center;
  gap:22px;
}
.admin-theme-toggle{
  appearance:none;
  border:1px solid currentColor;
  border-radius:999px;
  background:transparent;
  color:inherit;
  padding:7px 13px;
  font:inherit;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  cursor:pointer;
}

.admin-brand-banner{
  min-height:128px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-bottom:1px solid rgba(0,174,255,.22);
  background:
    radial-gradient(circle at 50% 0%,rgba(0,179,255,.18),transparent 42%),
    linear-gradient(180deg,#07111a,#050b11);
}
.admin-brand-banner div{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:3px;
  letter-spacing:.22em;
}
.admin-brand-banner span{
  color:#f7fbff;
  font-size:clamp(1.5rem,3vw,2.4rem);
  font-weight:900;
}
.admin-brand-banner strong{
  color:#16aef5;
  font-size:.72rem;
  letter-spacing:.28em;
}

html[data-admin-theme="light"] body{
  background:#f4f7fa;
  color:#101820;
}
html[data-admin-theme="light"] .public-header{
  background:#fff !important;
  color:#101820 !important;
  border-bottom:1px solid rgba(16,24,32,.12) !important;
}
html[data-admin-theme="light"] .public-header a,
html[data-admin-theme="light"] .public-header button{
  color:#101820 !important;
}
html[data-admin-theme="light"] .public-header a:hover,
html[data-admin-theme="light"] .public-header button:hover{
  color:#007fc8 !important;
}
html[data-admin-theme="light"] .admin-brand-banner{
  background:
    radial-gradient(circle at 50% 0%,rgba(0,155,255,.13),transparent 42%),
    linear-gradient(180deg,#ffffff,#edf5fa);
  border-bottom-color:rgba(16,24,32,.10);
}
html[data-admin-theme="light"] .admin-brand-banner span{
  color:#101820;
}
html[data-admin-theme="light"] .admin-brand-banner strong{
  color:#007fc8;
}
html[data-admin-theme="light"] .admin-shell,
html[data-admin-theme="light"] .main,
html[data-admin-theme="light"] .content,
html[data-admin-theme="light"] .admin-card,
html[data-admin-theme="light"] .live-events-list,
html[data-admin-theme="light"] .live-events-editor,
html[data-admin-theme="light"] .live-event-admin-card,
html[data-admin-theme="light"] .topic-admin-row{
  color:#101820 !important;
}
html[data-admin-theme="light"] .admin-card,
html[data-admin-theme="light"] .live-events-list,
html[data-admin-theme="light"] .live-events-editor,
html[data-admin-theme="light"] .live-event-admin-card,
html[data-admin-theme="light"] .topic-admin-row{
  background:#fff !important;
  border-color:rgba(16,24,32,.12) !important;
}
html[data-admin-theme="light"] .control{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.22) !important;
}
html[data-admin-theme="light"] .control::placeholder{
  color:#78828c !important;
}
html[data-admin-theme="light"] .page-head p,
html[data-admin-theme="light"] .admin-card p,
html[data-admin-theme="light"] small,
html[data-admin-theme="light"] label span{
  color:#46515b !important;
}

.live-events-topic-admin{
  margin:0 0 24px;
  padding:20px;
  border:1px solid rgba(0,174,255,.18);
  border-radius:16px;
  background:rgba(7,17,26,.72);
}
.admin-card-head{
  margin-bottom:16px;
}
.topic-add-form{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
  margin-bottom:18px;
}
.topic-add-form label,
.topic-edit-form label{
  display:grid;
  gap:6px;
}
.topic-admin-list{
  display:grid;
  gap:10px;
}
.topic-admin-row{
  display:flex;
  gap:12px;
  align-items:end;
  padding:12px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}
.topic-admin-row.is-disabled{
  opacity:.62;
}
.topic-edit-form{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;
  gap:10px;
  align-items:end;
  flex:1 1 auto;
}
.btn-danger{
  border-color:rgba(225,74,74,.5) !important;
  color:#ff9696 !important;
}
.btn-danger:hover{
  background:rgba(225,74,74,.12) !important;
}

/* Public Live Events TV light-mode popup + controls */
html[data-blog-theme="light"] .space-topics-panel,
body.blog-theme-light .space-topics-panel{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.12) !important;
}
html[data-blog-theme="light"] .space-topics-header h1,
html[data-blog-theme="light"] .space-topics-group h2,
html[data-blog-theme="light"] .space-topics-choice span,
html[data-blog-theme="light"] .space-topics-footer,
body.blog-theme-light .space-topics-header h1,
body.blog-theme-light .space-topics-group h2,
body.blog-theme-light .space-topics-choice span,
body.blog-theme-light .space-topics-footer{
  color:#101820 !important;
}
html[data-blog-theme="light"] .space-topics-header p,
html[data-blog-theme="light"] .space-topics-choice small,
body.blog-theme-light .space-topics-header p,
body.blog-theme-light .space-topics-choice small{
  color:#5b6670 !important;
}
html[data-blog-theme="light"] .space-topics-choice,
body.blog-theme-light .space-topics-choice{
  background:#f7fafc !important;
  border-color:rgba(16,24,32,.12) !important;
}
html[data-blog-theme="light"] .space-topics-close,
body.blog-theme-light .space-topics-close{
  background:#eef4f8 !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.14) !important;
}
html[data-blog-theme="light"] .space-tv-topics-link,
body.blog-theme-light .space-tv-topics-link{
  color:#007fc8 !important;
}
html[data-blog-theme="light"] .space-tv-select-shell .control,
body.blog-theme-light .space-tv-select-shell .control{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.2) !important;
}
html[data-blog-theme="light"] .space-tv-channel-switch strong,
body.blog-theme-light .space-tv-channel-switch strong{
  color:#007fc8 !important;
}

@media(max-width:820px){
  .topic-add-form,
  .topic-edit-form{
    grid-template-columns:1fr;
  }
  .topic-admin-row{
    align-items:stretch;
    flex-direction:column;
  }
  .admin-top-nav{
    gap:12px;
  }
}


/* ==========================================================
   ThetaWire Production v1.9.1
   Admin identity icon + top navigation polish
   ========================================================== */

.admin-nav-home{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  font-weight:900 !important;
  letter-spacing:.08em;
}
.admin-nav-home img{
  width:22px;
  height:22px;
  object-fit:contain;
  flex:0 0 auto;
}

.admin-brand-banner .admin-brand-mark{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:18px;
}
.admin-brand-banner .admin-brand-mark>img{
  width:58px;
  height:58px;
  object-fit:contain;
  filter:drop-shadow(0 0 12px rgba(19,174,245,.22));
}
.admin-brand-banner .admin-brand-mark>div{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  letter-spacing:.22em;
}

.auth-admin-icon{
  display:block;
  width:54px;
  height:54px;
  margin:8px auto 14px;
  object-fit:contain;
}

html[data-admin-theme="light"] .admin-nav-home img,
html[data-admin-theme="light"] .admin-brand-banner .admin-brand-mark>img,
html[data-admin-theme="light"] .auth-admin-icon{
  filter:none;
}

@media(max-width:760px){
  .admin-nav-home span{
    display:none;
  }
  .admin-nav-home img{
    width:24px;
    height:24px;
  }
  .admin-brand-banner .admin-brand-mark{
    gap:12px;
  }
  .admin-brand-banner .admin-brand-mark>img{
    width:46px;
    height:46px;
  }
}


/* ==========================================================
   ThetaWire Production v1.9.2 cumulative corrections
   ========================================================== */
.auth-theme-toggle{
  position:fixed;
  top:18px;
  right:18px;
  z-index:30;
}
html[data-admin-theme="light"] .auth-page{
  background:#f4f7fa !important;
  color:#101820 !important;
}
html[data-admin-theme="light"] .auth-card{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.14) !important;
  box-shadow:0 18px 60px rgba(16,24,32,.10) !important;
}
html[data-admin-theme="light"] .auth-card h1,
html[data-admin-theme="light"] .auth-card label{
  color:#101820 !important;
}
html[data-admin-theme="light"] .auth-card p,
html[data-admin-theme="light"] .auth-note{
  color:#56616b !important;
}
html[data-admin-theme="light"] .auth-card input{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.22) !important;
}
.live-events-topic-admin .topic-state-form{
  flex:0 0 auto;
}
@media(max-width:640px){
  .auth-theme-toggle{
    top:10px;
    right:10px;
  }
}


/* ==========================================================
   ThetaWire Production v1.9.3
   DEFAULT THEME = WHITE / LIGHT
   ========================================================== */

/* First-load public defaults. Saved DARK preferences still override below. */
html:not([data-nav-theme="dark"]) .public-header{
  background:#fff !important;
  color:#101820 !important;
  border-bottom-color:rgba(16,24,32,.12) !important;
}
html:not([data-nav-theme="dark"]) .public-header a,
html:not([data-nav-theme="dark"]) .public-header button{
  color:#101820 !important;
}
html:not([data-nav-theme="dark"]) .public-header a:hover,
html:not([data-nav-theme="dark"]) .public-header button:hover{
  color:#007fc8 !important;
}

html:not([data-blog-theme="dark"]) body{
  background:#f4f7fa;
  color:#101820;
}
html:not([data-blog-theme="dark"]) .article-card,
html:not([data-blog-theme="dark"]) .sidebar-card,
html:not([data-blog-theme="dark"]) .space-tv-panel,
html:not([data-blog-theme="dark"]) .space-topics-panel{
  background:#fff !important;
  color:#101820 !important;
  border-color:rgba(16,24,32,.12) !important;
}

/* Explicit dark selections always win. */
html[data-nav-theme="dark"] .public-header{
  background:#050b11 !important;
  color:#f7fbff !important;
}
html[data-nav-theme="dark"] .public-header a,
html[data-nav-theme="dark"] .public-header button{
  color:#f7fbff !important;
}

/* Admin first-load default is also light. */
html:not([data-admin-theme="dark"]) .admin-brand-banner{
  background:
    radial-gradient(circle at 50% 0%,rgba(0,155,255,.13),transparent 42%),
    linear-gradient(180deg,#fff,#edf5fa);
}
html:not([data-admin-theme="dark"]) .admin-brand-banner span{
  color:#101820;
}


/* ==========================================================
   ThetaWire Production v1.9.4
   ACTUAL admin dashboard + Manage Topics light-mode correction
   ========================================================== */

/* Actual admin top navigation */
.admin-dashboard-topnav{
  display:flex!important;
  align-items:center;
  gap:22px;
}
.admin-dashboard-topnav .admin-topnav-admin{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.admin-dashboard-topnav .admin-topnav-admin img{
  width:20px;
  height:20px;
}
.admin-dashboard-topnav .admin-theme-toggle{
  min-height:34px;
  padding:6px 12px;
}

/* Actual dashboard banner replacing the old black-hole/DarkLow hero */
.admin-dashboard-banner{
  min-height:128px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:22px 30px;
  border-bottom:1px solid rgba(16,174,245,.22);
  background:
    radial-gradient(circle at 50% 0%,rgba(16,174,245,.20),transparent 45%),
    linear-gradient(180deg,#07131c,#050b10);
}
.admin-dashboard-banner>img{
  width:64px;
  height:64px;
  filter:drop-shadow(0 0 14px rgba(16,174,245,.25));
}
.admin-dashboard-banner>div{
  display:grid;
  gap:3px;
}
.admin-dashboard-banner strong{
  color:#f8fbfd;
  font-size:clamp(25px,3vw,38px);
  line-height:1;
  letter-spacing:.12em;
}
.admin-dashboard-banner span{
  color:#10aef5;
  font-size:12px;
  font-weight:800;
  letter-spacing:.28em;
}

/* ACTUAL admin shell light mode */
html[data-admin-theme="light"] body{
  background:#f4f7fa!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .admin-public-header{
  background:#fff!important;
  border-bottom-color:#dce3e9!important;
}
html[data-admin-theme="light"] .admin-public-header a,
html[data-admin-theme="light"] .admin-public-header button{
  color:#17202a!important;
}
html[data-admin-theme="light"] .admin-public-header a:hover,
html[data-admin-theme="light"] .admin-public-header button:hover{
  color:#0785c6!important;
}
html[data-admin-theme="light"] .admin-dashboard-banner{
  border-bottom-color:#dce3e9;
  background:
    radial-gradient(circle at 50% 0%,rgba(16,174,245,.13),transparent 45%),
    linear-gradient(180deg,#fff,#eef7fc);
}
html[data-admin-theme="light"] .admin-dashboard-banner strong{color:#17202a}
html[data-admin-theme="light"] .admin-dashboard-banner span{color:#0785c6}
html[data-admin-theme="light"] .admin-shell,
html[data-admin-theme="light"] .main,
html[data-admin-theme="light"] .content{
  background:#f4f7fa!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .page-head h1{color:#17202a!important}
html[data-admin-theme="light"] .btn-outline{
  background:#fff!important;
  border-color:#cbd6df!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .btn-primary{
  background:#078dcc!important;
  border-color:#078dcc!important;
  color:#fff!important;
}

/* PUBLIC: body carries data-blog-theme, so target the real DOM directly. */
body.public-site[data-blog-theme="light"] .space-topics-panel{
  background:#fff!important;
  border-color:#d5dee6!important;
  color:#17202a!important;
}
body.public-site[data-blog-theme="light"] .space-topics-header,
body.public-site[data-blog-theme="light"] .space-topics-footer{
  border-color:#dce3e9!important;
}
body.public-site[data-blog-theme="light"] .space-topics-header>div>span{
  color:#078dcc!important;
}
body.public-site[data-blog-theme="light"] .space-topics-header h1,
body.public-site[data-blog-theme="light"] .space-topics-group h2,
body.public-site[data-blog-theme="light"] .space-topics-choice{
  color:#17202a!important;
}
body.public-site[data-blog-theme="light"] .space-topics-header p,
body.public-site[data-blog-theme="light"] .space-topics-footer>span,
body.public-site[data-blog-theme="light"] .space-topics-choice small{
  color:#66727e!important;
}
body.public-site[data-blog-theme="light"] .space-topics-group{
  background:#f7fafc!important;
  border-color:#d8e1e8!important;
}
body.public-site[data-blog-theme="light"] .space-topics-choice{
  background:#fff!important;
  border-color:#cfd9e1!important;
}
body.public-site[data-blog-theme="light"] .space-topics-choice input{
  accent-color:#078dcc!important;
}
body.public-site[data-blog-theme="light"] .space-topics-close{
  background:#fff!important;
  border-color:#cbd6df!important;
  color:#17202a!important;
  box-shadow:none!important;
}
body.public-site[data-blog-theme="light"] [data-space-topics-save]{
  background:#078dcc!important;
  border-color:#078dcc!important;
  color:#fff!important;
}

/* Public Live Events TV: remove purple/black remnants in BLOG light */
body.public-site[data-blog-theme="light"] .space-tv-panel{
  background:#fff!important;
  border-color:#d5dee6!important;
  color:#17202a!important;
}
body.public-site[data-blog-theme="light"] .space-tv-channel-switch,
body.public-site[data-blog-theme="light"] .space-tv-idle,
body.public-site[data-blog-theme="light"] .space-tv-playing,
body.public-site[data-blog-theme="light"] .space-tv-empty-library{
  background:#f7fafc!important;
  border-color:#d8e1e8!important;
  color:#17202a!important;
}
body.public-site[data-blog-theme="light"] .space-tv-channel-switch strong,
body.public-site[data-blog-theme="light"] .space-tv-topics-link{
  color:#078dcc!important;
}
body.public-site[data-blog-theme="light"] .space-tv-panel select.control{
  background:#fff!important;
  border-color:#cbd6df!important;
  color:#17202a!important;
}
body.public-site[data-blog-theme="light"] .space-tv-actions button,
body.public-site[data-blog-theme="light"] .space-tv-actions a{
  background:#078dcc!important;
  border-color:#078dcc!important;
  color:#fff!important;
}
body.public-site[data-blog-theme="light"] .space-tv-actions a:last-child{
  background:#fff!important;
  border-color:#cbd6df!important;
  color:#17202a!important;
}

@media(max-width:760px){
  .admin-dashboard-topnav{gap:10px}
  .admin-dashboard-topnav .admin-topnav-admin{font-size:0}
  .admin-dashboard-topnav .admin-topnav-admin img{width:24px;height:24px}
  .admin-dashboard-banner{min-height:100px;padding:16px}
  .admin-dashboard-banner>img{width:48px;height:48px}
}


/* ==========================================================
   ThetaWire Production v1.9.5
   Calendar light-theme correction
   ========================================================== */

/* Public Live Events calendar follows BLOG theme. */
body.public-site[data-blog-theme="light"] .events-calendar,
body.public-site[data-blog-theme="light"] .calendar-shell,
body.public-site[data-blog-theme="light"] .calendar-panel,
body.public-site[data-blog-theme="light"] .calendar-grid,
body.public-site[data-blog-theme="light"] .calendar-card,
body.public-site[data-blog-theme="light"] .calendar-day,
body.public-site[data-blog-theme="light"] .calendar-event,
body.public-site[data-blog-theme="light"] .event-calendar,
body.public-site[data-blog-theme="light"] .event-calendar-card{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

body.public-site[data-blog-theme="light"] .calendar-head,
body.public-site[data-blog-theme="light"] .calendar-header,
body.public-site[data-blog-theme="light"] .calendar-toolbar,
body.public-site[data-blog-theme="light"] .calendar-weekdays,
body.public-site[data-blog-theme="light"] .calendar-weekday{
  background:#f4f8fb!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

body.public-site[data-blog-theme="light"] .calendar-day.is-muted,
body.public-site[data-blog-theme="light"] .calendar-day.other-month,
body.public-site[data-blog-theme="light"] .calendar-empty{
  background:#f7f9fb!important;
  color:#7a8792!important;
}

body.public-site[data-blog-theme="light"] .calendar-day.is-today,
body.public-site[data-blog-theme="light"] .calendar-day.today{
  background:#edf8fe!important;
  border-color:#078dcc!important;
}

body.public-site[data-blog-theme="light"] .calendar-event,
body.public-site[data-blog-theme="light"] .event-calendar-card{
  background:#eef8fd!important;
  color:#17202a!important;
  border-color:#b9ddec!important;
}

body.public-site[data-blog-theme="light"] .calendar-event a,
body.public-site[data-blog-theme="light"] .event-calendar-card a,
body.public-site[data-blog-theme="light"] .calendar-title,
body.public-site[data-blog-theme="light"] .calendar-date{
  color:#0785c6!important;
}

body.public-site[data-blog-theme="light"] .calendar-toolbar button,
body.public-site[data-blog-theme="light"] .calendar-toolbar a,
body.public-site[data-blog-theme="light"] .calendar-nav button,
body.public-site[data-blog-theme="light"] .calendar-nav a{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}

body.public-site[data-blog-theme="light"] .calendar-toolbar button:hover,
body.public-site[data-blog-theme="light"] .calendar-toolbar a:hover,
body.public-site[data-blog-theme="light"] .calendar-nav button:hover,
body.public-site[data-blog-theme="light"] .calendar-nav a:hover{
  background:#edf8fe!important;
  color:#0785c6!important;
  border-color:#078dcc!important;
}

/* Admin calendar follows ADMIN theme. */
html[data-admin-theme="light"] .events-calendar,
html[data-admin-theme="light"] .calendar-shell,
html[data-admin-theme="light"] .calendar-panel,
html[data-admin-theme="light"] .calendar-grid,
html[data-admin-theme="light"] .calendar-card,
html[data-admin-theme="light"] .calendar-day,
html[data-admin-theme="light"] .calendar-event,
html[data-admin-theme="light"] .event-calendar,
html[data-admin-theme="light"] .event-calendar-card{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

html[data-admin-theme="light"] .calendar-head,
html[data-admin-theme="light"] .calendar-header,
html[data-admin-theme="light"] .calendar-toolbar,
html[data-admin-theme="light"] .calendar-weekdays,
html[data-admin-theme="light"] .calendar-weekday{
  background:#f4f8fb!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

html[data-admin-theme="light"] .calendar-day.is-muted,
html[data-admin-theme="light"] .calendar-day.other-month,
html[data-admin-theme="light"] .calendar-empty{
  background:#f7f9fb!important;
  color:#7a8792!important;
}

html[data-admin-theme="light"] .calendar-day.is-today,
html[data-admin-theme="light"] .calendar-day.today{
  background:#edf8fe!important;
  border-color:#078dcc!important;
}

html[data-admin-theme="light"] .calendar-event,
html[data-admin-theme="light"] .event-calendar-card{
  background:#eef8fd!important;
  color:#17202a!important;
  border-color:#b9ddec!important;
}

html[data-admin-theme="light"] .calendar-toolbar button,
html[data-admin-theme="light"] .calendar-toolbar a,
html[data-admin-theme="light"] .calendar-nav button,
html[data-admin-theme="light"] .calendar-nav a{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}


/* ==========================================================
   ThetaWire Production v1.9.6
   Actual Calendar + Topic Controls
   ========================================================== */

.admin-page-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 18px;
}
.admin-page-toolbar h1{
  margin:0;
}

/* Hard override for the actual admin calendar page in light mode */
html[data-admin-theme="light"] .admin-events-calendar-shell,
html[data-admin-theme="light"] .admin-events-calendar-shell *,
html[data-admin-theme="light"] .events-calendar,
html[data-admin-theme="light"] .events-calendar *{
  color:#17202a;
}

html[data-admin-theme="light"] .admin-events-calendar-shell,
html[data-admin-theme="light"] .events-calendar{
  background:#fff!important;
  border-color:#d5dee6!important;
}

html[data-admin-theme="light"] .admin-events-calendar-shell table,
html[data-admin-theme="light"] .events-calendar table{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

html[data-admin-theme="light"] .admin-events-calendar-shell th,
html[data-admin-theme="light"] .events-calendar th{
  background:#f4f8fb!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}

html[data-admin-theme="light"] .admin-events-calendar-shell td,
html[data-admin-theme="light"] .events-calendar td{
  background:#fff!important;
  color:#17202a!important;
  border-color:#e0e6eb!important;
}

html[data-admin-theme="light"] .admin-events-calendar-shell tr:nth-child(even) td,
html[data-admin-theme="light"] .events-calendar tr:nth-child(even) td{
  background:#fbfdfe!important;
}

html[data-admin-theme="light"] .admin-events-calendar-shell a,
html[data-admin-theme="light"] .events-calendar a{
  color:#0785c6!important;
}

/* Make topic management unmistakably visible */
.live-events-topic-admin{
  display:block!important;
}
.live-events-topic-admin .admin-card-head{
  display:block!important;
}
.live-events-topic-admin .topic-add-form{
  display:grid!important;
}
.live-events-topic-admin .topic-admin-list{
  display:grid!important;
}
.live-events-topic-admin .topic-admin-row{
  display:flex!important;
}
.live-events-topic-admin .topic-admin-count{
  margin:6px 0 0;
  font-size:.85rem;
  font-weight:700;
  color:#0785c6;
}
html[data-admin-theme="light"] .live-events-topic-admin{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}
html[data-admin-theme="light"] .live-events-topic-admin h2,
html[data-admin-theme="light"] .live-events-topic-admin label,
html[data-admin-theme="light"] .live-events-topic-admin .topic-admin-row{
  color:#17202a!important;
}
html[data-admin-theme="light"] .live-events-topic-admin .topic-admin-row{
  background:#f8fbfd!important;
  border-color:#dbe4eb!important;
}
html[data-admin-theme="light"] .live-events-topic-admin input.control{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}


/* ==========================================================
   ThetaWire Production v1.9.7
   ACTUAL PUBLIC CALENDAR LIGHT MODE
   DOM verified from production DevTools
   ========================================================== */

body.public-site[data-blog-theme="light"] .space-events-calendar{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
  box-shadow:none!important;
}

body.public-site[data-blog-theme="light"] .space-events-calendar-header{
  background:#fff!important;
  color:#17202a!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-events-calendar-header>span{
  color:#078dcc!important;
}

body.public-site[data-blog-theme="light"] .space-events-calendar-header h2,
body.public-site[data-blog-theme="light"] .space-events-calendar-header h3,
body.public-site[data-blog-theme="light"] .space-events-calendar-header strong{
  color:#17202a!important;
}

body.public-site[data-blog-theme="light"] .space-events-calendar-header p{
  color:#66727e!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-toolbar{
  background:#f7fafc!important;
  color:#17202a!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-toolbar button,
body.public-site[data-blog-theme="light"] .space-calendar-toolbar a{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
  box-shadow:none!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-toolbar button:hover,
body.public-site[data-blog-theme="light"] .space-calendar-toolbar a:hover{
  background:#edf8fe!important;
  color:#0785c6!important;
  border-color:#078dcc!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-weekdays{
  background:#f4f8fb!important;
  color:#52606c!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-weekdays>*{
  color:#52606c!important;
  background:#f4f8fb!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-grid{
  background:#fff!important;
  color:#17202a!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-grid>*{
  background:#fff!important;
  color:#17202a!important;
  border-color:#e0e6eb!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-grid button,
body.public-site[data-blog-theme="light"] .space-calendar-grid a{
  color:#17202a!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-grid .is-today,
body.public-site[data-blog-theme="light"] .space-calendar-grid [aria-current="date"]{
  background:#edf8fe!important;
  color:#0785c6!important;
  border-color:#078dcc!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-agenda{
  background:#fff!important;
  color:#17202a!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-agenda>*{
  background:#f8fbfd!important;
  color:#17202a!important;
  border-color:#dce3e9!important;
}

body.public-site[data-blog-theme="light"] .space-calendar-agenda a{
  color:#0785c6!important;
}

/* Empty-month message seen in production */
body.public-site[data-blog-theme="light"] .space-calendar-grid:empty,
body.public-site[data-blog-theme="light"] .space-calendar-agenda:empty{
  background:#fff!important;
}


/* ==========================================================
   ThetaWire Production v1.9.8
   Topic management UI + Admin bottom black bar correction
   ========================================================== */

/* Topic administration */
.live-events-topic-admin h2{
  margin-bottom:8px;
}
.live-events-topic-admin h3{
  margin:18px 0 10px;
  font-size:1rem;
  letter-spacing:.02em;
}
.topic-admin-help{
  margin:10px 0 16px;
  padding:10px 12px;
  border:1px solid rgba(7,141,204,.22);
  border-radius:10px;
  background:rgba(7,141,204,.08);
  color:inherit;
  font-size:.9rem;
}
.topic-save-button{
  white-space:nowrap;
}
html[data-admin-theme="light"] .topic-admin-help{
  background:#edf8fe!important;
  border-color:#b9ddec!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .live-events-topic-admin h3{
  color:#17202a!important;
}
html[data-admin-theme="light"] .topic-admin-row.is-disabled{
  background:#f2f4f6!important;
  opacity:.78;
}

/* Remove the legacy black page tail visible below the actual Admin dashboard. */
html[data-admin-theme="light"],
html[data-admin-theme="light"] body,
html[data-admin-theme="light"] body.admin-dashboard-page,
html[data-admin-theme="light"] .admin-dashboard-page,
html[data-admin-theme="light"] .admin-shell,
html[data-admin-theme="light"] .admin-main,
html[data-admin-theme="light"] .main,
html[data-admin-theme="light"] .content{
  background:#f4f7fa!important;
}

html[data-admin-theme="light"] body.admin-dashboard-page::before,
html[data-admin-theme="light"] body.admin-dashboard-page::after{
  background:#f4f7fa!important;
}

html[data-admin-theme="light"] .public-footer,
html[data-admin-theme="light"] .admin-footer,
html[data-admin-theme="light"] footer{
  background:#f4f7fa!important;
  color:#66727e!important;
  border-color:#dce3e9!important;
}

/* Ensure shell fills viewport without exposing old black body background. */
body.admin-dashboard-page{
  min-height:100vh;
}
html[data-admin-theme="light"] body.admin-dashboard-page{
  background:#f4f7fa!important;
}


/* ==========================================================
   ThetaWire Production v1.9.9
   COMPLETE ADMIN LIGHT THEME + Topics + Communications
   ========================================================== */

/* Override the original DarkLow design tokens for every Admin page. */
html[data-admin-theme="light"]{
  color-scheme:light;
  --dl-bg-0:#f4f7fa;
  --dl-bg-header:#ffffff;
  --dl-bg-1:#f4f7fa;
  --dl-surface-1:#ffffff;
  --dl-surface-2:#f7fafc;
  --dl-border:#cbd6df;
  --dl-border-soft:#dfe6ec;
  --dl-text-1:#17202a;
  --dl-text-2:#52606c;
  --dl-text-3:#7a8792;
  --dl-accent:#078dcc;
  --dl-accent-hover:#056fa2;
  --dl-accent-deep:#e6f4fc;
  --dl-focus:0 0 0 3px rgba(7,141,204,.18);
}

html[data-admin-theme="light"],
html[data-admin-theme="light"] body,
html[data-admin-theme="light"] .admin-shell,
html[data-admin-theme="light"] .main,
html[data-admin-theme="light"] .content,
html[data-admin-theme="light"] .message-center-main{
  background:#f4f7fa!important;
  color:#17202a!important;
}

/* Common Admin cards/panels that previously stayed black. */
html[data-admin-theme="light"] .toolbar,
html[data-admin-theme="light"] .media-card,
html[data-admin-theme="light"] .dashboard-panel,
html[data-admin-theme="light"] .dashboard-stat,
html[data-admin-theme="light"] .article-list-panel,
html[data-admin-theme="light"] .article-editor-panel,
html[data-admin-theme="light"] .category-list-panel,
html[data-admin-theme="light"] .category-editor-panel,
html[data-admin-theme="light"] .user-list-panel,
html[data-admin-theme="light"] .user-editor-panel,
html[data-admin-theme="light"] .user-secret-panel,
html[data-admin-theme="light"] .user-security-card,
html[data-admin-theme="light"] .user-session-panel,
html[data-admin-theme="light"] .settings-card,
html[data-admin-theme="light"] .security-card,
html[data-admin-theme="light"] .security-panel,
html[data-admin-theme="light"] .site-editor-card,
html[data-admin-theme="light"] .gallery-admin-card,
html[data-admin-theme="light"] .live-events-editor,
html[data-admin-theme="light"] .live-events-list,
html[data-admin-theme="light"] .live-event-admin-card,
html[data-admin-theme="light"] .admin-card{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
  box-shadow:none!important;
}

html[data-admin-theme="light"] .control,
html[data-admin-theme="light"] input:not([type="checkbox"]):not([type="radio"]),
html[data-admin-theme="light"] select,
html[data-admin-theme="light"] textarea{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}

html[data-admin-theme="light"] .btn{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}
html[data-admin-theme="light"] .btn-primary{
  background:#078dcc!important;
  color:#fff!important;
  border-color:#078dcc!important;
}
html[data-admin-theme="light"] .btn-outline{
  background:#fff!important;
  color:#0785c6!important;
  border-color:#9fcfe4!important;
}
html[data-admin-theme="light"] .btn-danger{
  background:#fff4f4!important;
  color:#b4232f!important;
  border-color:#e1a5aa!important;
}

/* Explicit hard-coded dark regions from older Admin modules. */
html[data-admin-theme="light"] .user-secret-panel code,
html[data-admin-theme="light"] .contact-message-preview article,
html[data-admin-theme="light"] .contact-setup-notes{
  background:#f4f8fb!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}
html[data-admin-theme="light"] .category-danger-zone{
  background:#fff7f7!important;
  color:#7a1f28!important;
  border-color:#e6b4b8!important;
}

/* Integrated Topics page */
.integrated-topics-content{
  padding-top:20px;
  padding-bottom:48px;
}
.integrated-topics-content .page-head{
  height:auto;
  min-height:92px;
  padding-left:0;
  padding-right:0;
  margin-bottom:20px;
}
.topic-admin-count-card{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:150px;
  padding:12px 16px;
  border:1px solid #b9ddec;
  border-radius:12px;
  background:#edf8fe;
  color:#17202a;
}
.topic-admin-count-card strong{
  color:#078dcc;
  font-size:1.65rem;
  line-height:1;
}
.topic-admin-count-card span{
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.integrated-topic-admin{
  margin-bottom:18px;
  padding:20px;
}
.integrated-topic-admin .topic-admin-row{
  align-items:flex-end;
}
.integrated-topic-admin .topic-edit-form{
  width:100%;
}
.integrated-topic-admin .topic-state-form{
  min-width:130px;
}
html[data-admin-theme="light"] .integrated-topic-admin .topic-admin-row{
  background:#f8fbfd!important;
  border-color:#dbe4eb!important;
}

/* Communications > Message Center now follows Admin Light/Dark. */
html[data-admin-theme="light"] .message-center-page{
  background:#f4f7fa!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .message-center-main .page-header h1,
html[data-admin-theme="light"] .message-center-main h2,
html[data-admin-theme="light"] .message-center-main h3{
  color:#17202a!important;
}
html[data-admin-theme="light"] .message-center-main .page-header p{
  color:#52606c!important;
}
html[data-admin-theme="light"] .contact-admin-settings,
html[data-admin-theme="light"] .contact-message-list,
html[data-admin-theme="light"] .contact-message-preview,
html[data-admin-theme="light"] .contact-setup-panel{
  background:#fff!important;
  color:#17202a!important;
  border-color:#d5dee6!important;
}
html[data-admin-theme="light"] .contact-message-row{
  color:#17202a!important;
}
html[data-admin-theme="light"] .contact-message-row:hover,
html[data-admin-theme="light"] .contact-message-row.active{
  background:#edf8fe!important;
  border-color:#078dcc!important;
}
html[data-admin-theme="light"] .contact-message-row small,
html[data-admin-theme="light"] .contact-message-row em,
html[data-admin-theme="light"] .contact-message-preview time,
html[data-admin-theme="light"] .contact-message-preview dt{
  color:#66727e!important;
}
html[data-admin-theme="light"] .contact-message-preview dl div{
  background:#f4f8fb!important;
}
html[data-admin-theme="light"] .contact-status-tabs a{
  background:#fff!important;
  color:#52606c!important;
  border-color:#cbd6df!important;
}
html[data-admin-theme="light"] .contact-status-tabs a:hover{
  background:#edf8fe!important;
  color:#0785c6!important;
  border-color:#078dcc!important;
}
html[data-admin-theme="light"] .contact-setup-intro p,
html[data-admin-theme="light"] .contact-setup-notes ul{
  color:#52606c!important;
}
html[data-admin-theme="light"] .contact-setup-notes strong{
  color:#17202a!important;
}

/* Alerts remain readable in Light mode. */
html[data-admin-theme="light"] .form-success,
html[data-admin-theme="light"] .alert.success{
  background:#eef9f1!important;
  color:#226b37!important;
  border-color:#aad6b6!important;
}
html[data-admin-theme="light"] .form-error,
html[data-admin-theme="light"] .alert.error{
  background:#fff1f1!important;
  color:#9e2530!important;
  border-color:#e5afb4!important;
}

@media(max-width:760px){
  .integrated-topics-content .page-head{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
  .topic-admin-count-card{width:100%}
  .integrated-topic-admin .topic-state-form{width:100%}
  .integrated-topic-admin .topic-state-form .btn{width:100%}
}


/* ==========================================================
   ThetaWire Production v1.9.10
   Message Center contact setup / repair
   ========================================================== */
html[data-admin-theme="light"] .contact-setup-panel{
  background:#fff!important;
  color:#17202a!important;
  border:1px solid #d5dee6!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
html[data-admin-theme="light"] .contact-setup-intro h2{
  color:#17202a!important;
}
html[data-admin-theme="light"] .contact-setup-intro>span{
  color:#078dcc!important;
}
html[data-admin-theme="light"] .contact-setup-form label{
  color:#52606c!important;
}
html[data-admin-theme="light"] .contact-setup-form input{
  background:#fff!important;
  color:#17202a!important;
  border-color:#cbd6df!important;
}


/* ==========================================================
   ThetaWire Production v1.9.13
   Detailed category artwork on public blog posts/cards.
   Public category navigation intentionally keeps simple nav icons.
   ========================================================== */

.public-feature-category-art{
  flex:0 0 auto;
  width:clamp(92px,8vw,132px);
  height:clamp(92px,8vw,132px);
  object-fit:contain;
  background:transparent;
  filter:drop-shadow(0 0 10px rgba(0,155,255,.18));
}

.public-card-category-row{
  display:flex;
  align-items:flex-start;
  gap:14px;
}

.public-card-category-row > div{
  min-width:0;
  flex:1 1 auto;
}

.public-card-category-art{
  flex:0 0 auto;
  width:clamp(72px,6.5vw,96px);
  height:clamp(72px,6.5vw,96px);
  object-fit:contain;
  margin:0;
  padding:0;
  background:transparent;
  filter:drop-shadow(0 0 8px rgba(0,155,255,.18));
}

body.public-site[data-blog-theme="light"] .public-feature-category-art,
body.public-site[data-blog-theme="light"] .public-card-category-art{
  filter:drop-shadow(0 2px 7px rgba(0,86,135,.12));
}

@media(max-width:720px){
  .public-feature-category-art{
    width:82px;
    height:82px;
  }
  .public-card-category-art{
    width:68px;
    height:68px;
  }
}

@media(max-width:520px){
  .public-card-category-row{
    gap:10px;
  }
  .public-card-category-art{
    width:58px;
    height:58px;
  }
}


/* ==========================================================
   ThetaWire Production v1.9.14
   Public blog category icon replacement.
   The detailed ThetaWire category artwork REPLACES the old generic SVG
   beside MOBILE NEWS / TECH / AI / REVIEWS / VIDEOS / LIVE EVENTS.
   ========================================================== */

.public-post-category .public-post-category-art{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:block;
  object-fit:contain;
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
  margin:0;
}

.public-card-category{
  display:flex;
  align-items:center;
  gap:8px;
}

.public-card-category .public-card-category-art-inline{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:block;
  object-fit:contain;
  background:transparent;
  border:0;
  padding:0;
  margin:0;
}

@media(max-width:639px){
  .public-post-category .public-post-category-art{
    width:30px;
    height:30px;
    flex-basis:30px;
  }
  .public-card-category .public-card-category-art-inline{
    width:26px;
    height:26px;
    flex-basis:26px;
  }
}


/* ThetaWire v1.9.15:
   public small category icons are now sourced from /assets/images/category-art/
   instead of /assets/images/nav-icons/. */


/* ThetaWire v1.9.16 — remove legacy DarkLow SVG category icons from posts. */
.public-card-fallback-art,
.public-media-fallback-art{
  width:min(42%,180px);
  height:auto;
  max-height:180px;
  object-fit:contain;
  display:block;
  margin:auto;
  background:transparent;
}


/* ThetaWire v1.9.17 — larger category artwork beside blog post labels. */
.public-post-category .public-post-category-art{
  width:64px !important;
  height:64px !important;
  flex:0 0 64px !important;
  object-fit:contain;
}

.public-card-category .public-card-category-art-inline{
  width:52px !important;
  height:52px !important;
  flex:0 0 52px !important;
  object-fit:contain;
}

@media(max-width:639px){
  .public-post-category .public-post-category-art{
    width:52px !important;
    height:52px !important;
    flex-basis:52px !important;
  }
  .public-card-category .public-card-category-art-inline{
    width:44px !important;
    height:44px !important;
    flex-basis:44px !important;
  }
}


/* ThetaWire v1.9.18 — category artwork sized to be visually prominent. */
.public-post-category{
  gap:18px !important;
}
.public-post-category .public-post-category-art{
  width:112px !important;
  height:112px !important;
  flex:0 0 112px !important;
  object-fit:contain !important;
}
.public-card-category .public-card-category-art-inline{
  width:88px !important;
  height:88px !important;
  flex:0 0 88px !important;
  object-fit:contain !important;
}
@media(max-width:639px){
  .public-post-category{
    gap:12px !important;
  }
  .public-post-category .public-post-category-art{
    width:88px !important;
    height:88px !important;
    flex-basis:88px !important;
  }
  .public-card-category .public-card-category-art-inline{
    width:72px !important;
    height:72px !important;
    flex-basis:72px !important;
  }
}


/* ThetaWire v1.9.19 — blog category artwork 3x v1.9.18 size. */
.public-post-category .public-post-category-art{
  width:336px !important;
  height:336px !important;
  flex:0 0 336px !important;
  object-fit:contain !important;
}

.public-card-category .public-card-category-art-inline{
  width:264px !important;
  height:264px !important;
  flex:0 0 264px !important;
  object-fit:contain !important;
}

@media(max-width:639px){
  .public-post-category .public-post-category-art{
    width:264px !important;
    height:264px !important;
    flex-basis:264px !important;
  }
  .public-card-category .public-card-category-art-inline{
    width:216px !important;
    height:216px !important;
    flex-basis:216px !important;
  }
}


/* ThetaWire v1.9.20 — tightly cropped prominent category artwork.
   Replaces the oversized v1.9.19 image boxes. */
.public-post-category{
  gap:16px !important;
  align-items:center !important;
}
.public-post-category .public-post-category-art{
  width:140px !important;
  height:140px !important;
  flex:0 0 140px !important;
  object-fit:contain !important;
}

.public-card-category{
  align-items:center !important;
  gap:12px !important;
}
.public-card-category .public-card-category-art-inline{
  width:112px !important;
  height:112px !important;
  flex:0 0 112px !important;
  object-fit:contain !important;
}

@media(max-width:639px){
  .public-post-category .public-post-category-art{
    width:108px !important;
    height:108px !important;
    flex-basis:108px !important;
  }
  .public-card-category .public-card-category-art-inline{
    width:88px !important;
    height:88px !important;
    flex-basis:88px !important;
  }
}


/* ThetaWire v1.9.21 — category navigation + blog artwork alignment */
.public-category-nav,
.public-category-list,
.public-category-grid{
  align-items:start !important;
}

/* Give each top category equal breathing room and keep artwork/labels centered. */
.public-category-nav a,
.public-category-list a,
.public-category-grid a,
.public-category-item{
  padding-left:18px !important;
  padding-right:18px !important;
  text-align:center !important;
}

/* Normalize top navigation artwork boxes so mixed source proportions align cleanly. */
.public-category-nav img,
.public-category-list img,
.public-category-grid img,
.public-category-item img{
  object-fit:contain !important;
  object-position:center center !important;
}

/* Pull blog category artwork upward without inflating its box. */
.public-post-category{
  transform:translateY(-18px);
  margin-bottom:-18px !important;
}
.public-card-category{
  transform:translateY(-10px);
  margin-bottom:-10px !important;
}

@media(max-width:639px){
  .public-category-nav a,
  .public-category-list a,
  .public-category-grid a,
  .public-category-item{
    padding-left:10px !important;
    padding-right:10px !important;
  }
  .public-post-category{
    transform:translateY(-10px);
    margin-bottom:-10px !important;
  }
  .public-card-category{
    transform:translateY(-6px);
    margin-bottom:-6px !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.22
   Responsive category spacing + mobile light-theme cleanup
   Keeps v1.9.21 Reviews and Live Events artwork.
   ========================================================== */

/* ---------- Desktop/tablet category navigation ---------- */
body.public-site .public-page-main > .public-categories{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  align-items:start !important;
  justify-items:stretch !important;
  column-gap:clamp(18px,2.2vw,38px) !important;
  row-gap:18px !important;
  width:100% !important;
  margin:0 !important;
  padding:20px 8px 28px !important;
  overflow:visible !important;
}

body.public-site .public-page-main > .public-categories .public-category{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-width:0 !important;
  min-height:142px !important;
  padding:6px 4px 8px !important;
  gap:8px !important;
  text-align:center !important;
}

body.public-site .public-page-main > .public-categories .public-category-picture{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:clamp(118px,8.2vw,152px) !important;
  height:108px !important;
  margin:0 auto 4px !important;
  padding:0 !important;
  overflow:visible !important;
  line-height:0 !important;
}

body.public-site .public-page-main > .public-categories .public-category-art{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}

body.public-site .public-page-main > .public-categories .public-category > span{
  display:block !important;
  width:100% !important;
  min-height:18px !important;
  line-height:1.3 !important;
  text-align:center !important;
  white-space:normal !important;
}

/* ---------- Blog card/category artwork alignment ---------- */
body.public-site .public-post-category{
  transform:translateY(-24px) !important;
  margin-bottom:-24px !important;
  gap:14px !important;
  align-items:center !important;
}

body.public-site .public-card-category{
  transform:translateY(-14px) !important;
  margin-bottom:-14px !important;
  gap:10px !important;
  align-items:center !important;
}

/* ---------- Tablet ---------- */
@media (max-width:899px){
  body.public-site .public-page-main > .public-categories{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    column-gap:20px !important;
    row-gap:20px !important;
    padding:18px 6px 24px !important;
  }

  body.public-site .public-page-main > .public-categories .public-category{
    min-height:134px !important;
  }

  body.public-site .public-page-main > .public-categories .public-category-picture{
    width:124px !important;
    height:96px !important;
  }
}

/* ---------- Phones ---------- */
@media (max-width:639px){
  html,
  body.public-site{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body.public-site .public-page-layout,
  body.public-site .public-page-main,
  body.public-site .public-main,
  body.public-site .public-content-column,
  body.public-site .public-previous{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  body.public-site .public-page-layout{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  body.public-site .public-page-main > .public-categories{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    column-gap:14px !important;
    row-gap:18px !important;
    padding:14px 0 22px !important;
  }

  body.public-site .public-page-main > .public-categories .public-category{
    min-height:124px !important;
    padding:4px 2px 6px !important;
  }

  body.public-site .public-page-main > .public-categories .public-category-picture{
    width:min(126px,38vw) !important;
    height:88px !important;
    margin-bottom:2px !important;
  }

  body.public-site .public-page-main > .public-categories .public-category > span{
    font-size:11px !important;
    letter-spacing:.025em !important;
  }

  body.public-site .public-post-header{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:start !important;
    gap:10px 12px !important;
    padding:18px 16px 8px !important;
  }

  body.public-site .public-post-heading{
    min-width:0 !important;
  }

  body.public-site .public-post-category{
    transform:translateY(-12px) !important;
    margin-bottom:-12px !important;
    gap:10px !important;
  }

  body.public-site .public-post-category .public-post-category-art{
    width:96px !important;
    height:96px !important;
    flex:0 0 96px !important;
  }

  body.public-site .public-card-category{
    transform:translateY(-8px) !important;
    margin-bottom:-8px !important;
    gap:8px !important;
  }

  body.public-site .public-card-category .public-card-category-art-inline{
    width:78px !important;
    height:78px !important;
    flex:0 0 78px !important;
  }

  body.public-site .public-post-header time{
    font-size:14px !important;
    white-space:nowrap !important;
  }

  body.public-site .public-post-header h1{
    font-size:clamp(23px,7vw,30px) !important;
    overflow-wrap:anywhere !important;
  }

  body.public-site .public-post-body,
  body.public-site .public-article-grid{
    min-width:0 !important;
  }

  body.public-site .public-post-media,
  body.public-site .public-post-media img,
  body.public-site .public-post-media video,
  body.public-site .public-card-image,
  body.public-site .public-card-image img,
  body.public-site .public-card-image video{
    width:100% !important;
    max-width:100% !important;
  }
}

/* ---------- Light mode: eliminate legacy black mobile surfaces ---------- */
body.public-site[data-blog-theme="light"] .public-page-layout,
body.public-site[data-blog-theme="light"] .public-page-main,
body.public-site[data-blog-theme="light"] .public-main,
body.public-site[data-blog-theme="light"] .public-content-column,
body.public-site[data-blog-theme="light"] .public-previous,
body.public-site[data-blog-theme="light"] .public-footer{
  background:#f5f7fa !important;
}

@media (max-width:899px){
  body.public-site[data-blog-theme="light"] .public-page-layout,
  body.public-site[data-blog-theme="light"] .public-page-main,
  body.public-site[data-blog-theme="light"] .public-main,
  body.public-site[data-blog-theme="light"] .public-content-column,
  body.public-site[data-blog-theme="light"] .public-previous,
  body.public-site[data-blog-theme="light"] .public-footer,
  body.public-site[data-blog-theme="light"] .public-categories{
    background:#f5f7fa !important;
  }

  body.public-site[data-blog-theme="light"] .public-feature-post,
  body.public-site[data-blog-theme="light"] .public-article-card,
  body.public-site[data-blog-theme="light"] .public-empty-posts,
  body.public-site[data-blog-theme="light"] .public-full-article{
    background:#fff !important;
    border-color:#d9dfe6 !important;
  }
}

/* Mobile drawer follows NAV theme rather than staying permanently black. */
@media (max-width:899px){
  body.public-site[data-nav-theme="light"] aside.public-mobile-menu{
    background:#fff !important;
    color:#18212a !important;
    border-left-color:#d7dfe7 !important;
    box-shadow:-18px 0 46px rgba(20,34,48,.20) !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu-head{
    border-bottom-color:#dce2e8 !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu-head strong{
    color:#18212a !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu-close{
    background:#f7f9fb !important;
    border-color:#cfd7df !important;
    color:#1e2730 !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu nav.public-mobile-menu-links a{
    color:#1d2730 !important;
    background:#fff !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu nav.public-mobile-menu-links a:hover,
  body.public-site[data-nav-theme="light"] .public-mobile-menu nav.public-mobile-menu-links a:focus-visible,
  body.public-site[data-nav-theme="light"] .public-mobile-menu nav.public-mobile-menu-links a.active{
    color:#087fc4 !important;
    background:#eef8fd !important;
    border-color:#b9d9ea !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu-time{
    color:#65717d !important;
    border-top-color:#dce2e8 !important;
  }

  body.public-site[data-nav-theme="light"] .public-mobile-menu-overlay{
    background:rgba(28,39,50,.36) !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.23
   Article header composition + mobile white article surfaces
   ========================================================== */

/* Put category artwork/label and article title on one horizontal line. */
body.public-site .public-feature-post .public-post-heading{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  grid-template-areas:"category title" !important;
  align-items:center !important;
  column-gap:clamp(22px,2.4vw,40px) !important;
  row-gap:0 !important;
  width:100% !important;
  min-width:0 !important;
}

body.public-site .public-feature-post .public-post-category{
  grid-area:category !important;
  align-self:center !important;
  transform:none !important;
  margin:0 !important;
  min-width:0 !important;
}

body.public-site .public-feature-post .public-post-heading > h1{
  grid-area:title !important;
  align-self:center !important;
  margin:0 !important;
  min-width:0 !important;
  line-height:1.08 !important;
  overflow-wrap:anywhere !important;
}

/* Date remains at the far right of the article header. */
body.public-site .public-feature-post .public-post-header{
  align-items:center !important;
}

/* Keep secondary/card article headings compact and aligned. */
body.public-site .public-card-category{
  transform:none !important;
  margin-bottom:4px !important;
}

/* ---------- Mobile article composition ---------- */
@media (max-width:639px){
  body.public-site .public-feature-post .public-post-header{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px !important;
    align-items:start !important;
    padding:16px 14px 10px !important;
  }

  body.public-site .public-feature-post .public-post-heading{
    grid-template-columns:auto minmax(0,1fr) !important;
    grid-template-areas:"category title" !important;
    column-gap:12px !important;
    align-items:center !important;
  }

  body.public-site .public-feature-post .public-post-category{
    transform:none !important;
    margin:0 !important;
    gap:6px !important;
  }

  body.public-site .public-feature-post .public-post-category .public-post-category-art{
    width:82px !important;
    height:82px !important;
    flex:0 0 82px !important;
    object-fit:contain !important;
  }

  body.public-site .public-feature-post .public-post-heading > h1{
    font-size:clamp(22px,7vw,30px) !important;
    line-height:1.08 !important;
    margin:0 !important;
  }

  body.public-site .public-feature-post .public-post-header time{
    justify-self:end !important;
    margin-top:-2px !important;
    font-size:13px !important;
  }
}

/* ---------- Mobile Light blog: force article surfaces white ---------- */
@media (max-width:899px){
  body.public-site[data-blog-theme="light"] .public-feature-post,
  body.public-site[data-blog-theme="light"] article.public-feature-post,
  body.public-site[data-blog-theme="light"] .public-article-card,
  body.public-site[data-blog-theme="light"] article.public-article-card,
  body.public-site[data-blog-theme="light"] .public-full-article,
  body.public-site[data-blog-theme="light"] article.public-full-article,
  body.public-site[data-blog-theme="light"] .public-post-header,
  body.public-site[data-blog-theme="light"] .public-post-body,
  body.public-site[data-blog-theme="light"] .public-card-body,
  body.public-site[data-blog-theme="light"] .public-article-body{
    background:#fff !important;
    color:#17212b !important;
  }

  body.public-site[data-blog-theme="light"] .public-feature-post,
  body.public-site[data-blog-theme="light"] .public-article-card,
  body.public-site[data-blog-theme="light"] .public-full-article{
    border-color:#d9dfe6 !important;
  }

  body.public-site[data-blog-theme="light"] .public-feature-post h1,
  body.public-site[data-blog-theme="light"] .public-feature-post h2,
  body.public-site[data-blog-theme="light"] .public-article-card h2,
  body.public-site[data-blog-theme="light"] .public-full-article h1,
  body.public-site[data-blog-theme="light"] .public-full-article h2{
    color:#17212b !important;
  }

  body.public-site[data-blog-theme="light"] .public-feature-post p,
  body.public-site[data-blog-theme="light"] .public-article-card p,
  body.public-site[data-blog-theme="light"] .public-full-article p{
    color:#303b46 !important;
  }

  body.public-site[data-blog-theme="light"] .public-post-header time,
  body.public-site[data-blog-theme="light"] .public-article-card time{
    color:#66727e !important;
  }
}

/* Preserve intentional Dark blog styling when BLOG theme is Dark. */
@media (max-width:899px){
  body.public-site[data-blog-theme="dark"] .public-feature-post,
  body.public-site[data-blog-theme="dark"] .public-article-card,
  body.public-site[data-blog-theme="dark"] .public-full-article{
    color:inherit;
  }
}


/* ==========================================================
   ThetaWire v1.9.24
   HARD FIX: mobile/tablet articles must be white in BLOG Light
   Uses all actual theme hooks:
   - html[data-blog-theme="light"]
   - body[data-blog-theme="light"]
   - body.blog-theme-light
   ========================================================== */

@media (max-width:899px){

  /* Main article/card shells */
  html[data-blog-theme="light"] body.public-site .public-feature-post,
  html[data-blog-theme="light"] body.public-site article.public-feature-post,
  html[data-blog-theme="light"] body.public-site .public-article-card,
  html[data-blog-theme="light"] body.public-site article.public-article-card,
  html[data-blog-theme="light"] body.public-site .public-full-article,
  html[data-blog-theme="light"] body.public-site article.public-full-article,
  body.public-site[data-blog-theme="light"] .public-feature-post,
  body.public-site[data-blog-theme="light"] .public-article-card,
  body.public-site[data-blog-theme="light"] .public-full-article,
  body.public-site.blog-theme-light .public-feature-post,
  body.public-site.blog-theme-light .public-article-card,
  body.public-site.blog-theme-light .public-full-article{
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#17212b !important;
    border-color:#d9dfe6 !important;
  }

  /* Every visible text/content surface inside articles */
  html[data-blog-theme="light"] body.public-site .public-feature-post .public-post-header,
  html[data-blog-theme="light"] body.public-site .public-feature-post .public-post-body,
  html[data-blog-theme="light"] body.public-site .public-feature-post .public-post-copy,
  html[data-blog-theme="light"] body.public-site .public-feature-post .public-post-article-content,
  html[data-blog-theme="light"] body.public-site .public-article-card .public-article-card-link,
  html[data-blog-theme="light"] body.public-site .public-article-card .public-card-details,
  html[data-blog-theme="light"] body.public-site .public-full-article > header,
  html[data-blog-theme="light"] body.public-site .public-full-article .public-article-content,
  html[data-blog-theme="light"] body.public-site .public-full-article .public-article-lead,
  body.public-site.blog-theme-light .public-post-header,
  body.public-site.blog-theme-light .public-post-body,
  body.public-site.blog-theme-light .public-post-copy,
  body.public-site.blog-theme-light .public-post-article-content,
  body.public-site.blog-theme-light .public-article-card-link,
  body.public-site.blog-theme-light .public-card-details,
  body.public-site.blog-theme-light .public-full-article > header,
  body.public-site.blog-theme-light .public-full-article .public-article-content,
  body.public-site.blog-theme-light .public-full-article .public-article-lead{
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#17212b !important;
  }

  /* Typography contrast */
  html[data-blog-theme="light"] body.public-site .public-feature-post h1,
  html[data-blog-theme="light"] body.public-site .public-feature-post h2,
  html[data-blog-theme="light"] body.public-site .public-feature-post h3,
  html[data-blog-theme="light"] body.public-site .public-article-card h1,
  html[data-blog-theme="light"] body.public-site .public-article-card h2,
  html[data-blog-theme="light"] body.public-site .public-article-card h3,
  html[data-blog-theme="light"] body.public-site .public-full-article h1,
  html[data-blog-theme="light"] body.public-site .public-full-article h2,
  html[data-blog-theme="light"] body.public-site .public-full-article h3,
  body.public-site.blog-theme-light .public-feature-post h1,
  body.public-site.blog-theme-light .public-article-card h3,
  body.public-site.blog-theme-light .public-full-article h1{
    color:#17212b !important;
  }

  html[data-blog-theme="light"] body.public-site .public-feature-post p,
  html[data-blog-theme="light"] body.public-site .public-feature-post li,
  html[data-blog-theme="light"] body.public-site .public-article-card p,
  html[data-blog-theme="light"] body.public-site .public-full-article p,
  html[data-blog-theme="light"] body.public-site .public-full-article li,
  body.public-site.blog-theme-light .public-feature-post p,
  body.public-site.blog-theme-light .public-full-article p{
    color:#303b46 !important;
  }

  html[data-blog-theme="light"] body.public-site .public-post-header time,
  html[data-blog-theme="light"] body.public-site .public-card-meta,
  html[data-blog-theme="light"] body.public-site .public-card-meta dt,
  html[data-blog-theme="light"] body.public-site .public-card-meta dd,
  html[data-blog-theme="light"] body.public-site .public-full-article > header > div,
  body.public-site.blog-theme-light .public-post-header time,
  body.public-site.blog-theme-light .public-card-meta{
    color:#65717d !important;
  }

  /* Article area/page behind the cards must also stay light. */
  html[data-blog-theme="light"] body.public-site .public-main,
  html[data-blog-theme="light"] body.public-site .public-content-column,
  html[data-blog-theme="light"] body.public-site .public-previous,
  html[data-blog-theme="light"] body.public-site .public-article-grid,
  html[data-blog-theme="light"] body.public-site .public-article-shell,
  html[data-blog-theme="light"] body.public-site .public-inline-reader,
  body.public-site.blog-theme-light .public-main,
  body.public-site.blog-theme-light .public-content-column,
  body.public-site.blog-theme-light .public-previous,
  body.public-site.blog-theme-light .public-article-grid,
  body.public-site.blog-theme-light .public-article-shell{
    background:#f5f7fa !important;
    background-color:#f5f7fa !important;
  }

  /* Do not let transparent links expose an underlying dark card background. */
  html[data-blog-theme="light"] body.public-site .public-article-card-link,
  body.public-site.blog-theme-light .public-article-card-link{
    color:#17212b !important;
  }

  /* Intentional media itself may be dark; only remove legacy black framing. */
  html[data-blog-theme="light"] body.public-site .public-post-media,
  html[data-blog-theme="light"] body.public-site .public-card-image,
  body.public-site.blog-theme-light .public-post-media,
  body.public-site.blog-theme-light .public-card-image{
    border-color:#d9dfe6 !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.25
   MOBILE ARTICLE SURFACES — ALWAYS WHITE
   This intentionally overrides BLOG Dark/Light for article cards
   on phones/tablets. The rest of the site can still use its theme.
   ========================================================== */

@media (max-width:899px){

  /* Feature article and previous/full article shells */
  body.public-site .public-feature-post,
  body.public-site article.public-feature-post,
  body.public-site .public-article-card,
  body.public-site article.public-article-card,
  body.public-site .public-full-article,
  body.public-site article.public-full-article{
    background:#fff !important;
    background-color:#fff !important;
    color:#17212b !important;
    border-color:#d9dfe6 !important;
  }

  /* Feature article internals */
  body.public-site .public-feature-post .public-post-header,
  body.public-site .public-feature-post .public-post-heading,
  body.public-site .public-feature-post .public-post-body,
  body.public-site .public-feature-post .public-post-copy,
  body.public-site .public-feature-post .public-post-summary,
  body.public-site .public-feature-post .public-post-article-content,
  body.public-site .public-feature-post .public-post-meta{
    background:#fff !important;
    background-color:#fff !important;
    color:#17212b !important;
  }

  /* Previous article card internals */
  body.public-site .public-article-card .public-article-card-link,
  body.public-site .public-article-card .public-card-details,
  body.public-site .public-article-card .public-card-category,
  body.public-site .public-article-card .public-card-meta{
    background:#fff !important;
    background-color:#fff !important;
    color:#17212b !important;
  }

  /* Full article/reader internals */
  body.public-site .public-full-article > header,
  body.public-site .public-full-article .public-article-lead,
  body.public-site .public-full-article .public-article-content,
  body.public-site .public-full-article .public-article-tags{
    background:#fff !important;
    background-color:#fff !important;
    color:#17212b !important;
  }

  /* Readable mobile typography on the forced-white surfaces */
  body.public-site .public-feature-post h1,
  body.public-site .public-feature-post h2,
  body.public-site .public-feature-post h3,
  body.public-site .public-article-card h1,
  body.public-site .public-article-card h2,
  body.public-site .public-article-card h3,
  body.public-site .public-full-article h1,
  body.public-site .public-full-article h2,
  body.public-site .public-full-article h3{
    color:#17212b !important;
  }

  body.public-site .public-feature-post p,
  body.public-site .public-feature-post li,
  body.public-site .public-article-card p,
  body.public-site .public-full-article p,
  body.public-site .public-full-article li{
    color:#303b46 !important;
  }

  body.public-site .public-post-header time,
  body.public-site .public-card-meta,
  body.public-site .public-card-meta dt,
  body.public-site .public-card-meta dd,
  body.public-site .public-post-hits,
  body.public-site .public-full-article > header > div{
    color:#65717d !important;
  }

  /* Keep category accents blue, not purple-on-dark. */
  body.public-site .public-post-category,
  body.public-site .public-card-category,
  body.public-site .public-full-article > header > span{
    color:#078dcc !important;
  }

  /* Make the area surrounding mobile articles light too. */
  body.public-site .public-main,
  body.public-site .public-content-column,
  body.public-site .public-previous,
  body.public-site .public-article-grid,
  body.public-site .public-inline-reader{
    background:#f5f7fa !important;
    background-color:#f5f7fa !important;
  }

  /*
   * Media may legitimately contain dark imagery.
   * Only the media FRAME is neutralized so it cannot expose an old black
   * article-card background around a smaller image/video.
   */
  body.public-site .public-post-media,
  body.public-site .public-card-image,
  body.public-site .public-full-media{
    background:#fff !important;
    background-color:#fff !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.26
   LIVE EVENTS TV started viewer — Light theme repair
   The original Special Live Event viewer was intentionally
   hard-coded black. In BLOG Light, it now follows the site's
   white/light visual system.
   ========================================================== */

html[data-blog-theme="light"] body.public-site .special-live-event,
body.public-site[data-blog-theme="light"] .special-live-event,
body.public-site.blog-theme-light .special-live-event{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border-color:#d6dee6 !important;
  color:#17212b !important;
  box-shadow:0 6px 20px rgba(25,39,52,.05) !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-header,
body.public-site[data-blog-theme="light"] .special-live-event-header,
body.public-site.blog-theme-light .special-live-event-header{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border-bottom-color:#d9e1e8 !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-header span,
body.public-site[data-blog-theme="light"] .special-live-event-header span,
body.public-site.blog-theme-light .special-live-event-header span{
  color:#078dcc !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-header h1,
body.public-site[data-blog-theme="light"] .special-live-event-header h1,
body.public-site.blog-theme-light .special-live-event-header h1{
  color:#17212b !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-header p,
body.public-site[data-blog-theme="light"] .special-live-event-header p,
body.public-site.blog-theme-light .special-live-event-header p{
  color:#66727e !important;
}

/* Keep the actual video area neutral/light while an embed is loading.
   The external video itself may still contain intentional black pixels. */
html[data-blog-theme="light"] body.public-site .special-live-player,
body.public-site[data-blog-theme="light"] .special-live-player,
body.public-site.blog-theme-light .special-live-player{
  background:#eef3f7 !important;
  background-color:#eef3f7 !important;
  border-top:1px solid #e1e7ec !important;
  border-bottom:1px solid #e1e7ec !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-footer,
body.public-site[data-blog-theme="light"] .special-live-event-footer,
body.public-site.blog-theme-light .special-live-event-footer{
  background:#ffffff !important;
  background-color:#ffffff !important;
}

html[data-blog-theme="light"] body.public-site .special-live-event-footer a,
body.public-site[data-blog-theme="light"] .special-live-event-footer a,
body.public-site.blog-theme-light .special-live-event-footer a{
  color:#078dcc !important;
}

html[data-blog-theme="light"] body.public-site .special-live-stop,
body.public-site[data-blog-theme="light"] .special-live-stop,
body.public-site.blog-theme-light .special-live-stop{
  background:#ffffff !important;
  border-color:#d2dbe3 !important;
  color:#26313c !important;
}

html[data-blog-theme="light"] body.public-site .special-live-stop:hover,
html[data-blog-theme="light"] body.public-site .special-live-stop:focus-visible,
body.public-site[data-blog-theme="light"] .special-live-stop:hover,
body.public-site[data-blog-theme="light"] .special-live-stop:focus-visible,
body.public-site.blog-theme-light .special-live-stop:hover,
body.public-site.blog-theme-light .special-live-stop:focus-visible{
  background:#f3f7fa !important;
  border-color:#078dcc !important;
  color:#078dcc !important;
}

/* The sidebar "Now Playing" state should remain light as well. */
html[data-blog-theme="light"] body.public-site .space-tv-playing,
body.public-site[data-blog-theme="light"] .space-tv-playing,
body.public-site.blog-theme-light .space-tv-playing{
  background:#f7fafc !important;
  background-color:#f7fafc !important;
  color:#17212b !important;
  border-color:#d8e1e8 !important;
}

html[data-blog-theme="light"] body.public-site .space-tv-playing > strong,
body.public-site[data-blog-theme="light"] .space-tv-playing > strong,
body.public-site.blog-theme-light .space-tv-playing > strong{
  color:#17212b !important;
}

html[data-blog-theme="light"] body.public-site .space-tv-playing > span,
html[data-blog-theme="light"] body.public-site .space-tv-playing > small,
body.public-site[data-blog-theme="light"] .space-tv-playing > span,
body.public-site[data-blog-theme="light"] .space-tv-playing > small,
body.public-site.blog-theme-light .space-tv-playing > span,
body.public-site.blog-theme-light .space-tv-playing > small{
  color:#66727e !important;
}

html[data-blog-theme="light"] body.public-site .space-tv-playing-actions a,
body.public-site[data-blog-theme="light"] .space-tv-playing-actions a,
body.public-site.blog-theme-light .space-tv-playing-actions a{
  color:#078dcc !important;
}


/* ==========================================================
   ThetaWire v1.9.27
   Public Gallery — remove legacy black/DarkLow presentation
   ========================================================== */

body.thetawire-gallery-page,
body.public-site.thetawire-gallery-page{
  background:#f5f7fa !important;
  background-color:#f5f7fa !important;
  color:#17212b !important;
}

body.thetawire-gallery-page main,
body.thetawire-gallery-page .gallery-page,
body.thetawire-gallery-page .gallery-main,
body.thetawire-gallery-page .gallery-shell,
body.thetawire-gallery-page .gallery-content,
body.thetawire-gallery-page .public-page-layout,
body.thetawire-gallery-page .public-page-main{
  background:#f5f7fa !important;
  background-color:#f5f7fa !important;
  color:#17212b !important;
}

/* Legacy gallery banner/header becomes a clean ThetaWire light banner. */
body.thetawire-gallery-page .gallery-banner,
body.thetawire-gallery-page .gallery-hero,
body.thetawire-gallery-page .gallery-header,
body.thetawire-gallery-page .page-banner{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

body.thetawire-gallery-page .gallery-banner h1,
body.thetawire-gallery-page .gallery-hero h1,
body.thetawire-gallery-page .gallery-header h1,
body.thetawire-gallery-page .page-banner h1{
  color:#17212b !important;
}

body.thetawire-gallery-page .gallery-banner p,
body.thetawire-gallery-page .gallery-hero p,
body.thetawire-gallery-page .gallery-header p,
body.thetawire-gallery-page .page-banner p{
  color:#66727e !important;
}

/* Gallery cards, albums, filters and empty states. */
body.thetawire-gallery-page .gallery-grid,
body.thetawire-gallery-page .gallery-list,
body.thetawire-gallery-page .gallery-card,
body.thetawire-gallery-page .gallery-item,
body.thetawire-gallery-page .gallery-album,
body.thetawire-gallery-page .gallery-panel,
body.thetawire-gallery-page .gallery-empty,
body.thetawire-gallery-page .gallery-controls,
body.thetawire-gallery-page .gallery-filter,
body.thetawire-gallery-page .gallery-filters{
  color:#17212b !important;
}

body.thetawire-gallery-page .gallery-card,
body.thetawire-gallery-page .gallery-item,
body.thetawire-gallery-page .gallery-album,
body.thetawire-gallery-page .gallery-panel,
body.thetawire-gallery-page .gallery-empty,
body.thetawire-gallery-page .gallery-controls,
body.thetawire-gallery-page .gallery-filter,
body.thetawire-gallery-page .gallery-filters{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border-color:#d9e1e8 !important;
}

body.thetawire-gallery-page h1,
body.thetawire-gallery-page h2,
body.thetawire-gallery-page h3,
body.thetawire-gallery-page h4{
  color:#17212b !important;
}

body.thetawire-gallery-page p,
body.thetawire-gallery-page .gallery-meta,
body.thetawire-gallery-page .gallery-description,
body.thetawire-gallery-page .gallery-caption{
  color:#5f6c78 !important;
}

body.thetawire-gallery-page a{
  color:#078dcc;
}

/* Forms/search/selects on gallery page. */
body.thetawire-gallery-page input,
body.thetawire-gallery-page select,
body.thetawire-gallery-page textarea{
  background:#ffffff !important;
  color:#17212b !important;
  border-color:#cfd8e1 !important;
}

/* Images retain their own pixels; only old black framing is removed. */
body.thetawire-gallery-page .gallery-image,
body.thetawire-gallery-page .gallery-thumb,
body.thetawire-gallery-page figure{
  background:#ffffff !important;
  border-color:#d9e1e8 !important;
}

/* Mobile gallery must remain light and width-safe. */
@media (max-width:899px){
  body.thetawire-gallery-page,
  body.thetawire-gallery-page main,
  body.thetawire-gallery-page .gallery-page,
  body.thetawire-gallery-page .gallery-main,
  body.thetawire-gallery-page .gallery-shell,
  body.thetawire-gallery-page .gallery-content{
    background:#f5f7fa !important;
    background-color:#f5f7fa !important;
  }

  body.thetawire-gallery-page .gallery-card,
  body.thetawire-gallery-page .gallery-item,
  body.thetawire-gallery-page .gallery-album,
  body.thetawire-gallery-page .gallery-panel{
    background:#ffffff !important;
    background-color:#ffffff !important;
  }

  body.thetawire-gallery-page img,
  body.thetawire-gallery-page video{
    max-width:100% !important;
    height:auto;
  }
}


/* ==========================================================
   ThetaWire v1.9.28
   Gallery detail / selected-gallery view light fix
   Applies to gallery.php?gallery=<slug> such as ?gallery=walls
   ========================================================== */

body.thetawire-gallery-page .gallery-detail,
body.thetawire-gallery-page .gallery-view,
body.thetawire-gallery-page .gallery-selected,
body.thetawire-gallery-page .gallery-detail-header,
body.thetawire-gallery-page .gallery-detail-body,
body.thetawire-gallery-page .gallery-media-grid,
body.thetawire-gallery-page .gallery-items,
body.thetawire-gallery-page .gallery-images,
body.thetawire-gallery-page .gallery-navigation,
body.thetawire-gallery-page .gallery-breadcrumbs,
body.thetawire-gallery-page .gallery-back,
body.thetawire-gallery-page .gallery-pagination{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

body.thetawire-gallery-page .gallery-detail h1,
body.thetawire-gallery-page .gallery-detail h2,
body.thetawire-gallery-page .gallery-detail h3,
body.thetawire-gallery-page .gallery-view h1,
body.thetawire-gallery-page .gallery-view h2,
body.thetawire-gallery-page .gallery-selected h1{
  color:#17212b !important;
}

body.thetawire-gallery-page .gallery-detail p,
body.thetawire-gallery-page .gallery-view p,
body.thetawire-gallery-page .gallery-selected p,
body.thetawire-gallery-page .gallery-breadcrumbs{
  color:#66727e !important;
}

/* Individual media tiles and captions in a selected gallery. */
body.thetawire-gallery-page .gallery-media,
body.thetawire-gallery-page .gallery-media-item,
body.thetawire-gallery-page .gallery-photo,
body.thetawire-gallery-page .gallery-tile,
body.thetawire-gallery-page .gallery-figure,
body.thetawire-gallery-page .gallery-caption{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

/* Links/back navigation use ThetaWire blue. */
body.thetawire-gallery-page .gallery-detail a,
body.thetawire-gallery-page .gallery-view a,
body.thetawire-gallery-page .gallery-selected a,
body.thetawire-gallery-page .gallery-back a,
body.thetawire-gallery-page .gallery-breadcrumbs a{
  color:#078dcc !important;
}

/* Catch legacy nested DarkLow wrappers used only after a gallery is opened. */
body.thetawire-gallery-page .gallery-content > section,
body.thetawire-gallery-page .gallery-content > article,
body.thetawire-gallery-page .gallery-main > section,
body.thetawire-gallery-page .gallery-main > article{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

@media (max-width:899px){
  body.thetawire-gallery-page .gallery-detail,
  body.thetawire-gallery-page .gallery-view,
  body.thetawire-gallery-page .gallery-selected,
  body.thetawire-gallery-page .gallery-detail-body,
  body.thetawire-gallery-page .gallery-media-grid,
  body.thetawire-gallery-page .gallery-items,
  body.thetawire-gallery-page .gallery-images{
    background:#ffffff !important;
    background-color:#ffffff !important;
    width:100% !important;
    max-width:100% !important;
  }

  body.thetawire-gallery-page .gallery-media,
  body.thetawire-gallery-page .gallery-media-item,
  body.thetawire-gallery-page .gallery-photo,
  body.thetawire-gallery-page .gallery-tile{
    background:#ffffff !important;
    background-color:#ffffff !important;
    max-width:100% !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.29
   Public Contact — remove legacy black/DarkLow presentation
   ========================================================== */

body.thetawire-contact-page,
body.public-site.thetawire-contact-page{
  background:#f5f7fa !important;
  background-color:#f5f7fa !important;
  color:#17212b !important;
}

body.thetawire-contact-page main,
body.thetawire-contact-page .contact-page,
body.thetawire-contact-page .contact-main,
body.thetawire-contact-page .contact-shell,
body.thetawire-contact-page .contact-content,
body.thetawire-contact-page .public-page-layout,
body.thetawire-contact-page .public-page-main{
  background:#f5f7fa !important;
  background-color:#f5f7fa !important;
  color:#17212b !important;
}

/* Legacy Contact banner/header becomes a clean ThetaWire light banner. */
body.thetawire-contact-page .contact-banner,
body.thetawire-contact-page .contact-hero,
body.thetawire-contact-page .contact-header,
body.thetawire-contact-page .page-banner{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

body.thetawire-contact-page .contact-banner h1,
body.thetawire-contact-page .contact-hero h1,
body.thetawire-contact-page .contact-header h1,
body.thetawire-contact-page .page-banner h1{
  color:#17212b !important;
}

body.thetawire-contact-page .contact-banner p,
body.thetawire-contact-page .contact-hero p,
body.thetawire-contact-page .contact-header p,
body.thetawire-contact-page .page-banner p{
  color:#66727e !important;
}

/* Contact form/card surfaces. */
body.thetawire-contact-page .contact-card,
body.thetawire-contact-page .contact-panel,
body.thetawire-contact-page .contact-form,
body.thetawire-contact-page form,
body.thetawire-contact-page .contact-security,
body.thetawire-contact-page .contact-status,
body.thetawire-contact-page .contact-success,
body.thetawire-contact-page .contact-error{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

body.thetawire-contact-page h1,
body.thetawire-contact-page h2,
body.thetawire-contact-page h3,
body.thetawire-contact-page h4{
  color:#17212b !important;
}

body.thetawire-contact-page p,
body.thetawire-contact-page label,
body.thetawire-contact-page .contact-help,
body.thetawire-contact-page .contact-note,
body.thetawire-contact-page .contact-security{
  color:#5f6c78 !important;
}

/* Form fields. */
body.thetawire-contact-page input,
body.thetawire-contact-page select,
body.thetawire-contact-page textarea{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#cfd8e1 !important;
  box-shadow:none !important;
}

body.thetawire-contact-page input::placeholder,
body.thetawire-contact-page textarea::placeholder{
  color:#8995a1 !important;
}

body.thetawire-contact-page input:focus,
body.thetawire-contact-page select:focus,
body.thetawire-contact-page textarea:focus{
  border-color:#078dcc !important;
  outline-color:#078dcc !important;
}

/* Primary action keeps ThetaWire blue visual language. */
body.thetawire-contact-page button,
body.thetawire-contact-page .contact-submit,
body.thetawire-contact-page input[type="submit"]{
  background:#078dcc !important;
  background-color:#078dcc !important;
  color:#ffffff !important;
  border-color:#078dcc !important;
}

body.thetawire-contact-page button:hover,
body.thetawire-contact-page button:focus-visible,
body.thetawire-contact-page .contact-submit:hover,
body.thetawire-contact-page .contact-submit:focus-visible,
body.thetawire-contact-page input[type="submit"]:hover,
body.thetawire-contact-page input[type="submit"]:focus-visible{
  background:#067eb7 !important;
  background-color:#067eb7 !important;
  border-color:#067eb7 !important;
}

/* Safe-failure / service-unavailable boxes should be light, not black. */
body.thetawire-contact-page .contact-unavailable,
body.thetawire-contact-page .contact-warning,
body.thetawire-contact-page .contact-message{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

/* Mobile contact page stays light and width-safe. */
@media (max-width:899px){
  body.thetawire-contact-page,
  body.thetawire-contact-page main,
  body.thetawire-contact-page .contact-page,
  body.thetawire-contact-page .contact-main,
  body.thetawire-contact-page .contact-shell,
  body.thetawire-contact-page .contact-content,
  body.thetawire-contact-page .contact-card,
  body.thetawire-contact-page .contact-panel,
  body.thetawire-contact-page .contact-form,
  body.thetawire-contact-page form{
    background:#ffffff !important;
    background-color:#ffffff !important;
    max-width:100% !important;
  }

  body.thetawire-contact-page .contact-page,
  body.thetawire-contact-page .contact-main,
  body.thetawire-contact-page .contact-shell,
  body.thetawire-contact-page .contact-content{
    background:#f5f7fa !important;
    background-color:#f5f7fa !important;
  }

  body.thetawire-contact-page input,
  body.thetawire-contact-page select,
  body.thetawire-contact-page textarea,
  body.thetawire-contact-page button{
    width:100%;
    max-width:100%;
  }
}


/* ==========================================================
   ThetaWire v1.9.30
   Contact standalone legacy HEADER/NAV/BANNER hard override
   ========================================================== */

/*
 * contact/index.php carries legacy top-of-page chrome separate from the
 * normal homepage shell. Override the top-level header/nav/banner elements
 * inside the Contact page itself rather than only styling the form.
 */
body.thetawire-contact-page > header,
body.thetawire-contact-page header.site-header,
body.thetawire-contact-page header.public-header,
body.thetawire-contact-page .site-header,
body.thetawire-contact-page .public-header,
body.thetawire-contact-page .top-header,
body.thetawire-contact-page .main-header,
body.thetawire-contact-page .header,
body.thetawire-contact-page #header{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

body.thetawire-contact-page > nav,
body.thetawire-contact-page header nav,
body.thetawire-contact-page .site-nav,
body.thetawire-contact-page .public-nav,
body.thetawire-contact-page .top-nav,
body.thetawire-contact-page .main-nav,
body.thetawire-contact-page .navbar,
body.thetawire-contact-page #nav{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

body.thetawire-contact-page header a,
body.thetawire-contact-page > nav a,
body.thetawire-contact-page .site-nav a,
body.thetawire-contact-page .public-nav a,
body.thetawire-contact-page .top-nav a,
body.thetawire-contact-page .main-nav a,
body.thetawire-contact-page .navbar a{
  color:#17212b !important;
}

body.thetawire-contact-page header a:hover,
body.thetawire-contact-page header a:focus-visible,
body.thetawire-contact-page > nav a:hover,
body.thetawire-contact-page > nav a:focus-visible,
body.thetawire-contact-page .site-nav a:hover,
body.thetawire-contact-page .site-nav a:focus-visible,
body.thetawire-contact-page .public-nav a:hover,
body.thetawire-contact-page .public-nav a:focus-visible{
  color:#078dcc !important;
}

/* Old full-width banner variants used by the copied Contact application. */
body.thetawire-contact-page > .banner,
body.thetawire-contact-page .site-banner,
body.thetawire-contact-page .public-banner,
body.thetawire-contact-page .brand-banner,
body.thetawire-contact-page .hero-banner,
body.thetawire-contact-page .contact-banner,
body.thetawire-contact-page .contact-hero,
body.thetawire-contact-page .page-banner,
body.thetawire-contact-page .masthead,
body.thetawire-contact-page #banner{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

/* Hide copied DarkLow decorative/banner background imagery while preserving logos/content. */
body.thetawire-contact-page .site-banner::before,
body.thetawire-contact-page .site-banner::after,
body.thetawire-contact-page .brand-banner::before,
body.thetawire-contact-page .brand-banner::after,
body.thetawire-contact-page .contact-banner::before,
body.thetawire-contact-page .contact-banner::after,
body.thetawire-contact-page .masthead::before,
body.thetawire-contact-page .masthead::after{
  background-image:none !important;
  box-shadow:none !important;
}

/* Contact top logo sizing: use the current ThetaWire logo cleanly on white. */
body.thetawire-contact-page header img,
body.thetawire-contact-page .site-header img,
body.thetawire-contact-page .public-header img,
body.thetawire-contact-page .brand-banner img{
  object-fit:contain;
}

/* Mobile header/nav must not revert to the legacy black Contact theme. */
@media (max-width:899px){
  body.thetawire-contact-page > header,
  body.thetawire-contact-page header,
  body.thetawire-contact-page > nav,
  body.thetawire-contact-page header nav,
  body.thetawire-contact-page .site-nav,
  body.thetawire-contact-page .public-nav,
  body.thetawire-contact-page .top-nav,
  body.thetawire-contact-page .main-nav,
  body.thetawire-contact-page .navbar,
  body.thetawire-contact-page .banner,
  body.thetawire-contact-page .site-banner,
  body.thetawire-contact-page .brand-banner,
  body.thetawire-contact-page .contact-banner,
  body.thetawire-contact-page .masthead{
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#17212b !important;
  }

  body.thetawire-contact-page header a,
  body.thetawire-contact-page nav a{
    color:#17212b !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.31
   Gallery standalone legacy HEADER/NAV/BANNER hard override
   ========================================================== */

/*
 * gallery.php still carries copied legacy top-of-page chrome separate
 * from the normal homepage shell. Force Gallery header/nav/banner into
 * the ThetaWire light presentation on both gallery listing and detail views.
 */

body.thetawire-gallery-page > header,
body.thetawire-gallery-page header.site-header,
body.thetawire-gallery-page header.public-header,
body.thetawire-gallery-page .site-header,
body.thetawire-gallery-page .public-header,
body.thetawire-gallery-page .top-header,
body.thetawire-gallery-page .main-header,
body.thetawire-gallery-page .header,
body.thetawire-gallery-page #header{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

body.thetawire-gallery-page > nav,
body.thetawire-gallery-page header nav,
body.thetawire-gallery-page .site-nav,
body.thetawire-gallery-page .public-nav,
body.thetawire-gallery-page .top-nav,
body.thetawire-gallery-page .main-nav,
body.thetawire-gallery-page .navbar,
body.thetawire-gallery-page #nav{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
}

body.thetawire-gallery-page header a,
body.thetawire-gallery-page > nav a,
body.thetawire-gallery-page .site-nav a,
body.thetawire-gallery-page .public-nav a,
body.thetawire-gallery-page .top-nav a,
body.thetawire-gallery-page .main-nav a,
body.thetawire-gallery-page .navbar a{
  color:#17212b !important;
}

body.thetawire-gallery-page header a:hover,
body.thetawire-gallery-page header a:focus-visible,
body.thetawire-gallery-page > nav a:hover,
body.thetawire-gallery-page > nav a:focus-visible,
body.thetawire-gallery-page .site-nav a:hover,
body.thetawire-gallery-page .site-nav a:focus-visible,
body.thetawire-gallery-page .public-nav a:hover,
body.thetawire-gallery-page .public-nav a:focus-visible{
  color:#078dcc !important;
}

/* Old full-width gallery banner/masthead variants. */
body.thetawire-gallery-page > .banner,
body.thetawire-gallery-page .site-banner,
body.thetawire-gallery-page .public-banner,
body.thetawire-gallery-page .brand-banner,
body.thetawire-gallery-page .hero-banner,
body.thetawire-gallery-page .gallery-banner,
body.thetawire-gallery-page .gallery-hero,
body.thetawire-gallery-page .page-banner,
body.thetawire-gallery-page .masthead,
body.thetawire-gallery-page #banner{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border-color:#d9e1e8 !important;
  box-shadow:none !important;
}

/* Remove copied legacy decorative/background layers from the banner. */
body.thetawire-gallery-page .site-banner::before,
body.thetawire-gallery-page .site-banner::after,
body.thetawire-gallery-page .brand-banner::before,
body.thetawire-gallery-page .brand-banner::after,
body.thetawire-gallery-page .gallery-banner::before,
body.thetawire-gallery-page .gallery-banner::after,
body.thetawire-gallery-page .masthead::before,
body.thetawire-gallery-page .masthead::after{
  background-image:none !important;
  box-shadow:none !important;
}

/* Keep existing ThetaWire logo/image assets clean on white. */
body.thetawire-gallery-page header img,
body.thetawire-gallery-page .site-header img,
body.thetawire-gallery-page .public-header img,
body.thetawire-gallery-page .brand-banner img{
  object-fit:contain;
}

/* Mobile header/nav must remain light. */
@media (max-width:899px){
  body.thetawire-gallery-page > header,
  body.thetawire-gallery-page header,
  body.thetawire-gallery-page > nav,
  body.thetawire-gallery-page header nav,
  body.thetawire-gallery-page .site-nav,
  body.thetawire-gallery-page .public-nav,
  body.thetawire-gallery-page .top-nav,
  body.thetawire-gallery-page .main-nav,
  body.thetawire-gallery-page .navbar,
  body.thetawire-gallery-page .banner,
  body.thetawire-gallery-page .site-banner,
  body.thetawire-gallery-page .brand-banner,
  body.thetawire-gallery-page .gallery-banner,
  body.thetawire-gallery-page .gallery-hero,
  body.thetawire-gallery-page .masthead{
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#17212b !important;
  }

  body.thetawire-gallery-page header a,
  body.thetawire-gallery-page nav a{
    color:#17212b !important;
  }
}



/* ==========================================================
   ThetaWire v1.9.34
   Public Search — white results + spacing cleanup
   Applies both before and after a search is submitted.
   ========================================================== */

/* Search page canvas */
body.public-search-open,
body.public-search-open .public-page-layout,
body.public-search-open .public-page-main,
body.public-search-open main.public-search-shell{
  background:#f5f7fa !important;
  background-color:#f5f7fa !important;
  color:#17212b !important;
}

/* Give the search page balanced room below the top navigation. */
body.public-search-open main.public-search-shell{
  width:min(100%,1180px) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:34px 28px 48px !important;
  box-sizing:border-box !important;
}

/* Search input panel */
body.public-search-open .public-search-panel,
body.public-search-open .public-search-panel.public-search-panel--compact{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border:1px solid #d9e1e8 !important;
  border-radius:14px !important;
  box-shadow:0 5px 18px rgba(25,39,52,.045) !important;
  padding:24px !important;
  margin:0 !important;
}

body.public-search-open .public-search-panel > header{
  margin:0 0 18px !important;
  gap:14px !important;
}

body.public-search-open .public-search-panel > header > span{
  background:#e9f6fd !important;
  color:#078dcc !important;
}

body.public-search-open .public-search-panel h1{
  color:#17212b !important;
}

body.public-search-open .public-search-panel p{
  color:#66727e !important;
}

/* Search form */
body.public-search-open .public-search-form{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:12px !important;
  align-items:center !important;
  margin:0 !important;
}

body.public-search-open .public-search-form label{
  min-width:0 !important;
  margin:0 !important;
}

body.public-search-open .public-search-form input{
  width:100% !important;
  height:48px !important;
  margin:0 !important;
  padding:0 15px !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border:1px solid #cfd8e1 !important;
  border-radius:8px !important;
  box-shadow:none !important;
}

body.public-search-open .public-search-form input::placeholder{
  color:#8b96a2 !important;
}

body.public-search-open .public-search-form input:focus{
  border-color:#078dcc !important;
  box-shadow:0 0 0 3px rgba(7,141,204,.14) !important;
}

body.public-search-open .public-search-form button{
  height:48px !important;
  margin:0 !important;
  padding:0 22px !important;
  background:#078dcc !important;
  background-color:#078dcc !important;
  border-color:#078dcc !important;
  color:#ffffff !important;
  border-radius:8px !important;
}

body.public-search-open .public-search-form button:hover,
body.public-search-open .public-search-form button:focus-visible{
  background:#067eb7 !important;
  background-color:#067eb7 !important;
  border-color:#067eb7 !important;
}

/* Results wrapper */
body.public-search-open .public-search-results,
body.public-search-open .public-site-search-results{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  color:#17212b !important;
  margin:28px 0 0 !important;
  padding:0 !important;
  display:grid !important;
  gap:22px !important;
}

body.public-search-open .public-search-results > header{
  background:#ffffff !important;
  border:1px solid #d9e1e8 !important;
  border-radius:12px !important;
  padding:14px 16px !important;
  margin:0 !important;
  gap:16px !important;
}

body.public-search-open .public-search-results > header h2{
  color:#17212b !important;
}

body.public-search-open .public-search-results > header a{
  color:#078dcc !important;
}

/* Search result sections */
body.public-search-open .site-search-group{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border:1px solid #d9e1e8 !important;
  border-radius:12px !important;
  padding:16px !important;
  gap:12px !important;
  color:#17212b !important;
}

body.public-search-open .site-search-group-head{
  align-items:center !important;
  padding:0 2px 11px !important;
  margin:0 !important;
  border-bottom:1px solid #e0e6ec !important;
}

body.public-search-open .site-search-group-head span{
  color:#078dcc !important;
}

body.public-search-open .site-search-group-head h3{
  color:#17212b !important;
}

body.public-search-open .site-search-group-head strong{
  color:#66727e !important;
}

/* Individual results: remove old black result rows. */
body.public-search-open .site-search-list{
  gap:9px !important;
}

body.public-search-open .site-search-result{
  grid-template-columns:88px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:14px !important;
  padding:14px 16px !important;
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border:1px solid #dce3e9 !important;
  border-radius:9px !important;
}

body.public-search-open .site-search-result:hover,
body.public-search-open .site-search-result:focus-visible{
  background:#f6fafc !important;
  background-color:#f6fafc !important;
  border-color:#9ecfe7 !important;
}

body.public-search-open .site-search-type{
  color:#078dcc !important;
}

body.public-search-open .site-search-result h4{
  color:#17212b !important;
}

body.public-search-open .site-search-result p{
  color:#56626e !important;
}

body.public-search-open .site-search-result small{
  color:#76828e !important;
}

body.public-search-open .site-search-open{
  color:#078dcc !important;
}

/* No-results state */
body.public-search-open .public-empty-posts{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#17212b !important;
  border:1px solid #d9e1e8 !important;
  border-radius:12px !important;
  padding:26px !important;
  margin:0 !important;
}

body.public-search-open .public-empty-posts h1{
  color:#17212b !important;
}

body.public-search-open .public-empty-posts p{
  color:#66727e !important;
}

/* Footer should not collide with results. */
body.public-search-open .public-footer{
  margin-top:0 !important;
  background:#f5f7fa !important;
}

/* Tablet/mobile spacing and result layout. */
@media(max-width:899px){
  body.public-search-open main.public-search-shell{
    width:100% !important;
    max-width:100% !important;
    padding:22px 16px 36px !important;
  }

  body.public-search-open .public-search-panel,
  body.public-search-open .public-search-panel.public-search-panel--compact{
    padding:20px !important;
  }

  body.public-search-open .public-search-results,
  body.public-search-open .public-site-search-results{
    margin-top:22px !important;
    gap:16px !important;
  }

  body.public-search-open .site-search-group{
    padding:14px !important;
  }
}

@media(max-width:639px){
  body.public-search-open main.public-search-shell{
    padding:16px 12px 30px !important;
  }

  body.public-search-open .public-search-panel,
  body.public-search-open .public-search-panel.public-search-panel--compact{
    padding:17px 14px !important;
  }

  body.public-search-open .public-search-panel > header{
    align-items:flex-start !important;
  }

  body.public-search-open .public-search-form{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  body.public-search-open .public-search-form button{
    width:100% !important;
  }

  body.public-search-open .public-search-results > header{
    display:grid !important;
    grid-template-columns:1fr !important;
    align-items:start !important;
    gap:8px !important;
    padding:13px 14px !important;
  }

  body.public-search-open .site-search-group-head{
    align-items:start !important;
  }

  body.public-search-open .site-search-result{
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:8px 12px !important;
    padding:13px !important;
  }

  body.public-search-open .site-search-type{
    grid-column:1 / -1 !important;
  }

  body.public-search-open .site-search-open{
    align-self:center !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.35
   Search result header positioning
   - Close search: left
   - Result count: right and slightly lower
   ========================================================== */

body.public-search-open .public-search-results > header{
  position:relative !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  grid-template-areas:"close title count" !important;
  align-items:start !important;
  column-gap:18px !important;
  row-gap:4px !important;
  min-height:58px !important;
}

/* Close Search control */
body.public-search-open .public-search-results > header > a,
body.public-search-open .public-search-results > header .public-search-close,
body.public-search-open .public-search-results > header [data-search-close]{
  grid-area:close !important;
  justify-self:start !important;
  align-self:start !important;
  margin:0 !important;
  order:0 !important;
  color:#078dcc !important;
  white-space:nowrap !important;
}

/* Search results title/label */
body.public-search-open .public-search-results > header > h2,
body.public-search-open .public-search-results > header .public-search-results-title{
  grid-area:title !important;
  justify-self:start !important;
  align-self:start !important;
  margin:0 !important;
}

/* Result count, e.g. "0 RESULTS" */
body.public-search-open .public-search-results > header > strong,
body.public-search-open .public-search-results > header .public-search-count,
body.public-search-open .public-search-results > header [data-search-count]{
  grid-area:count !important;
  justify-self:end !important;
  align-self:start !important;
  margin:10px 0 0 !important;
  color:#66727e !important;
  white-space:nowrap !important;
}

/* If the result count is a span instead of strong, keep it on the right too. */
body.public-search-open .public-search-results > header > span:last-child{
  justify-self:end !important;
  align-self:start !important;
  margin-top:10px !important;
  color:#66727e !important;
  white-space:nowrap !important;
}

/* Phone layout: Close Search stays left, count goes right and one line lower. */
@media(max-width:639px){
  body.public-search-open .public-search-results > header{
    grid-template-columns:1fr auto !important;
    grid-template-areas:
      "close close"
      "title count" !important;
    gap:8px 12px !important;
    min-height:0 !important;
  }

  body.public-search-open .public-search-results > header > a,
  body.public-search-open .public-search-results > header .public-search-close,
  body.public-search-open .public-search-results > header [data-search-close]{
    justify-self:start !important;
  }

  body.public-search-open .public-search-results > header > strong,
  body.public-search-open .public-search-results > header .public-search-count,
  body.public-search-open .public-search-results > header [data-search-count],
  body.public-search-open .public-search-results > header > span:last-child{
    justify-self:end !important;
    margin-top:6px !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.36
   Contact/Gallery shared header logo + shared slider controls
   ========================================================== */

/* Match the working homepage logo slot exactly. Never use intrinsic PNG width. */
body.thetawire-contact-page .public-topbar .public-brand,
body.thetawire-gallery-page .public-topbar .public-brand{
  flex:0 1 auto !important;
  min-width:0 !important;
}

body.thetawire-contact-page .public-topbar .public-brand img,
body.thetawire-gallery-page .public-topbar .public-brand img{
  display:block !important;
  width:min(330px,34vw) !important;
  max-width:min(330px,34vw) !important;
  height:46px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:none !important;
  opacity:1 !important;
  background:transparent !important;
}

/* Shared slider control geometry: same compact pill as homepage. */
body.thetawire-contact-page .public-hero-pagination,
body.thetawire-gallery-page .public-hero-pagination{
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:5px 8px !important;
}

body.thetawire-contact-page .public-hero-dots,
body.thetawire-gallery-page .public-hero-dots{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
}

body.thetawire-contact-page .public-hero-dot,
body.thetawire-gallery-page .public-hero-dot{
  width:17px !important;
  min-width:17px !important;
  height:17px !important;
  min-height:17px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.thetawire-contact-page .public-hero-dot > span,
body.thetawire-gallery-page .public-hero-dot > span{
  width:5px !important;
  height:5px !important;
  display:block !important;
  border-radius:999px !important;
  background:rgba(235,247,255,.46) !important;
}

body.thetawire-contact-page .public-hero-dot.is-active > span,
body.thetawire-gallery-page .public-hero-dot.is-active > span{
  width:17px !important;
  background:linear-gradient(90deg,#2fa6ff,#7bd0ff) !important;
}

body.thetawire-contact-page .public-hero-arrow,
body.thetawire-gallery-page .public-hero-arrow{
  width:30px !important;
  min-width:30px !important;
  height:30px !important;
  min-height:30px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:none !important;
}

@media(max-width:899px){
  body.thetawire-contact-page .public-topbar .public-brand img,
  body.thetawire-gallery-page .public-topbar .public-brand img{
    width:min(250px,58vw) !important;
    max-width:min(250px,58vw) !important;
    height:auto !important;
  }
}

@media(max-width:639px){
  body.thetawire-contact-page .public-hero-pagination,
  body.thetawire-gallery-page .public-hero-pagination{
    bottom:9px !important;
    padding:4px 6px !important;
    gap:5px !important;
  }
  body.thetawire-contact-page .public-hero-arrow,
  body.thetawire-gallery-page .public-hero-arrow{
    width:28px !important;
    min-width:28px !important;
    height:28px !important;
    min-height:28px !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.37
   Correct nav logo color on white/light navigation
   ========================================================== */
body.thetawire-contact-page .public-topbar .public-brand img,
body.thetawire-gallery-page .public-topbar .public-brand img{
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}


/* ==========================================================
   ThetaWire v1.9.38
   MAIN NAV DARK + BLOG DARK RESTORATION
   ========================================================== */

/* NAV DARK */
html[data-nav-theme="dark"] body.public-site .public-topbar,
body.public-site[data-nav-theme="dark"] .public-topbar,
body.public-site.nav-theme-dark .public-topbar{
  background:#050b11 !important;
  background-color:#050b11 !important;
  color:#f5fbff !important;
  border-bottom-color:rgba(255,255,255,.12) !important;
}

html[data-nav-theme="dark"] body.public-site .public-topbar a,
html[data-nav-theme="dark"] body.public-site .public-topbar button,
body.public-site[data-nav-theme="dark"] .public-topbar a,
body.public-site[data-nav-theme="dark"] .public-topbar button,
body.public-site.nav-theme-dark .public-topbar a,
body.public-site.nav-theme-dark .public-topbar button{
  color:#f5fbff !important;
}

html[data-nav-theme="dark"] body.public-site .public-topbar a:hover,
html[data-nav-theme="dark"] body.public-site .public-topbar a:focus-visible,
body.public-site[data-nav-theme="dark"] .public-topbar a:hover,
body.public-site[data-nav-theme="dark"] .public-topbar a:focus-visible{
  color:#41bdf5 !important;
}

/* BLOG DARK — desktop/tablet-large only.
   The approved mobile rule from v1.9.25 still keeps article surfaces white <=899px. */
@media (min-width:900px){
  html[data-blog-theme="dark"] body.public-site,
  body.public-site[data-blog-theme="dark"],
  body.public-site.blog-theme-dark{
    background:#070b10 !important;
    background-color:#070b10 !important;
    color:#edf5fb !important;
  }

  html[data-blog-theme="dark"] body.public-site .public-page-layout,
  html[data-blog-theme="dark"] body.public-site .public-page-main,
  html[data-blog-theme="dark"] body.public-site .public-main,
  html[data-blog-theme="dark"] body.public-site .public-content-column,
  html[data-blog-theme="dark"] body.public-site .public-previous,
  body.public-site[data-blog-theme="dark"] .public-page-layout,
  body.public-site[data-blog-theme="dark"] .public-page-main,
  body.public-site[data-blog-theme="dark"] .public-main,
  body.public-site[data-blog-theme="dark"] .public-content-column,
  body.public-site[data-blog-theme="dark"] .public-previous{
    background:#070b10 !important;
    background-color:#070b10 !important;
    color:#edf5fb !important;
  }

  html[data-blog-theme="dark"] body.public-site .public-feature-post,
  html[data-blog-theme="dark"] body.public-site .public-article-card,
  html[data-blog-theme="dark"] body.public-site .public-full-article,
  body.public-site[data-blog-theme="dark"] .public-feature-post,
  body.public-site[data-blog-theme="dark"] .public-article-card,
  body.public-site[data-blog-theme="dark"] .public-full-article{
    background:#0d141c !important;
    background-color:#0d141c !important;
    color:#edf5fb !important;
    border-color:#263747 !important;
  }

  html[data-blog-theme="dark"] body.public-site .public-post-header,
  html[data-blog-theme="dark"] body.public-site .public-post-body,
  html[data-blog-theme="dark"] body.public-site .public-post-copy,
  html[data-blog-theme="dark"] body.public-site .public-card-details,
  html[data-blog-theme="dark"] body.public-site .public-article-content,
  body.public-site[data-blog-theme="dark"] .public-post-header,
  body.public-site[data-blog-theme="dark"] .public-post-body,
  body.public-site[data-blog-theme="dark"] .public-post-copy,
  body.public-site[data-blog-theme="dark"] .public-card-details,
  body.public-site[data-blog-theme="dark"] .public-article-content{
    background:#0d141c !important;
    background-color:#0d141c !important;
    color:#dfeaf2 !important;
  }

  html[data-blog-theme="dark"] body.public-site h1,
  html[data-blog-theme="dark"] body.public-site h2,
  html[data-blog-theme="dark"] body.public-site h3,
  body.public-site[data-blog-theme="dark"] h1,
  body.public-site[data-blog-theme="dark"] h2,
  body.public-site[data-blog-theme="dark"] h3{
    color:#f5fbff !important;
  }

  html[data-blog-theme="dark"] body.public-site p,
  html[data-blog-theme="dark"] body.public-site li,
  body.public-site[data-blog-theme="dark"] p,
  body.public-site[data-blog-theme="dark"] li{
    color:#c3d0da !important;
  }

  html[data-blog-theme="dark"] body.public-site time,
  html[data-blog-theme="dark"] body.public-site .public-card-meta,
  body.public-site[data-blog-theme="dark"] time,
  body.public-site[data-blog-theme="dark"] .public-card-meta{
    color:#96a6b4 !important;
  }
}


/* ==========================================================
   ThetaWire v1.9.39
   NAV DARK — date/time contrast fix
   ========================================================== */

html[data-nav-theme="dark"] body.public-site .public-clock,
html[data-nav-theme="dark"] body.public-site .public-date-time,
html[data-nav-theme="dark"] body.public-site .public-topbar time,
html[data-nav-theme="dark"] body.public-site .public-topbar .date,
html[data-nav-theme="dark"] body.public-site .public-topbar .time,
body.public-site[data-nav-theme="dark"] .public-clock,
body.public-site[data-nav-theme="dark"] .public-date-time,
body.public-site[data-nav-theme="dark"] .public-topbar time,
body.public-site[data-nav-theme="dark"] .public-topbar .date,
body.public-site[data-nav-theme="dark"] .public-topbar .time,
body.public-site.nav-theme-dark .public-clock,
body.public-site.nav-theme-dark .public-date-time,
body.public-site.nav-theme-dark .public-topbar time,
body.public-site.nav-theme-dark .public-topbar .date,
body.public-site.nav-theme-dark .public-topbar .time{
  color:#eef5fb !important;
}

/* Any separator immediately before the clock should remain visible too. */
html[data-nav-theme="dark"] body.public-site .public-topbar .public-clock::before,
html[data-nav-theme="dark"] body.public-site .public-topbar .public-date-time::before,
body.public-site[data-nav-theme="dark"] .public-topbar .public-clock::before,
body.public-site[data-nav-theme="dark"] .public-topbar .public-date-time::before,
body.public-site.nav-theme-dark .public-topbar .public-clock::before,
body.public-site.nav-theme-dark .public-topbar .public-date-time::before{
  color:rgba(238,245,251,.58) !important;
  border-color:rgba(238,245,251,.32) !important;
}

/* Light NAV remains dark text. */
html[data-nav-theme="light"] body.public-site .public-clock,
html[data-nav-theme="light"] body.public-site .public-date-time,
html[data-nav-theme="light"] body.public-site .public-topbar time,
body.public-site[data-nav-theme="light"] .public-clock,
body.public-site[data-nav-theme="light"] .public-date-time,
body.public-site[data-nav-theme="light"] .public-topbar time{
  color:#26313c !important;
}


/* ==========================================================
   ThetaWire v1.9.40
   GLOBAL PUBLIC THEME STANDARDIZATION
   One header / one logo / one NAV theme behavior on every public page.
   This block is authoritative and intentionally overrides older
   page-specific Contact/Gallery header rules.
   ========================================================== */

/* ---------- Shared topbar geometry across ALL public pages ---------- */
body.public-site header.public-topbar[data-public-header]{
  display:grid !important;
  grid-template-columns:minmax(220px,340px) minmax(0,1fr) !important;
  align-items:center !important;
  width:100% !important;
  min-height:74px !important;
  padding:0 28px !important;
  margin:0 !important;
  box-sizing:border-box !important;
  border-bottom:1px solid !important;
  box-shadow:none !important;
}

/* Same logo slot on Home, Gallery, Contact and every future public page. */
body.public-site header.public-topbar[data-public-header] .public-brand{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

body.public-site header.public-topbar[data-public-header] .public-brand img{
  display:block !important;
  width:min(330px,32vw) !important;
  max-width:min(330px,32vw) !important;
  height:48px !important;
  max-height:48px !important;
  object-fit:contain !important;
  object-position:left center !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}

/* Same desktop nav spacing everywhere. */
body.public-site header.public-topbar[data-public-header] .public-topnav{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:clamp(18px,2vw,34px) !important;
  min-width:0 !important;
  background:transparent !important;
}

body.public-site header.public-topbar[data-public-header] .public-topnav > a{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  background:transparent !important;
  border:0 !important;
  white-space:nowrap !important;
}

body.public-site header.public-topbar[data-public-header] .public-nav-datetime{
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  padding-left:20px !important;
  margin-left:4px !important;
  border-left:1px solid !important;
  background:transparent !important;
}

/* ---------- NAV LIGHT: identical on every public page ---------- */
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header],
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header],
body.public-site.nav-theme-light header.public-topbar[data-public-header]{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#26313c !important;
  border-bottom-color:#d9e1e8 !important;
}

html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav > a,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header] .public-topnav,
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header] .public-topnav > a,
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header] .public-nav-datetime{
  color:#26313c !important;
}

html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header] .public-nav-datetime{
  border-left-color:#cfd8e1 !important;
}

/* ---------- NAV DARK: identical on every public page ---------- */
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header],
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header],
body.public-site.nav-theme-dark header.public-topbar[data-public-header]{
  background:#050b11 !important;
  background-color:#050b11 !important;
  color:#eef5fb !important;
  border-bottom-color:#22313f !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav > a,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header] .public-topnav,
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header] .public-topnav > a,
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site.nav-theme-dark header.public-topbar[data-public-header] .public-topnav,
body.public-site.nav-theme-dark header.public-topbar[data-public-header] .public-topnav > a,
body.public-site.nav-theme-dark header.public-topbar[data-public-header] .public-nav-datetime{
  color:#eef5fb !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header] .public-nav-datetime{
  border-left-color:#354858 !important;
}

/* Shared active/hover treatment. */
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav > a.active,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav > a:hover,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav > a:focus-visible{
  color:#078dcc !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav > a.active,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav > a:hover,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav > a:focus-visible{
  color:#62c9f7 !important;
}

/* ---------- Shared mobile header/drawer theme ---------- */
@media(max-width:899px){
  body.public-site header.public-topbar[data-public-header]{
    grid-template-columns:minmax(0,1fr) auto !important;
    min-height:66px !important;
    padding:0 16px !important;
  }

  body.public-site header.public-topbar[data-public-header] .public-brand img{
    width:min(245px,62vw) !important;
    max-width:min(245px,62vw) !important;
    height:42px !important;
    max-height:42px !important;
  }

  body.public-site header.public-topbar[data-public-header] .public-topnav{
    display:none !important;
  }

  html[data-nav-theme="light"] body.public-site .public-mobile-menu,
  body.public-site[data-nav-theme="light"] .public-mobile-menu{
    background:#ffffff !important;
    background-color:#ffffff !important;
    color:#26313c !important;
  }

  html[data-nav-theme="light"] body.public-site .public-mobile-menu a,
  html[data-nav-theme="light"] body.public-site .public-mobile-menu button,
  html[data-nav-theme="light"] body.public-site .public-mobile-menu-time{
    color:#26313c !important;
  }

  html[data-nav-theme="dark"] body.public-site .public-mobile-menu,
  body.public-site[data-nav-theme="dark"] .public-mobile-menu{
    background:#050b11 !important;
    background-color:#050b11 !important;
    color:#eef5fb !important;
  }

  html[data-nav-theme="dark"] body.public-site .public-mobile-menu a,
  html[data-nav-theme="dark"] body.public-site .public-mobile-menu button,
  html[data-nav-theme="dark"] body.public-site .public-mobile-menu-time{
    color:#eef5fb !important;
  }
}

/*
 * IMPORTANT:
 * Contact and Gallery no longer get their own header color system.
 * Their page-specific body classes may still style page CONTENT,
 * but the shared [data-public-header] above is authoritative.
 */


/* ==========================================================
   ThetaWire v1.9.41
   UNIFIED PUBLIC HEADER — HARD FIX
   Prevents Contact/Gallery legacy rules from coloring pieces
   of the shared header independently.
   ========================================================== */

/*
 * The shared header is ONE surface.
 * Every descendant inside the desktop topbar is transparent,
 * so page-specific legacy rules cannot create half-white /
 * half-black sections.
 */
body.public-site header.public-topbar[data-public-header] > *,
body.public-site header.public-topbar[data-public-header] .public-brand,
body.public-site header.public-topbar[data-public-header] .public-topnav,
body.public-site header.public-topbar[data-public-header] .public-topnav > a,
body.public-site header.public-topbar[data-public-header] .public-nav-datetime,
body.public-site.thetawire-contact-page header.public-topbar[data-public-header] > *,
body.public-site.thetawire-contact-page header.public-topbar[data-public-header] .public-topnav,
body.public-site.thetawire-contact-page header.public-topbar[data-public-header] .public-topnav > a,
body.public-site.thetawire-gallery-page header.public-topbar[data-public-header] > *,
body.public-site.thetawire-gallery-page header.public-topbar[data-public-header] .public-topnav,
body.public-site.thetawire-gallery-page header.public-topbar[data-public-header] .public-topnav > a{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}

/* LIGHT = one continuous white bar everywhere */
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header],
body.public-site[data-nav-theme="light"] header.public-topbar[data-public-header],
body.public-site.nav-theme-light header.public-topbar[data-public-header],
html[data-nav-theme="light"] body.public-site.thetawire-contact-page header.public-topbar[data-public-header],
html[data-nav-theme="light"] body.public-site.thetawire-gallery-page header.public-topbar[data-public-header]{
  background:#ffffff !important;
  background-color:#ffffff !important;
  color:#26313c !important;
  border-bottom-color:#d9e1e8 !important;
}

/* DARK = one continuous dark bar everywhere */
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header],
body.public-site[data-nav-theme="dark"] header.public-topbar[data-public-header],
body.public-site.nav-theme-dark header.public-topbar[data-public-header],
html[data-nav-theme="dark"] body.public-site.thetawire-contact-page header.public-topbar[data-public-header],
html[data-nav-theme="dark"] body.public-site.thetawire-gallery-page header.public-topbar[data-public-header]{
  background:#050b11 !important;
  background-color:#050b11 !important;
  color:#eef5fb !important;
  border-bottom-color:#22313f !important;
}

/* Force all shared nav text/icons to inherit the single header theme. */
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-topnav a,
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime{
  color:#26313c !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-topnav a,
html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime{
  color:#eef5fb !important;
}

/* SVG icons follow the same text color. */
body.public-site header.public-topbar[data-public-header] .public-icon{
  stroke:currentColor !important;
  color:inherit !important;
}

/* Date/time separator follows the unified theme too. */
html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime{
  border-left-color:#cfd8e1 !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-nav-datetime{
  border-left-color:#354858 !important;
}

/* Mobile menu button belongs to the same header surface. */
body.public-site header.public-topbar[data-public-header] .public-mobile-menu-button{
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
}

html[data-nav-theme="light"] body.public-site header.public-topbar[data-public-header] .public-mobile-menu-button{
  color:#26313c !important;
}

html[data-nav-theme="dark"] body.public-site header.public-topbar[data-public-header] .public-mobile-menu-button{
  color:#eef5fb !important;
}


/* ========================================================
   ThetaWire v1.9.42 — Sign In alignment correction
   Layout only. Authentication markup/logic is unchanged.
   ======================================================== */
@media (min-width: 900px) {
  .public-inline-login {
    --dl-public-sidebar-control-w: 202px;
  }

  /* One right-hand alignment line for heading, labels and controls. */
  .public-inline-login h2,
  .public-inline-login label,
  .public-inline-login input,
  .public-inline-login button {
    width: var(--dl-public-sidebar-control-w) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .public-inline-login h2,
  .public-inline-login label span {
    text-align: right !important;
  }

  .public-inline-login label {
    display: block !important;
  }

  .public-inline-login input {
    display: block !important;
    text-align: left !important;
    direction: ltr !important;
  }

  /* Match the button width to the two fields instead of the old 184px width. */
  .public-inline-login button {
    display: block !important;
    text-align: center !important;
  }
}


/* ========================================================
   ThetaWire v1.9.43 — Sign In hard alignment correction
   The focused password field was visually growing outside the
   common control edge because the focus ring rendered externally.
   Keep every control on one fixed alignment line.
   ======================================================== */
@media (min-width: 900px) {
  .public-inline-login {
    --dl-public-sidebar-control-w: 202px;
  }

  .public-inline-login h2,
  .public-inline-login label,
  .public-inline-login input,
  .public-inline-login button {
    width: var(--dl-public-sidebar-control-w) !important;
    max-width: var(--dl-public-sidebar-control-w) !important;
    box-sizing: border-box !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .public-inline-login label {
    display: block !important;
  }

  .public-inline-login label span {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: right !important;
  }

  .public-inline-login input {
    display: block !important;
    text-align: left !important;
    direction: ltr !important;
    outline: 0 !important;
  }

  /* Focus must not increase the apparent width of the field. */
  .public-inline-login input:focus,
  .public-inline-login input:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
    border-color: #9c63ee !important;
    box-shadow: inset 0 0 0 2px rgba(174, 112, 255, .72) !important;
  }

  .public-inline-login button {
    display: block !important;
    text-align: center !important;
  }
}


/* ========================================================
   ThetaWire v1.9.44 — Responsive Sign In alignment fix
   Root cause:
   Between 900px and 1199px the sidebar becomes 190px wide,
   while the Sign In controls were forced to 202px. That caused
   the fields/labels/button to overflow and clip at the right edge.
   ======================================================== */
@media (min-width: 900px) {
  .public-inline-login h2,
  .public-inline-login label,
  .public-inline-login input,
  .public-inline-login button {
    width: 100% !important;
    max-width: 202px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .public-inline-login label span {
    display: block !important;
    width: 100% !important;
    text-align: right !important;
  }

  .public-inline-login input {
    min-width: 0 !important;
    text-align: left !important;
    direction: ltr !important;
  }

  .public-inline-login button {
    min-width: 0 !important;
    text-align: center !important;
  }

  .public-inline-login input:focus,
  .public-inline-login input:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
    border-color: #9c63ee !important;
    box-shadow: inset 0 0 0 2px rgba(174,112,255,.72) !important;
  }
}

/* At the compact desktop breakpoint the sidebar is 190px.
   Controls now shrink with it instead of overflowing. */
@media (min-width: 900px) and (max-width: 1199px) {
  .public-inline-login h2,
  .public-inline-login label,
  .public-inline-login input,
  .public-inline-login button {
    max-width: 100% !important;
  }
}


/* ========================================================
   ThetaWire v1.9.45 — Sign In true alignment correction
   Root cause:
   The 202px login controls were anchored to the RIGHT edge
   of the sidebar, leaving all spare space on the left.
   This made the entire form look shifted/crooked.
   ======================================================== */
@media (min-width: 900px) {
  .public-inline-login {
    box-sizing: border-box !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  /* Center the actual login column inside the sidebar. */
  .public-inline-login h2,
  .public-inline-login label,
  .public-inline-login button {
    width: min(202px, 100%) !important;
    max-width: 202px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  .public-inline-login label {
    display: block !important;
  }

  .public-inline-login label span {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-align: right !important;
  }

  /* Inputs fill their centered label block exactly. */
  .public-inline-login input[type="text"],
  .public-inline-login input[type="password"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
    direction: ltr !important;
  }

  .public-inline-login button[type="submit"] {
    display: block !important;
    text-align: center !important;
  }

  .public-inline-login input:focus,
  .public-inline-login input:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: inset 0 0 0 2px rgba(174,112,255,.72) !important;
  }
}


/* ThetaWire v1.9.47 — restore breathing room below hero after category-row removal */
.public-page-layout{
  margin-top: 28px !important;
}
@media (max-width: 899px){
  .public-page-layout{
    margin-top: 18px !important;
  }
}


/* ThetaWire v1.9.48 — align right sidebar/Appearance with blog top */
@media (min-width: 900px){
  .public-page-layout{
    align-items:start !important;
  }

  .public-page-layout > .public-page-main,
  .public-page-layout > .public-side-menu.public-right-sidebar{
    margin-top:0 !important;
    align-self:start !important;
  }
}


/* ========================================================
   ThetaWire v1.9.49 — Sidebar top alignment HARD FIX
   v1.9.47 moved the whole grid down, which necessarily moved
   BOTH the blog and sidebar. Put that spacing on the blog only.
   ======================================================== */
.public-page-layout{
  margin-top:0 !important;
}

@media (min-width:900px){
  .public-page-layout{
    align-items:start !important;
  }

  .public-page-layout > .public-page-main{
    margin-top:28px !important;
  }

  .public-page-layout > .public-side-menu.public-right-sidebar{
    margin-top:28px !important;
    transform:none !important;
    top:auto !important;
    align-self:start !important;
  }
}

/* Both columns now start on exactly the same 28px baseline below the hero. */
@media (max-width:899px){
  .public-page-layout{
    margin-top:18px !important;
  }
}


/* ========================================================
   ThetaWire v1.9.51 — Correct right sidebar alignment
   Root cause:
   .public-page-layout > .public-side-menu already has padding-top:28px.
   v1.9.49 also added margin-top:28px, making the sidebar's visible
   content begin 56px down while the blog begins 28px down.
   Keep the existing 28px sidebar padding and remove the extra margin.
   ======================================================== */
@media (min-width:900px){
  .public-page-layout > .public-page-main{
    margin-top:28px !important;
  }

  .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:0 !important;
    padding-top:28px !important;
    top:auto !important;
    transform:none !important;
    align-self:start !important;
  }
}


/* ThetaWire v1.9.57 — BLOG Voting & Rating System */
.post-feedback{margin-top:26px;padding:14px 0 4px;border-top:1px solid rgba(120,135,150,.28);color:inherit;font:inherit}
.post-feedback-line{display:flex;align-items:center;flex-wrap:wrap;gap:12px;min-height:38px}
.post-feedback-line+.post-feedback-line{margin-top:2px}
.post-feedback-vote{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:3px 7px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}
.post-feedback-vote:hover,.post-feedback-vote[aria-pressed="true"]{border-color:rgba(65,150,235,.55);background:rgba(65,150,235,.10)}
.post-feedback-score{font-weight:600}.post-feedback-score strong{font-weight:800}
.post-feedback-stars{display:inline-flex;align-items:center;gap:0}
.post-feedback-star{width:27px;height:34px;padding:0;border:0;background:transparent;color:#8b96a5;font-size:25px;line-height:1;cursor:pointer}
.post-feedback-star.is-active,.post-feedback-star.is-preview{color:#f0b51f}
.post-feedback-rating-summary{display:inline-flex;align-items:baseline;gap:8px;font-weight:600}
.post-feedback-rating-summary strong{font-weight:800}
.post-feedback-status{display:block;min-height:18px;margin-top:2px;font-size:12px;opacity:.72}
.post-feedback.is-busy{opacity:.72}
.post-feedback button:focus-visible{outline:2px solid #2d8de0;outline-offset:2px}
html[data-blog-theme="dark"] .post-feedback,body[data-blog-theme="dark"] .post-feedback{border-top-color:rgba(220,232,244,.20)}
html[data-blog-theme="dark"] .post-feedback-vote:hover,html[data-blog-theme="dark"] .post-feedback-vote[aria-pressed="true"],body[data-blog-theme="dark"] .post-feedback-vote:hover,body[data-blog-theme="dark"] .post-feedback-vote[aria-pressed="true"]{background:rgba(85,167,255,.14)}
@media(max-width:700px){.post-feedback{padding-top:12px}.post-feedback-line{gap:9px}.post-feedback-vote{min-height:44px}.post-feedback-star{width:31px;height:44px;font-size:26px}.post-feedback-rating-summary{gap:6px}}
.article-feedback-admin{margin:18px 0;padding:16px;border:1px solid rgba(120,135,150,.28);border-radius:12px;background:rgba(127,127,127,.045)}
.article-feedback-admin h3{margin:0 0 6px}.article-feedback-admin p{margin:0 0 14px;line-height:1.65}.article-feedback-admin-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}


/* ==========================================================
   ThetaWire v1.9.58 — centered BLOG feedback footer
   Desktop:
     Author | [compact 2-line voting/rating] | Eye + Hits
   Mobile:
     Author
     compact 2-line voting/rating
     Eye + Hits
   ========================================================== */

.public-post-footer-meta{
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(300px,auto) minmax(150px,1fr);
  align-items:center;
  column-gap:22px;
  row-gap:10px;
  margin-top:26px;
  margin-bottom:22px;
  padding-top:18px;
  padding-bottom:6px;
  border-top:1px solid rgba(120,135,150,.24);
}

.public-post-author{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0;
  justify-self:start;
}

.public-post-footer-meta .public-post-author strong{
  font-size:14px;
  line-height:1.3;
}

.public-post-feedback-slot{
  justify-self:center;
  text-align:center;
  min-width:0;
}

.public-post-feedback-slot .post-feedback{
  margin:0;
  padding:0;
  border-top:0;
}

.public-post-feedback-slot .post-feedback-line{
  justify-content:center;
  flex-wrap:nowrap;
  min-height:28px;
  gap:10px;
  white-space:nowrap;
}

.public-post-feedback-slot .post-feedback-line + .post-feedback-line{
  margin-top:0;
}

.public-post-feedback-slot .post-feedback-vote{
  min-height:30px;
  padding:1px 5px;
}

.public-post-feedback-slot .post-feedback-stars{
  line-height:1;
}

.public-post-feedback-slot .post-feedback-star{
  width:24px;
  height:29px;
  font-size:22px;
}

.public-post-feedback-slot .post-feedback-rating-summary{
  gap:7px;
}

.public-post-feedback-slot .post-feedback-status{
  min-height:0;
  height:0;
  margin:0;
  overflow:visible;
  position:relative;
  top:2px;
  font-size:11px;
}

.public-post-footer-meta .public-post-hits{
  display:inline-flex;
  align-items:center;
  gap:7px;
  justify-self:end;
  margin-left:0;
  width:auto;
  white-space:nowrap;
  font-size:13px;
  font-weight:700;
  line-height:1.2;
}

.public-post-footer-meta .public-post-hits .public-icon{
  width:17px;
  height:17px;
  flex:0 0 auto;
}

.public-reader-footer-meta{
  margin-top:30px;
}

html[data-blog-theme="dark"] .public-post-footer-meta,
body[data-blog-theme="dark"] .public-post-footer-meta{
  border-top-color:rgba(220,232,244,.18);
}

@media(max-width:760px){
  .public-post-footer-meta{
    grid-template-columns:1fr;
    justify-items:center;
    row-gap:7px;
    margin-top:24px;
    margin-bottom:20px;
    padding-top:17px;
  }

  .public-post-author{
    justify-self:center;
  }

  .public-post-feedback-slot{
    justify-self:center;
    width:100%;
  }

  .public-post-feedback-slot .post-feedback-line{
    justify-content:center;
    flex-wrap:nowrap;
    gap:8px;
  }

  .public-post-feedback-slot .post-feedback-vote{
    min-height:34px;
  }

  .public-post-feedback-slot .post-feedback-star{
    width:25px;
    height:31px;
    font-size:23px;
  }

  .public-post-footer-meta .public-post-hits{
    justify-self:center;
    width:auto;
    margin-left:0;
    font-size:13px;
  }
}


/* ============================================================
   ThetaWire v1.9.59 — Media Discovery Phase 1
   ============================================================ */

.thetawire-appearance-flyout{
  position:relative;
  margin:0 0 10px;
  border:0;
}
.thetawire-appearance-flyout > summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:6px 9px;
  border:1px solid var(--public-border,#d8dee8);
  border-radius:9px;
  background:var(--public-surface,#fff);
  color:inherit;
  font-size:11px;
  cursor:pointer;
  user-select:none;
}
.thetawire-appearance-flyout > summary::-webkit-details-marker{display:none}
.thetawire-appearance-flyout-body{
  margin-top:7px;
  padding:10px;
  border:1px solid var(--public-border,#d8dee8);
  border-radius:10px;
  background:var(--public-surface,#fff);
}
.thetawire-appearance-flyout .thetawire-theme-control{
  min-height:34px;
}
.thetawire-appearance-flyout .thetawire-theme-control + .thetawire-theme-control{
  margin-top:7px;
}

.media-discovery-launcher{
  padding:15px;
}
.media-discovery-launcher-head{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:flex-start;
}
.media-discovery-launcher-head > div{
  display:flex;
  gap:8px;
  align-items:flex-start;
  min-width:0;
}
.media-discovery-launcher-head strong{
  font-size:12px;
  line-height:1.25;
  letter-spacing:.055em;
}
.media-discovery-state{
  flex:0 0 auto;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  padding:4px 6px;
  border-radius:999px;
  border:1px solid currentColor;
  opacity:.72;
}
.media-discovery-launcher-copy{
  margin:10px 0 12px;
  font-size:12px;
  line-height:1.45;
  opacity:.78;
}
.media-discovery-launcher-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.media-discovery-launcher .space-tv-power-button{
  width:100%;
}
.media-discovery-preferences{
  margin-top:10px;
  border-top:1px solid rgba(120,135,150,.22);
  padding-top:8px;
}
.media-discovery-preferences > summary{
  cursor:pointer;
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
}
.media-discovery-preferences-body{
  padding-top:10px;
}
.media-discovery-preferences-body > p{
  margin:0 0 8px;
  font-size:11px;
  opacity:.7;
}
.media-discovery-preference-list{
  display:grid;
  grid-template-columns:1fr;
  gap:5px;
}
.media-discovery-preference-list label{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:28px;
  font-size:11px;
}
.media-discovery-preference-list input{
  margin:0;
}
.media-discovery-pref-select{
  display:grid;
  gap:4px;
  margin-top:9px;
  font-size:11px;
  font-weight:700;
}
.media-discovery-pref-select select{
  width:100%;
  min-height:34px;
  padding:5px 7px;
  border:1px solid var(--public-border,#d8dee8);
  border-radius:7px;
  background:var(--public-surface,#fff);
  color:inherit;
}
.media-discovery-save-preferences{
  width:100%;
  margin-top:10px;
  min-height:35px;
  border:1px solid currentColor;
  border-radius:8px;
  background:transparent;
  color:inherit;
  font-weight:800;
  cursor:pointer;
}
.media-discovery-hint{
  margin-top:10px;
  font-size:9px;
  line-height:1.3;
  text-align:center;
  opacity:.55;
}

.media-discovery-workspace{
  width:100%;
  margin-top:28px;
  padding:22px;
  border:1px solid rgba(120,135,150,.28);
  border-radius:18px;
  background:var(--public-surface,#fff);
  color:var(--public-text,#111827);
  box-shadow:0 18px 48px rgba(10,20,35,.08);
}
.media-discovery-workspace[hidden]{display:none!important}
.media-discovery-workspace-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding-bottom:13px;
  border-bottom:1px solid rgba(120,135,150,.20);
}
.media-discovery-workspace-head span{
  display:block;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
  color:#1774d2;
}
.media-discovery-workspace-head h1{
  margin:3px 0 0;
  font-size:24px;
  line-height:1.1;
}
.media-discovery-workspace-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.media-discovery-workspace-actions button,
.media-discovery-player-copy button{
  min-height:36px;
  padding:7px 11px;
  border:1px solid rgba(120,135,150,.35);
  border-radius:8px;
  background:transparent;
  color:inherit;
  font-weight:800;
  cursor:pointer;
}
.media-discovery-workspace-actions .is-stop{
  background:#111827;
  border-color:#111827;
  color:#fff;
}
.media-discovery-breadcrumb{
  margin-top:14px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.10em;
  color:#1774d2;
}
.media-discovery-instruction{
  margin:7px 0 0;
  font-size:12px;
  opacity:.68;
}
.media-discovery-rail-shell{
  position:relative;
  margin-top:12px;
  padding:4px 42px 7px;
}
.media-discovery-rail-shell[hidden]{display:none!important}
.media-discovery-rail{
  display:flex;
  gap:14px;
  overflow-x:auto;
  padding:7px 2px 13px;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  cursor:grab;
  user-select:none;
  outline:none;
}
.media-discovery-rail:active{cursor:grabbing}
.media-discovery-rail::-webkit-scrollbar{display:none}
.media-discovery-card{
  flex:0 0 clamp(230px,29vw,330px);
  min-height:260px;
  padding:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(120,135,150,.27);
  border-radius:15px;
  background:var(--public-surface,#fff);
  color:inherit;
  text-align:left;
  scroll-snap-align:start;
  cursor:pointer;
  transition:transform .17s ease,border-color .17s ease;
}
.media-discovery-card:hover,
.media-discovery-card:focus-visible{
  transform:translateY(-2px);
  border-color:#1774d2;
}
.media-discovery-card-visual{
  min-height:110px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  background:linear-gradient(135deg,rgba(30,116,210,.12),rgba(120,135,150,.05));
  font-size:38px;
  font-weight:900;
  letter-spacing:-.04em;
}
.media-discovery-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
  gap:7px;
  padding:15px;
}
.media-discovery-card-label{
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  color:#1774d2;
}
.media-discovery-card-body strong{
  font-size:16px;
  line-height:1.25;
}
.media-discovery-card-copy{
  font-size:12px;
  line-height:1.45;
  opacity:.72;
}
.media-discovery-card-body small{
  margin-top:auto;
  font-size:9px;
  letter-spacing:.05em;
  opacity:.58;
}
.media-discovery-arrow{
  position:absolute;
  top:50%;
  z-index:3;
  width:34px;
  height:50px;
  transform:translateY(-50%);
  border:1px solid rgba(120,135,150,.30);
  border-radius:9px;
  background:var(--public-surface,#fff);
  color:inherit;
  font-size:27px;
  line-height:1;
  cursor:pointer;
}
.media-discovery-arrow.is-prev{left:1px}
.media-discovery-arrow.is-next{right:1px}

.media-discovery-player{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(220px,.65fr);
  gap:18px;
  margin-top:18px;
}
.media-discovery-player[hidden]{display:none!important}
.media-discovery-player-frame{
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-radius:14px;
  background:#070b12;
}
.media-discovery-player-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.media-discovery-player-placeholder{
  min-height:330px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:28px;
  text-align:center;
  color:#fff;
}
.media-discovery-player-placeholder strong{
  font-size:17px;
  letter-spacing:.10em;
}
.media-discovery-player-placeholder span{
  max-width:420px;
  font-size:12px;
  opacity:.72;
}
.media-discovery-player-copy{
  align-self:center;
}
.media-discovery-player-copy > span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#1774d2;
}
.media-discovery-player-copy h2{
  margin:7px 0 8px;
  font-size:21px;
}
.media-discovery-player-copy p{
  font-size:12px;
  line-height:1.5;
  opacity:.72;
}

/* Media Discovery takes over the BLOG display area while active. */
body.media-discovery-active .public-content-column > .public-feature-post,
body.media-discovery-active .public-content-column > .public-empty-posts,
body.media-discovery-active .public-previous{
  display:none!important;
}

/* Existing calendar/special-live shells are not part of the v1.9.59
   Media Discovery workspace. Existing data/backend remains untouched. */
body.media-discovery-active .space-topics-panel,
body.media-discovery-active .space-events-calendar,
body.media-discovery-active .special-live-event{
  display:none!important;
}

html[data-blog-theme="dark"] .media-discovery-workspace,
body[data-blog-theme="dark"] .media-discovery-workspace,
html[data-blog-theme="dark"] .media-discovery-card,
body[data-blog-theme="dark"] .media-discovery-card{
  --public-surface:#0b1017;
  --public-text:#f5f7fa;
  background:#0b1017;
  color:#f5f7fa;
  border-color:rgba(230,238,248,.17);
}
html[data-blog-theme="dark"] .media-discovery-arrow,
body[data-blog-theme="dark"] .media-discovery-arrow{
  background:#101720;
  color:#fff;
  border-color:rgba(230,238,248,.18);
}

@media(max-width:899px){
  .thetawire-appearance-flyout{
    margin-bottom:8px;
  }
  .media-discovery-workspace{
    margin-top:18px;
    padding:14px;
    border-radius:13px;
  }
  .media-discovery-workspace-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .media-discovery-workspace-head h1{
    font-size:21px;
  }
  .media-discovery-rail-shell{
    padding-left:35px;
    padding-right:35px;
  }
  .media-discovery-card{
    flex-basis:min(80vw,310px);
    min-height:245px;
  }
  .media-discovery-player{
    grid-template-columns:1fr;
  }
  .media-discovery-player-frame,
  .media-discovery-player-placeholder{
    min-height:230px;
  }
}
@media(prefers-reduced-motion:reduce){
  .media-discovery-card{
    transition:none!important;
  }
}


/* ThetaWire v1.9.60 — Media Discovery sidebar title wrap */
.media-discovery-launcher-head strong{
  display:block;
}


/* ThetaWire v1.9.61 — center Media Discovery sidebar heading */
.media-discovery-launcher-head > div{
  flex:1 1 auto;
  justify-content:center;
  text-align:center;
}
.media-discovery-launcher-head strong{
  text-align:center;
}


/* ThetaWire v1.9.62 — Media Discovery sidebar spacing/readability */
.media-discovery-launcher-head{
  margin-bottom:14px;
}
.media-discovery-launcher-copy{
  margin:0 0 15px;
  font-size:13px;
  line-height:1.55;
  opacity:.86;
}
.media-discovery-hint{
  font-size:10px;
  line-height:1.4;
}


/* ThetaWire v1.9.63 — Media Discovery READY status readability */
.media-discovery-state{
  font-size:11px;
  padding:5px 8px;
  line-height:1.1;
}


/* ThetaWire v1.9.64 — requested two-line Media Discovery heading */
.media-discovery-launcher-head{
  margin-bottom:18px;
}
.media-discovery-launcher-head > div{
  align-items:flex-start;
}
.media-discovery-launcher-head strong{
  display:block;
  text-align:center;
  line-height:1.35;
}
.media-discovery-launcher-head strong > span{
  display:block;
  margin-top:5px;
}


/* ThetaWire v1.9.65 — Media Discovery launcher redesign */
.media-discovery-launcher{
  overflow:hidden;
}
.media-discovery-launcher-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0;
  margin-bottom:18px;
  text-align:center;
}
.media-discovery-launcher-head > .media-discovery-brand{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.media-discovery-brand-line{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:100%;
}
.media-discovery-logo{
  display:block;
  line-height:0;
}
.media-discovery-logo img{
  display:block;
  width:auto;
  max-width:132px;
  height:27px;
  object-fit:contain;
}
.media-discovery-media-word{
  font-size:17px;
  line-height:1;
  font-weight:700;
  letter-spacing:.12em;
  color:var(--tw-text, #15121b);
}
.media-discovery-launcher-head #media-discovery-title{
  display:block;
  margin-top:8px;
  font-size:25px;
  line-height:1.05;
  font-weight:500;
  letter-spacing:.015em;
  text-align:center;
}
.media-discovery-launcher-head .media-discovery-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:104px;
  min-height:46px;
  margin-top:20px;
  padding:9px 18px;
  border:1px solid rgba(104,72,145,.48);
  border-radius:999px;
  font-size:18px;
  line-height:1;
  font-weight:800;
  letter-spacing:.09em;
  text-align:center;
  box-shadow:0 6px 18px rgba(35,19,49,.08);
}
.media-discovery-launcher-copy{
  margin:0 0 18px;
  font-size:13px;
  line-height:1.55;
  text-align:center;
}
.media-discovery-launcher-actions{
  display:grid;
  gap:12px;
  margin-bottom:14px;
}
.media-discovery-launcher .space-tv-power-button{
  min-height:54px;
  border-radius:13px;
  font-size:16px;
  font-weight:750;
}
.media-discovery-preferences{
  margin-top:8px;
  border-top:1px solid rgba(100,92,112,.22);
  padding-top:8px;
}
.media-discovery-preferences > summary{
  position:relative;
  padding:12px 10px 12px 36px;
  font-size:16px;
  line-height:1.25;
  font-weight:750;
  cursor:pointer;
  list-style:none;
}
.media-discovery-preferences > summary::-webkit-details-marker{display:none}
.media-discovery-preferences > summary::before{
  content:"";
  position:absolute;
  left:10px;
  top:50%;
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
  border-left:13px solid currentColor;
  transform:translateY(-50%);
  transition:transform .18s ease;
}
.media-discovery-preferences[open] > summary::before{
  transform:translateY(-50%) rotate(90deg);
}
@media (max-width:899px){
  .media-discovery-logo img{max-width:122px;height:25px}
  .media-discovery-media-word{font-size:16px}
  .media-discovery-launcher-head #media-discovery-title{font-size:23px}
}


/* ==========================================================================
   ThetaWire v1.9.71 — Media Discovery BLOG-column containment
   HARD RULE:
   - controller remains in sidebar
   - workspace lives above first full BLOG post
   - workspace width never exceeds BLOG column
   - workspace height never exceeds first full BLOG post
   - every Discovery operation is clipped/contained inside this workspace
   ========================================================================== */

.public-content-column > .media-discovery-workspace{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  height:var(--media-discovery-boundary-height, min(56.25vw, 520px))!important;
  max-height:var(--media-discovery-boundary-height, 520px)!important;
  min-height:0!important;
  margin:28px 0 18px!important;
  padding:0!important;
  position:relative!important;
  overflow:hidden!important;
  contain:layout paint!important;
  isolation:isolate!important;
}

/* START must never replace, hide, widen or overlay BLOG posts. */
body.media-discovery-active .public-content-column > .public-feature-post,
body.media-discovery-active .public-content-column > .public-empty-posts,
body.media-discovery-active .public-previous{
  display:block!important;
}

/* The workspace itself owns the complete available rectangle. */
.media-discovery-workspace-head{
  box-sizing:border-box;
  height:68px;
  padding:12px 16px!important;
  overflow:hidden;
}
.media-discovery-workspace-head h1{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.media-discovery-breadcrumb{
  margin:9px 16px 0!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.media-discovery-instruction{
  margin:5px 16px 0!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Card operation area scrolls INSIDE the fixed post-sized workspace. */
.media-discovery-rail-shell{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:112px!important;
  bottom:0!important;
  margin:0!important;
  padding:8px 42px 12px!important;
  overflow:hidden!important;
}
.media-discovery-rail{
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  align-items:stretch!important;
}
.media-discovery-card{
  box-sizing:border-box!important;
  height:calc(100% - 8px)!important;
  min-height:0!important;
  max-height:100%!important;
}
.media-discovery-card-visual{
  flex:0 0 34%!important;
  min-height:0!important;
}
.media-discovery-card-body{
  min-height:0!important;
  overflow:hidden!important;
}
.media-discovery-card-copy{
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Player is an in-place state of the SAME rectangle, never a second panel. */
.media-discovery-player{
  position:absolute!important;
  z-index:8!important;
  inset:68px 0 0!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(180px,30%)!important;
  gap:12px!important;
  margin:0!important;
  padding:12px 16px 16px!important;
  overflow:hidden!important;
  background:var(--public-surface,#fff)!important;
}
.media-discovery-player[hidden]{display:none!important}
.media-discovery-player-frame{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
}
.media-discovery-player-placeholder{
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:auto!important;
}
.media-discovery-player-copy{
  min-width:0!important;
  max-height:100%!important;
  overflow:auto!important;
}

/* Any future Discovery view must obey the same hard boundary. */
.media-discovery-workspace *,
.media-discovery-workspace *::before,
.media-discovery-workspace *::after{
  box-sizing:border-box;
}
.media-discovery-workspace iframe,
.media-discovery-workspace video,
.media-discovery-workspace img{
  max-width:100%;
}

/* Existing non-Discovery feature shells remain independent and cannot be
   pulled over the BLOG by the Media Discovery active state. */
body.media-discovery-active .space-topics-panel,
body.media-discovery-active .space-events-calendar,
body.media-discovery-active .special-live-event{
  display:none!important;
}

@media(max-width:899px){
  .public-content-column > .media-discovery-workspace{
    margin:18px 0 14px!important;
    border-radius:13px!important;
  }
  .media-discovery-workspace-head{
    height:62px;
    flex-direction:row!important;
    align-items:center!important;
    padding:10px 12px!important;
  }
  .media-discovery-workspace-head h1{font-size:18px!important}
  .media-discovery-workspace-actions{flex-wrap:nowrap!important}
  .media-discovery-workspace-actions button{min-height:34px!important;padding:6px 8px!important}
  .media-discovery-breadcrumb{margin-left:12px!important;margin-right:12px!important}
  .media-discovery-instruction{display:none!important}
  .media-discovery-rail-shell{top:91px!important;padding:7px 34px 10px!important}
  .media-discovery-card{flex-basis:min(78vw,290px)!important}
  .media-discovery-player{
    inset:62px 0 0!important;
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(0,1fr) auto!important;
    padding:10px 12px 12px!important;
  }
  .media-discovery-player-copy{
    display:grid;
    grid-template-columns:1fr auto;
    gap:4px 10px;
    align-items:center;
  }
  .media-discovery-player-copy > span,
  .media-discovery-player-copy p{display:none}
  .media-discovery-player-copy h2{margin:0!important;font-size:15px!important}
}


/* ThetaWire v1.9.72 — real Live Events media test inside v1.9.71 boundary */
.media-discovery-live-stage{
  position:relative;
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:#000;
  border-radius:8px;
}
.media-discovery-live-stage iframe{
  display:block;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  border:0!important;
  background:#000;
}
.media-discovery-live-status{
  position:absolute;
  z-index:2;
  left:10px;
  bottom:10px;
  max-width:calc(100% - 20px);
  padding:5px 8px;
  border-radius:6px;
  background:rgba(0,0,0,.76);
  color:#fff;
  font-size:11px;
  line-height:1.2;
  pointer-events:none;
}
.media-discovery-live-status.is-loaded{
  opacity:0;
  transition:opacity .35s ease 1.2s;
}


/* ThetaWire v1.9.73 — Media Discovery Admin Control Center visibility hard fix */
.media-discovery-admin-page .main{
  display:block!important;
  min-width:0!important;
  overflow:visible!important;
}
.media-discovery-admin-page .content.settings-content{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:auto!important;
  max-width:1260px!important;
  min-height:300px!important;
  margin:0!important;
  padding:24px 30px 48px!important;
  overflow:visible!important;
}
.media-discovery-admin-page .settings-form{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:18px!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.media-discovery-admin-page .settings-card{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:20px!important;
}
.media-discovery-admin-page .settings-card-head,
.media-discovery-admin-page .settings-grid,
.media-discovery-admin-page .settings-save-row{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
}
.media-discovery-admin-page .settings-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px 20px!important;
}
.media-discovery-admin-page .settings-card h2,
.media-discovery-admin-page .settings-card p,
.media-discovery-admin-page .settings-card label,
.media-discovery-admin-page .settings-card small{
  visibility:visible!important;
  opacity:1!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .settings-card{
  background:#fff!important;
  border-color:#d5dee7!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .settings-card h2,
html[data-admin-theme="light"] .media-discovery-admin-page .settings-card label{
  color:#17202a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .settings-card p,
html[data-admin-theme="light"] .media-discovery-admin-page .settings-card small{
  color:#536474!important;
}
@media(max-width:720px){
  .media-discovery-admin-page .content.settings-content{padding:18px 14px 36px!important}
  .media-discovery-admin-page .settings-grid{grid-template-columns:1fr!important}
  .media-discovery-admin-page .settings-span-2{grid-column:auto!important}
}

/* v1.9.74 Media Discovery Admin server-render verification */
.media-discovery-admin-page .md-admin-status{
 display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;
 margin:0 0 18px!important;padding:12px 14px!important;border:1px solid #7cb8d7!important;border-radius:7px!important;
 background:#eef8fd!important;color:#17384a!important;visibility:visible!important;opacity:1!important;
}
.media-discovery-admin-page .md-admin-status span{font-size:12px!important;color:#526b78!important}


/* ThetaWire v1.9.76 — standalone Media Discovery Control Center
   Deliberately independent of components/sidebar.php and admin-tree.js. */
.md-standalone-admin-shell{
  display:grid!important;
  grid-template-columns:248px minmax(0,1fr)!important;
  min-height:calc(100vh - 69px)!important;
  background:#f4f7fa!important;
}
.md-admin-nav{
  display:block!important;
  position:relative!important;
  width:auto!important;
  min-width:0!important;
  min-height:100%!important;
  padding:0!important;
  background:#fff!important;
  border-right:1px solid #d9e1e8!important;
  color:#17202a!important;
  overflow:visible!important;
}
.md-admin-brand{
  display:block;
  padding:24px 28px;
  border-bottom:1px solid #d9e1e8;
  color:#0785c6!important;
  font-weight:800;
  text-decoration:none;
}
.md-admin-nav nav{display:grid!important;padding:16px 12px!important;gap:5px!important}
.md-admin-nav nav a{
  display:block!important;
  padding:11px 14px!important;
  border-radius:7px!important;
  color:#263746!important;
  text-decoration:none!important;
  font-weight:650!important;
}
.md-admin-nav nav a:hover,.md-admin-nav nav a.active{
  background:#eaf5fb!important;
  color:#067ebd!important;
}
.md-control-center-main{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding:0!important;
  background:#f4f7fa!important;
  color:#17202a!important;
}
.md-control-center-main .page-head{
  display:block!important;
  visibility:visible!important;
  padding:28px 30px 10px!important;
}
.md-control-center-main .page-head h1{display:block!important;color:#17202a!important}
.md-control-center-main .settings-content{display:block!important;padding-top:12px!important}
.md-control-center-main .settings-form{display:grid!important}
.md-control-center-main .settings-card{display:grid!important;background:#fff!important;color:#17202a!important}
@media(max-width:899px){
 .md-standalone-admin-shell{grid-template-columns:1fr!important}
 .md-admin-nav{min-height:0!important;border-right:0!important;border-bottom:1px solid #d9e1e8!important}
 .md-admin-nav nav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* ThetaWire v1.9.77 — Control Center light-theme form normalization */
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .settings-card,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .settings-card-head,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .settings-grid{
  background:#fff!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .settings-card{
  border:1px solid #d5dee7!important;
  box-shadow:0 2px 8px rgba(25,48,68,.05)!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .settings-card-head{
  border-bottom-color:#dce4eb!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main h2,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main label,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main strong{
  color:#17202a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main p,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main small{
  color:#586b7a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .control,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main input[type="text"],
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main input[type="number"],
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main select,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main textarea{
  background:#fff!important;
  background-color:#fff!important;
  color:#17202a!important;
  border:1px solid #b9c7d3!important;
  box-shadow:none!important;
  color-scheme:light!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main select option{
  background:#fff!important;
  color:#17202a!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main input[type="checkbox"]{
  color-scheme:light!important;
  accent-color:#0785c6!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .control:focus,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main input:focus,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main select:focus,
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main textarea:focus{
  outline:2px solid rgba(7,133,198,.25)!important;
  border-color:#0785c6!important;
}


/* ThetaWire v1.9.78 — Control Center spacing + remaining black checkbox-label fix */
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .check-label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:44px!important;
  padding:9px 12px!important;
  margin:0!important;
  background:#fff!important;
  color:#17202a!important;
  border:1px solid #d5dee7!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
html[data-admin-theme="light"] .media-discovery-admin-page .md-control-center-main .check-label input[type="checkbox"]{
  flex:0 0 auto!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
}

/* Give every select/dropdown its own breathing room and a larger click target. */
.media-discovery-admin-page .md-control-center-main label:not(.check-label){
  display:grid!important;
  gap:8px!important;
  align-content:start!important;
}
.media-discovery-admin-page .md-control-center-main select.control{
  display:block!important;
  width:100%!important;
  min-height:46px!important;
  margin:0 0 8px!important;
  padding:10px 40px 10px 14px!important;
  line-height:1.35!important;
}
.media-discovery-admin-page .md-control-center-main input.control,
.media-discovery-admin-page .md-control-center-main textarea.control{
  width:100%!important;
  margin:0 0 8px!important;
  padding:10px 14px!important;
}
.media-discovery-admin-page .md-control-center-main .settings-grid{
  row-gap:20px!important;
  column-gap:28px!important;
}
.media-discovery-admin-page .md-control-center-main .settings-card{
  gap:22px!important;
}


/* ThetaWire v1.9.79 — YouTube source */
.md-source-health{
  display:grid;
  grid-template-columns:auto auto;
  justify-content:start;
  align-items:center;
  gap:7px 12px;
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid #d5dee7;
  border-radius:7px;
  background:#f8fbfd;
}
.md-source-health small{grid-column:1/-1}
.md-source-health span{font-size:11px;font-weight:800;letter-spacing:.04em}
.md-source-health .is-ready{color:#087f4b}
.md-source-health .is-missing{color:#a64040}
.media-discovery-card-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.media-discovery-loading{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  min-width:240px;
  padding:24px;
  text-align:center;
}


/* ThetaWire v1.9.81 — authoritative public WHITE/LIGHT default */
:root { color-scheme: light; }
html, body { background-color:#fff; }

/* Canonical public surfaces are white in the default/light presentation. */
html:not([data-theme="dark"]):not([data-public-theme="dark"]) body,
html[data-theme="light"] body,
html[data-public-theme="light"] body,
html:not([data-theme="dark"]):not([data-public-theme="dark"]) .public-main,
html:not([data-theme="dark"]):not([data-public-theme="dark"]) .public-content-column,
html:not([data-theme="dark"]):not([data-public-theme="dark"]) .blog-shell,
html:not([data-theme="dark"]):not([data-public-theme="dark"]) .blog-section {
  background-color:#fff!important;
}

/* OS/browser dark preference must not silently change ThetaWire's default. */
@media (prefers-color-scheme: dark) {
  :root { color-scheme: light; }
  html:not([data-theme="dark"]):not([data-public-theme="dark"]) body {
    background-color:#fff!important;
  }
}


/* ThetaWire v1.9.82 — real YouTube media thumbnails in topic results */
.media-discovery-card-visual{
  overflow:hidden;
}
.media-discovery-card-visual img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
}


/* ThetaWire v1.9.99 — public Recent Discoveries + Financial Discovery landing */
.discovery-history{
  box-sizing:border-box;
  width:100%;
  margin:18px 0 20px;
  padding:15px 12px 12px;
  overflow:hidden;
  border-top:1px solid rgba(100,92,112,.22);
  border-bottom:1px solid rgba(100,92,112,.22);
}
.discovery-history-head{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 9px;text-align:center}
.discovery-history-mark{font-size:16px;line-height:1;color:#1774d2}
.discovery-history-head h2{margin:0!important;font-size:15px!important;line-height:1.16!important;letter-spacing:.075em;text-align:center!important}
.discovery-history-head h2 span{display:block}
.discovery-history-list{display:grid;gap:0;width:100%;min-width:0}
.discovery-history-item{
  appearance:none;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:6px 3px;
  display:grid;grid-template-columns:20px minmax(0,1fr) 14px;gap:7px;align-items:start;
  border:0;border-bottom:1px solid rgba(100,92,112,.12);background:transparent;color:inherit;
  font:inherit;text-align:left;cursor:pointer;border-radius:5px;
}
.discovery-history-item:hover,.discovery-history-item:focus-visible{background:rgba(23,116,210,.07);outline:none}
.discovery-history-icon{width:20px;line-height:1.35;text-align:center;color:#1774d2}
.discovery-history-label{min-width:0;white-space:normal;overflow-wrap:break-word;word-break:normal;line-height:1.35;font-size:12px;font-weight:650}
.discovery-history-open{line-height:1.35;text-align:right;opacity:.65}
.discovery-history-empty{margin:4px 2px 6px;font-size:11px;line-height:1.4;text-align:center;opacity:.62}
.discovery-history-clear{display:block;margin:9px auto 0;padding:5px 9px;border:0;background:transparent;color:inherit;font-size:10px;letter-spacing:.06em;cursor:pointer;opacity:.65}
.discovery-history-clear:hover{opacity:1}

.financial-discovery-landing{
  box-sizing:border-box;flex:0 0 100%;width:100%;max-width:100%;height:100%;overflow:auto;
  padding:12px 18px 18px;text-align:left;scrollbar-width:thin;
}
.financial-discovery-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:10px}
.financial-discovery-head div>span{font-size:9px;font-weight:900;letter-spacing:.14em;color:#1774d2}
.financial-discovery-head h2{margin:2px 0 0;font-size:22px;line-height:1.1}
.financial-data-state{font-size:9px;font-weight:850;letter-spacing:.08em;opacity:.58;white-space:nowrap}
.financial-ticker{overflow:hidden;border-block:1px solid rgba(100,92,112,.2);padding:8px 0;margin-bottom:11px;white-space:nowrap}
.financial-ticker-track{display:inline-block;min-width:100%;font-size:11px;font-weight:750;letter-spacing:.035em;text-align:center}
.financial-search{display:flex;justify-content:center;align-items:stretch;gap:8px;margin:0 auto 8px;max-width:610px}
.financial-search label{flex:1;min-width:0}
.financial-search input{box-sizing:border-box;width:100%;height:38px;padding:8px 12px;border:1px solid rgba(100,92,112,.32);border-radius:8px;background:transparent;color:inherit}
.financial-search button,.financial-landing-bottom button{min-height:38px;padding:7px 14px;border:1px solid rgba(23,116,210,.35);border-radius:8px;background:rgba(23,116,210,.08);color:inherit;font-weight:750;cursor:pointer}
.financial-source-note{max-width:650px;margin:0 auto 12px;font-size:10px;line-height:1.35;text-align:center;opacity:.62}
.financial-discovery-landing>h3,.financial-landing-bottom h3{margin:9px 0 7px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;text-align:center}
.financial-market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-width:720px;margin:0 auto}
.financial-market-grid button{min-width:0;min-height:78px;padding:10px;border:1px solid rgba(100,92,112,.24);border-radius:9px;background:transparent;color:inherit;text-align:left;cursor:pointer}
.financial-market-grid button:hover{border-color:rgba(23,116,210,.5);background:rgba(23,116,210,.05)}
.financial-market-grid strong,.financial-market-grid span,.financial-market-grid i{display:block}
.financial-market-grid strong{font-size:13px;line-height:1.2}
.financial-market-grid span{margin-top:4px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#1774d2}
.financial-market-grid i{margin-top:9px;font-size:9px;font-style:normal;opacity:.55}
.financial-landing-bottom{display:flex;align-items:end;justify-content:center;gap:18px;max-width:720px;margin:8px auto 0;text-align:center}
.financial-landing-bottom p{margin:0;font-size:10px;line-height:1.35;opacity:.62}
@media(max-width:899px){
  .financial-discovery-landing{padding:10px 12px 14px}
  .financial-market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .financial-discovery-head{align-items:start;flex-direction:column;gap:4px}
  .financial-search{max-width:none}
}
\n\n/* ThetaWire v1.9.99b — compact administrator shortcuts above Media Discovery */\n.thetawire-appearance-flyout{\n  margin-bottom:3px!important;\n}\n.public-discovery-admin-row{\n  box-sizing:border-box;\n  width:100%;\n  margin:0 0 3px;\n  padding:0;\n  display:flex;\n  align-items:center;\n  justify-content:center;\n  gap:0;\n  border:0;\n}\n.public-discovery-admin-row a{\n  box-sizing:border-box;\n  min-width:0!important;\n  min-height:30px!important;\n  margin:0!important;\n  padding:4px 6px!important;\n  display:inline-flex!important;\n  flex:0 1 auto;\n  align-items:center!important;\n  justify-content:center!important;\n  gap:4px!important;\n  border:0!important;\n  border-bottom:0!important;\n  background:transparent!important;\n  color:inherit;\n  text-decoration:none;\n  font-size:11px!important;\n  line-height:1.15;\n  white-space:nowrap;\n}\n.public-discovery-admin-row a + a::before{\n  content:\"\";\n  width:1px;\n  height:14px;\n  margin-right:6px;\n  background:rgba(100,92,112,.28);\n}\n.public-discovery-admin-row a:hover,.public-discovery-admin-row a:focus-visible{\n  color:#1774d2;\n}\n.public-discovery-admin-row .public-icon{\n  order:2!important;\n  width:15px!important;\n  height:15px!important;\n  flex:0 0 15px!important;\n}\n.public-discovery-admin-row a span{\n  order:1!important;\n  min-width:0;\n}\n@media(max-width:899px){\n  .thetawire-appearance-flyout{margin-bottom:3px!important}\n  .public-discovery-admin-row{margin-bottom:3px}\n  .public-discovery-admin-row a{padding-left:5px!important;padding-right:5px!important;font-size:10.5px!important}\n}\n
/* ==========================================================================\n   ThetaWire v1.9.99c — Reference-designed Administrator sidebar module\n   Matches the Media Discovery card: light surface, rounded border, soft shadow,\n   purple interactive accents, contained three-column actions.\n   ========================================================================== */
.thetawire-appearance-flyout{margin-bottom:3px!important}
.thetawire-admin-launcher{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 3px!important;
  padding:15px 12px 13px!important;
  overflow:hidden!important;
  border:1px solid #d4e0e8!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#1d222b!important;
  box-shadow:0 8px 24px rgba(38,57,77,.07)!important;
}
.thetawire-admin-launcher-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  margin:0 0 13px!important;
  text-align:center!important;
}
.thetawire-admin-brand{
  display:block!important;
  max-width:100%!important;
  font-size:17px!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
}
.thetawire-admin-brand-theta{color:#111820!important}
.thetawire-admin-brand-wire{color:#00a9e8!important}
.thetawire-admin-launcher-head h2{
  margin:7px 0 0!important;
  padding:0!important;
  color:#1d222b!important;
  font-size:17px!important;
  line-height:1.05!important;
  font-weight:700!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  text-transform:none!important;
}
.thetawire-admin-actions{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
.thetawire-admin-action{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:86px!important;
  margin:0!important;
  padding:10px 3px 9px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  overflow:hidden!important;
  border:1px solid rgba(151,91,238,.30)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,#fff 0%,#fdfbff 100%)!important;
  color:#1d222b!important;
  text-decoration:none!important;
  text-align:center!important;
  box-shadow:0 5px 14px rgba(90,55,130,.055)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,color .16s ease,transform .16s ease!important;
}
.thetawire-admin-action-icon{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  color:#9b55f5!important;
  transition:color .16s ease,filter .16s ease,transform .16s ease!important;
}
.thetawire-admin-action-icon .public-icon,
.thetawire-admin-action-icon svg{
  display:block!important;
  width:36px!important;
  height:36px!important;
  max-width:36px!important;
  max-height:36px!important;
  stroke:currentColor!important;
}
.thetawire-admin-action-label{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  color:inherit!important;
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:750!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}
.thetawire-admin-action:hover,
.thetawire-admin-action:focus-visible{
  border-color:#149ee4!important;
  background:#f5fbff!important;
  color:#078dcc!important;
  box-shadow:0 7px 19px rgba(20,158,228,.16),0 0 0 2px rgba(20,158,228,.07)!important;
  outline:none!important;
  transform:translateY(-1px)!important;
}
.thetawire-admin-action:hover .thetawire-admin-action-icon,
.thetawire-admin-action:focus-visible .thetawire-admin-action-icon{
  color:#078dcc!important;
  filter:drop-shadow(0 3px 7px rgba(7,141,204,.18))!important;
  transform:scale(1.04)!important;
}
.thetawire-admin-action:active{transform:translateY(0)!important;box-shadow:0 3px 10px rgba(20,158,228,.12)!important}

/* READY is informational, but receives the requested blue visual rollover. */
.media-discovery-launcher-head .media-discovery-state{
  cursor:default!important;
  transition:color .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.media-discovery-launcher-head .media-discovery-state:hover{
  color:#078dcc!important;
  border-color:rgba(7,141,204,.58)!important;
  background:#f8fcff!important;
  box-shadow:0 6px 18px rgba(7,141,204,.12),0 0 0 2px rgba(7,141,204,.05)!important;
}

@media(max-width:899px){
  .thetawire-admin-launcher{padding:13px 10px 12px!important}
  .thetawire-admin-brand{font-size:16px!important}
  .thetawire-admin-launcher-head h2{font-size:16px!important}
  .thetawire-admin-actions{gap:6px!important}
  .thetawire-admin-action{min-height:80px!important;padding:9px 2px 8px!important}
  .thetawire-admin-action-icon,.thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:32px!important;height:32px!important}
  .thetawire-admin-action-icon{flex-basis:32px!important}
  .thetawire-admin-action-label{font-size:10.5px!important}
}
@media(max-width:380px){
  .thetawire-admin-actions{gap:5px!important}
  .thetawire-admin-action{min-height:75px!important;border-radius:10px!important}
  .thetawire-admin-action-icon,.thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:29px!important;height:29px!important}
  .thetawire-admin-action-icon{flex-basis:29px!important}
  .thetawire-admin-action-label{font-size:10px!important}
}
\n\n/* ==========================================================================\n   ThetaWire v1.9.99d — Administrator action scale + Email refinement\n   - Labels are optically centered beneath icons.\n   - Message becomes Email with an envelope icon.\n   - Icons/labels grow without changing the three-column sidebar footprint.\n   ========================================================================== */\n.thetawire-admin-actions{\n  align-items:stretch!important;\n}\n.thetawire-admin-action{\n  min-height:104px!important;\n  padding:12px 3px 11px!important;\n  gap:9px!important;\n  text-align:center!important;\n}\n.thetawire-admin-action-icon{\n  width:46px!important;\n  height:46px!important;\n  flex:0 0 46px!important;\n  margin-left:auto!important;\n  margin-right:auto!important;\n}\n.thetawire-admin-action-icon .public-icon,\n.thetawire-admin-action-icon svg{\n  width:46px!important;\n  height:46px!important;\n  max-width:46px!important;\n  max-height:46px!important;\n  stroke:currentColor!important;\n  stroke-width:1.65!important;\n  stroke-linecap:round!important;\n  stroke-linejoin:round!important;\n  fill:none!important;\n}\n.thetawire-admin-action-label{\n  display:flex!important;\n  align-items:center!important;\n  justify-content:center!important;\n  width:100%!important;\n  min-height:20px!important;\n  margin:0!important;\n  padding:0!important;\n  font-size:14px!important;\n  line-height:1.15!important;\n  font-weight:750!important;\n  letter-spacing:.005em!important;\n  text-align:center!important;\n}\n@media(max-width:899px){\n  .thetawire-admin-action{min-height:96px!important;padding:11px 2px 10px!important;gap:8px!important}\n  .thetawire-admin-action-icon{width:42px!important;height:42px!important;flex-basis:42px!important}\n  .thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:42px!important;height:42px!important;max-width:42px!important;max-height:42px!important}\n  .thetawire-admin-action-label{font-size:13px!important}\n}\n@media(max-width:380px){\n  .thetawire-admin-action{min-height:88px!important;gap:7px!important}\n  .thetawire-admin-action-icon{width:38px!important;height:38px!important;flex-basis:38px!important}\n  .thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:38px!important;height:38px!important;max-width:38px!important;max-height:38px!important}\n  .thetawire-admin-action-label{font-size:12px!important}\n}\n
/* ==========================================================================
   ThetaWire v1.9.99e — Administrator true-center + larger icon patch
   ========================================================================== */
.thetawire-admin-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  justify-items:stretch!important;
}
.thetawire-admin-action{
  display:grid!important;
  grid-template-rows:58px auto!important;
  place-items:center!important;
  align-content:center!important;
  justify-content:center!important;
  min-width:0!important;
  min-height:118px!important;
  padding:12px 2px 11px!important;
  gap:9px!important;
  text-align:center!important;
}
.thetawire-admin-action-icon{
  display:grid!important;
  place-items:center!important;
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  min-height:58px!important;
  margin:0 auto!important;
  padding:0!important;
  justify-self:center!important;
  align-self:center!important;
}
.thetawire-admin-action-icon .public-icon,
.thetawire-admin-action-icon svg{
  display:block!important;
  width:56px!important;
  height:56px!important;
  max-width:56px!important;
  max-height:56px!important;
  margin:0 auto!important;
  padding:0!important;
  justify-self:center!important;
  stroke:currentColor!important;
  stroke-width:1.65!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  fill:none!important;
}
.thetawire-admin-action-label{
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  justify-self:stretch!important;
  align-self:center!important;
  color:inherit!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:750!important;
  letter-spacing:0!important;
  text-align:center!important;
  white-space:nowrap!important;
}
@media(max-width:899px){
  .thetawire-admin-action{grid-template-rows:52px auto!important;min-height:108px!important;gap:8px!important}
  .thetawire-admin-action-icon{width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important}
  .thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:50px!important;height:50px!important;max-width:50px!important;max-height:50px!important}
  .thetawire-admin-action-label{font-size:14px!important}
}
@media(max-width:380px){
  .thetawire-admin-action{grid-template-rows:46px auto!important;min-height:98px!important;gap:7px!important}
  .thetawire-admin-action-icon{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}
  .thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important}
  .thetawire-admin-action-label{font-size:13px!important}
}

/* ==========================================================================
   ThetaWire v1.9.99f — Wide reference-design sidebar rail
   Approved direction:
   - widen desktop sidebar so reference proportions do not need compression
   - Administrator, Media Discovery and Most Recent Discoveries share one UI
   - Media Start/Stop centered at 80% rather than edge-to-edge
   - recent discoveries remain 10-item clickable launch history
   ========================================================================== */
@media (min-width:1200px){
  :root{
    --dl-public-sidebar-fluid:clamp(330px,23vw,390px)!important;
    --dl-public-gap-fluid:clamp(22px,2vw,38px)!important;
  }
}
@media (min-width:900px) and (max-width:1199px){
  :root{--dl-public-sidebar-fluid:310px!important;--dl-public-gap-fluid:22px!important}
}

/* One visual system for the three sidebar modules. */
.thetawire-admin-launcher,
.media-discovery-launcher,
.discovery-history{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  border:1px solid #d2dde8!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fefeff 100%)!important;
  color:#1d222b!important;
  box-shadow:0 9px 24px rgba(54,78,104,.075),0 2px 6px rgba(54,78,104,.035)!important;
}
.thetawire-admin-launcher{margin:3px 0!important;padding:22px 20px 20px!important}
.media-discovery-launcher{margin:3px 0!important;padding:24px 22px 21px!important}
.discovery-history{margin:3px 0 20px!important;padding:22px 18px 18px!important;border-top:1px solid #d2dde8!important;border-bottom:1px solid #d2dde8!important}

/* Administrator — preserve the large reference proportions. */
.thetawire-admin-launcher-head{margin-bottom:18px!important}
.thetawire-admin-brand{font-size:22px!important;letter-spacing:.01em!important}
.thetawire-admin-launcher-head h2{margin-top:8px!important;font-size:22px!important;font-weight:750!important}
.thetawire-admin-actions{gap:12px!important}
.thetawire-admin-action{
  grid-template-rows:66px auto!important;
  min-height:132px!important;
  padding:15px 5px 13px!important;
  gap:10px!important;
  border-radius:15px!important;
}
.thetawire-admin-action-icon{
  width:66px!important;height:66px!important;min-width:66px!important;min-height:66px!important;
}
.thetawire-admin-action-icon .public-icon,
.thetawire-admin-action-icon svg{
  width:62px!important;height:62px!important;max-width:62px!important;max-height:62px!important;
}
.thetawire-admin-action-label{font-size:17px!important;font-weight:760!important;text-align:center!important}

/* Media Discovery — scale the existing working controller, not its behavior. */
.media-discovery-brand-line{gap:12px!important}
.media-discovery-logo img{max-width:165px!important;height:34px!important}
.media-discovery-media-word{font-size:23px!important;letter-spacing:.105em!important}
.media-discovery-launcher-head #media-discovery-title{margin-top:10px!important;font-size:31px!important}
.media-discovery-launcher-head .media-discovery-state{
  min-width:132px!important;min-height:56px!important;margin-top:22px!important;padding:10px 22px!important;
  font-size:22px!important;border-width:1px!important;
}
.media-discovery-launcher-copy{
  max-width:310px!important;margin:22px auto 22px!important;font-size:17px!important;line-height:1.52!important;
}
.media-discovery-launcher-actions{
  width:80%!important;max-width:300px!important;margin:0 auto 17px!important;gap:12px!important;
}
.media-discovery-launcher .space-tv-power-button{
  width:100%!important;min-height:62px!important;border-radius:14px!important;font-size:19px!important;font-weight:780!important;
}
.media-discovery-preferences{width:100%!important;margin-top:12px!important;padding-top:11px!important}
.media-discovery-preferences > summary{padding:13px 10px 13px 40px!important;font-size:18px!important}
.media-discovery-hint{font-size:12px!important;line-height:1.45!important;text-align:center!important}

/* Most Recent Discoveries — matching full interface card. */
.discovery-history-head{
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  gap:0!important;margin:0 0 15px!important;text-align:center!important;
}
.discovery-history-mark{display:none!important}
.discovery-history-brand{
  display:block!important;max-width:100%!important;font-size:22px!important;line-height:1!important;
  font-weight:850!important;letter-spacing:.01em!important;white-space:nowrap!important;text-align:center!important;
}
.discovery-history-brand-theta{color:#111820!important}
.discovery-history-brand-wire{color:#00a9e8!important}
.discovery-history-head h2{
  margin:9px 0 0!important;font-size:20px!important;line-height:1.12!important;font-weight:760!important;
  letter-spacing:.035em!important;text-align:center!important;text-transform:none!important;
}
.discovery-history-head h2 span{display:block!important}
.discovery-history-list{gap:4px!important}
.discovery-history-item{
  min-height:48px!important;padding:7px 9px!important;
  grid-template-columns:34px minmax(0,1fr) 18px!important;gap:9px!important;align-items:center!important;
  border:1px solid transparent!important;border-bottom-color:rgba(100,92,112,.11)!important;border-radius:10px!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease!important;
}
.discovery-history-item:hover,.discovery-history-item:focus-visible{
  color:#078dcc!important;background:#f5fbff!important;border-color:rgba(20,158,228,.28)!important;
  box-shadow:0 4px 12px rgba(20,158,228,.08)!important;transform:translateX(1px)!important;outline:none!important;
}
.discovery-history-icon{
  display:grid!important;place-items:center!important;width:34px!important;height:34px!important;line-height:1!important;
  border:1px solid rgba(151,91,238,.24)!important;border-radius:9px!important;background:#fdfaff!important;
  color:#9b55f5!important;font-size:18px!important;transition:color .16s ease,border-color .16s ease,background .16s ease!important;
}
.discovery-history-item:hover .discovery-history-icon,.discovery-history-item:focus-visible .discovery-history-icon{
  color:#078dcc!important;border-color:rgba(7,141,204,.34)!important;background:#f2faff!important;
}
.discovery-history-label{
  min-width:0!important;font-size:14px!important;line-height:1.3!important;font-weight:700!important;
  white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important;text-align:left!important;
}
.discovery-history-open{font-size:17px!important;color:inherit!important;opacity:.62!important;text-align:center!important}
.discovery-history-empty{margin:8px 4px!important;font-size:13px!important;line-height:1.45!important}
.discovery-history-clear{
  margin:12px auto 0!important;padding:7px 12px!important;border:1px solid rgba(151,91,238,.22)!important;
  border-radius:999px!important;font-size:11px!important;font-weight:750!important;
}
.discovery-history-clear:hover,.discovery-history-clear:focus-visible{color:#078dcc!important;border-color:rgba(7,141,204,.38)!important;background:#f5fbff!important;outline:none!important}

/* Keep the approved blue informational READY rollover. */
.media-discovery-launcher-head .media-discovery-state:hover{
  color:#078dcc!important;border-color:rgba(7,141,204,.58)!important;background:#f8fcff!important;
  box-shadow:0 6px 18px rgba(7,141,204,.12),0 0 0 2px rgba(7,141,204,.05)!important;
}

/* Tablet/mobile returns to the natural one-column page and scales modules safely. */
@media(max-width:1199px) and (min-width:900px){
  .thetawire-admin-brand,.discovery-history-brand{font-size:19px!important}
  .thetawire-admin-launcher-head h2{font-size:19px!important}
  .thetawire-admin-action{grid-template-rows:58px auto!important;min-height:118px!important}
  .thetawire-admin-action-icon{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important}
  .thetawire-admin-action-icon .public-icon,.thetawire-admin-action-icon svg{width:54px!important;height:54px!important;max-width:54px!important;max-height:54px!important}
  .thetawire-admin-action-label{font-size:15px!important}
  .media-discovery-logo img{max-width:145px!important;height:30px!important}
  .media-discovery-media-word{font-size:20px!important}
}
@media(max-width:899px){
  .thetawire-admin-launcher,.media-discovery-launcher,.discovery-history{border-radius:15px!important}
  .thetawire-admin-launcher{margin:3px 0!important;padding:17px 13px 15px!important}
  .media-discovery-launcher{margin:3px 0!important;padding:18px 15px 16px!important}
  .discovery-history{margin:3px 0 16px!important;padding:17px 13px 14px!important}
  .media-discovery-launcher-actions{width:min(86%,300px)!important}
  .discovery-history-brand{font-size:18px!important}
  .discovery-history-head h2{font-size:17px!important}
  .discovery-history-label{font-size:13px!important}
}


/* ==========================================================================\n   ThetaWire v1.9.99g — Sidebar vertical alignment + proportional refinement\n   - Public Appearance flyout removed from markup; theme control is admin-only.\n   - Rail begins at the top of the BLOG content line.\n   - Media Discovery and Most Recent Discoveries are visually ~5% smaller\n     in both axes while preserving the approved reference proportions.\n   - START uses the ThetaWire blue action treatment.\n   ========================================================================== */
.public-right-sidebar{
  align-self:start!important;
  margin-top:0!important;
  padding-top:0!important;
}
.public-right-sidebar > :first-child{
  margin-top:0!important;
}

/* Administrator remains the full rail reference width. */
.thetawire-admin-launcher{
  margin-top:0!important;
}

/* 95% module width, centered in the wider rail. Internal measurements are
   reduced by the same factor so height/proportions contract with width. */
.media-discovery-launcher,
.discovery-history{
  width:95%!important;
  max-width:95%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.media-discovery-launcher{
  padding:22.8px 20.9px 19.95px!important;
}
.media-discovery-logo img{max-width:156.75px!important;height:32.3px!important}
.media-discovery-media-word{font-size:21.85px!important}
.media-discovery-launcher-head #media-discovery-title{font-size:29.45px!important}
.media-discovery-launcher-head .media-discovery-state{
  min-width:125.4px!important;min-height:53.2px!important;margin-top:20.9px!important;
  padding:9.5px 20.9px!important;font-size:20.9px!important;
}
.media-discovery-launcher-copy{
  max-width:294.5px!important;margin:20.9px auto!important;font-size:16.15px!important;line-height:1.52!important;
}
.media-discovery-launcher-actions{
  width:80%!important;max-width:285px!important;margin:0 auto 16.15px!important;gap:11.4px!important;
}
.media-discovery-launcher .space-tv-power-button{
  min-height:58.9px!important;border-radius:13.3px!important;font-size:18.05px!important;
}
/* START is the primary ThetaWire-blue action; STOP retains its existing red/dark treatment. */
.media-discovery-launcher .space-tv-power-button:not(.is-stop){
  border-color:#078dcc!important;
  background:linear-gradient(180deg,#12a9ed 0%,#078dcc 100%)!important;
  color:#fff!important;
  box-shadow:0 7px 18px rgba(7,141,204,.20)!important;
}
.media-discovery-launcher .space-tv-power-button:not(.is-stop):hover,
.media-discovery-launcher .space-tv-power-button:not(.is-stop):focus-visible{
  border-color:#006fa8!important;
  background:linear-gradient(180deg,#25b8f5 0%,#087fb8 100%)!important;
  box-shadow:0 9px 22px rgba(7,141,204,.28),0 0 0 2px rgba(7,141,204,.10)!important;
  outline:none!important;
}
.media-discovery-preferences{margin-top:11.4px!important;padding-top:10.45px!important}
.media-discovery-preferences > summary{padding:12.35px 9.5px 12.35px 38px!important;font-size:17.1px!important}
.media-discovery-hint{font-size:11.4px!important}

.discovery-history{
  padding:20.9px 17.1px 17.1px!important;
  margin-top:3px!important;
  margin-bottom:19px!important;
}
.discovery-history-head{margin-bottom:14.25px!important}
.discovery-history-brand{font-size:20.9px!important}
.discovery-history-head h2{margin-top:8.55px!important;font-size:19px!important}
.discovery-history-list{gap:3.8px!important}
.discovery-history-item{
  min-height:45.6px!important;padding:6.65px 8.55px!important;
  grid-template-columns:32.3px minmax(0,1fr) 17.1px!important;gap:8.55px!important;border-radius:9.5px!important;
}
.discovery-history-icon{width:32.3px!important;height:32.3px!important;border-radius:8.55px!important;font-size:17.1px!important}
.discovery-history-label{font-size:13.3px!important}
.discovery-history-open{font-size:16.15px!important}
.discovery-history-empty{font-size:12.35px!important}
.discovery-history-clear{margin-top:11.4px!important;padding:6.65px 11.4px!important;font-size:10.45px!important}

@media(max-width:899px){
  /* On compact layouts use the available width; the 5% desktop inset is not
     allowed to waste scarce mobile space. */
  .media-discovery-launcher,.discovery-history{width:100%!important;max-width:100%!important}
}

/* ==========================================================================\n   ThetaWire v1.9.99m — Full-width video + unified rail geometry\n   Built on restored v1.9.99l baseline.\n   ========================================================================== */
@media (min-width:900px){
  /* Blog and sidebar begin on the same 28px content baseline. */
  .public-page-layout > .public-page-main{margin-top:28px!important}
  .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:28px!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }
}

/* All three rail interfaces use the same effective outer width. */
.thetawire-admin-launcher,
.media-discovery-launcher,
.discovery-history{
  box-sizing:border-box!important;
  width:95%!important;
  max-width:95%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Active media: compact information strip above a full-width player. */
.media-discovery-player{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  gap:8px!important;
  padding:8px 12px 12px!important;
  align-items:stretch!important;
}
.media-discovery-player-copy{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  width:100%!important;
  max-height:none!important;
  overflow:visible!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"title back" "meta back"!important;
  column-gap:16px!important;
  row-gap:2px!important;
  align-items:center!important;
  padding:0 2px 2px!important;
}
.media-discovery-player-copy > span:first-child,
.media-discovery-player-copy [data-media-discovery-player-type]{display:none!important}
.media-discovery-player-copy h2,
.media-discovery-player-copy [data-media-discovery-player-title]{
  grid-area:title!important;
  margin:0!important;
  min-width:0!important;
  font-size:clamp(15px,1.45vw,20px)!important;
  line-height:1.2!important;
  text-align:left!important;
  overflow-wrap:anywhere!important;
}
.media-discovery-player-copy p,
.media-discovery-player-copy [data-media-discovery-player-meta]{
  grid-area:meta!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  text-align:left!important;
  opacity:.72!important;
}
.media-discovery-player-copy button,
.media-discovery-player-copy [data-media-discovery-player-back]{
  grid-area:back!important;
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  white-space:nowrap!important;
}
.media-discovery-player-frame{
  grid-column:1!important;
  grid-row:2!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
}
.media-discovery-live-stage,
.media-discovery-live-stage iframe{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
}

@media(max-width:899px){
  .thetawire-admin-launcher,.media-discovery-launcher,.discovery-history{width:100%!important;max-width:100%!important}
  .media-discovery-player-copy{grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"title back" "meta meta"!important}
  .media-discovery-player-copy h2,.media-discovery-player-copy [data-media-discovery-player-title]{font-size:15px!important}
}

/* ==========================================================================\n   ThetaWire v1.9.99n — Video-only active player\n   Keep existing top Back control; hide duplicated video/post metadata.\n   CSS-only patch: media-discovery.js remains byte-for-byte unchanged.\n   ========================================================================== */
.media-discovery-player{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
  gap:0!important;
  padding:0!important;
  align-items:stretch!important;
}
.media-discovery-player-copy{
  display:none!important;
  width:0!important;
  height:0!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
.media-discovery-player-frame{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  justify-self:stretch!important;
  align-self:stretch!important;
}
.media-discovery-player-frame iframe,
.media-discovery-live-stage,
.media-discovery-live-stage iframe{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  margin:0!important;
  border:0!important;
}

/* ==========================================================================\n   ThetaWire v1.9.99o — 3px video top breathing room\n   CSS-only patch on v1.9.99n. No JavaScript changes.\n   ========================================================================== */
.media-discovery-player-frame{
  margin-top:3px!important;
  height:calc(100% - 3px)!important;
}

/* ==========================================================================\n   ThetaWire v1.9.99p — desktop top-line alignment + 3.5px video gap\n   Screenshot-calibrated CSS-only correction on v1.9.99o.\n   ========================================================================== */
@media (min-width:900px){
  /* Match the sidebar card's outer top border to the left Media Discovery /
     first-post content line. The rail was ~45px too high in the approved
     desktop capture. */
  .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:73px!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }
}

/* Requested breathing room between the Media Discovery toolbar and player. */
.media-discovery-player-frame{
  margin-top:3.5px!important;
  height:calc(100% - 3.5px)!important;
}

/* ==========================================================================\n   ThetaWire v1.9.99q — fixed content baseline + 5px video gap\n   CSS-only stabilization patch.\n   Goal: cards/blog and active-video states keep identical outer geometry.\n   ========================================================================== */

/* The Discovery workspace replaces content INSIDE the same blog-column
   baseline. Do not add a second top margin when it becomes active. */
.public-content-column > .media-discovery-workspace{
  margin-top:0!important;
  margin-bottom:18px!important;
  height:var(--media-discovery-boundary-height, min(56.25vw,520px))!important;
  max-height:var(--media-discovery-boundary-height,520px)!important;
}

@media (min-width:900px){
  /* Undo the earlier extra main-column lift. Both normal blog/cards and
     active Discovery now use the same parent baseline. */
  .public-page-layout > .public-page-main{
    margin-top:0!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }

  /* p used 73px to compensate for Discovery's extra 28px margin.
     With that state-only margin removed, 45px is the stable common rail
     baseline in both idle/cards and playing-video states. */
  .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:45px!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }

  body.media-discovery-active .public-page-layout > aside.public-side-menu.public-right-sidebar,
  body:not(.media-discovery-active) .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:45px!important;
  }
}

/* The player gap is internal to the fixed Discovery rectangle, so changing
   Cards -> Video -> Cards cannot change the outer blog/workspace height. */
.media-discovery-player{
  height:auto!important;
}
.media-discovery-player-frame{
  margin-top:5px!important;
  height:calc(100% - 5px)!important;
  max-height:calc(100% - 5px)!important;
}

@media(max-width:899px){
  .public-content-column > .media-discovery-workspace{
    margin-top:0!important;
  }
}

/* ==========================================================================\n   ThetaWire v1.9.99r — measured desktop geometry lock\n   CSS ONLY. Shared top baseline + identical sidebar module widths.\n   ========================================================================== */
@media (min-width:900px){
  /* One row, one baseline. No state-specific vertical compensation. */
  .public-page-layout{
    align-items:start!important;
  }
  .public-page-layout > .public-page-main,
  .public-page-layout > .public-content-column,
  .public-page-layout > main{
    margin-top:0!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }
  .public-page-layout > aside.public-side-menu.public-right-sidebar,
  body.media-discovery-active .public-page-layout > aside.public-side-menu.public-right-sidebar,
  body:not(.media-discovery-active) .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:0!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }
  .public-page-layout > aside.public-side-menu.public-right-sidebar > :first-child{
    margin-top:0!important;
  }

  /* Discovery replaces content inside the left column; it cannot move the row. */
  .public-content-column > .media-discovery-workspace,
  .public-page-main > .media-discovery-workspace{
    margin-top:0!important;
  }

  /* One width contract for every sidebar interface. */
  .public-right-sidebar > .thetawire-admin-launcher,
  .public-right-sidebar > .media-discovery-launcher,
  .public-right-sidebar > .discovery-history,
  .thetawire-admin-launcher,
  .media-discovery-launcher,
  .discovery-history{
    box-sizing:border-box!important;
    width:95%!important;
    max-width:95%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Keep the requested player breathing room internal to the fixed stage. */
.media-discovery-player-frame{
  margin-top:5px!important;
  height:calc(100% - 5px)!important;
  max-height:calc(100% - 5px)!important;
}

/* ==========================================================================\n   ThetaWire v1.9.99s — shared desktop baseline +3px\n   CSS ONLY. Move BOTH columns down together without changing their alignment.\n   ========================================================================== */
@media (min-width:900px){
  /* Keep the measured r geometry, then add exactly 3px to the shared row. */
  .public-page-layout{
    align-items:start!important;
    padding-top:12px!important;
  }

  /* Children remain flush to the same row in every Discovery state. */
  .public-page-layout > .public-page-main,
  .public-page-layout > .public-content-column,
  .public-page-layout > main,
  .public-page-layout > aside.public-side-menu.public-right-sidebar,
  body.media-discovery-active .public-page-layout > aside.public-side-menu.public-right-sidebar,
  body:not(.media-discovery-active) .public-page-layout > aside.public-side-menu.public-right-sidebar{
    margin-top:0!important;
    top:auto!important;
    transform:none!important;
    align-self:start!important;
  }

  /* Preserve the single 95% width/center contract from r. */
  .public-right-sidebar > .thetawire-admin-launcher,
  .public-right-sidebar > .media-discovery-launcher,
  .public-right-sidebar > .discovery-history,
  .thetawire-admin-launcher,
  .media-discovery-launcher,
  .discovery-history{
    box-sizing:border-box!important;
    width:95%!important;
    max-width:95%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* The video retains its separate 5px internal toolbar-to-player gap. */
.media-discovery-player-frame{
  margin-top:5px!important;
  height:calc(100% - 5px)!important;
  max-height:calc(100% - 5px)!important;
}

/* ==========================================================================\n   ThetaWire v1.9.99u — single-article baseline repair\n   CSS ONLY. Uses the verified 4.7.1 DOM:\n   .public-page-layout > .public-page-main > .public-inline-reader >\n   .public-reader-close + .public-full-article\n   ========================================================================== */
@media (min-width:900px){
  /* The reader itself starts on the same +3px shared page-row baseline as the
     sidebar.  No flow content may push the article card downward. */
  .public-page-main > .public-inline-reader{
    position:relative!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-top:0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
  }

  /* Back to Posts stays functional but is removed from document flow, so it
     cannot create a second vertical state for article pages. */
  .public-page-main > .public-inline-reader > .public-reader-close{
    position:absolute!important;
    z-index:5!important;
    top:-29px!important;
    left:0!important;
    margin:0!important;
  }

  /* This is the visible article border seen in the supplied screenshot.
     It now begins at the exact same grid-row Y as the first sidebar card. */
  .public-page-main > .public-inline-reader > .public-full-article{
    width:100%!important;
    max-width:none!important;
    margin-top:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  /* Reassert the one sidebar geometry contract while fixing article state. */
  .public-right-sidebar > .thetawire-admin-launcher,
  .public-right-sidebar > .media-discovery-launcher,
  .public-right-sidebar > .discovery-history{
    box-sizing:border-box!important;
    width:95%!important;
    max-width:95%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* ============================================================
   ThetaWire v1.9.99v — immersive Media Discovery galleries
   Video: real playable embeds in a large swipe rail.
   News: large readable swipe stories with minimal chrome.
   ============================================================ */
.media-discovery-rail.is-video-gallery,
.media-discovery-rail.is-news-gallery{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  padding:6px 4.5% 14px!important;
  align-items:stretch!important;
  scrollbar-width:thin;
}
.media-discovery-video-slide{
  flex:0 0 91%!important;
  min-width:0!important;
  scroll-snap-align:center!important;
  scroll-snap-stop:always!important;
  background:transparent!important;
}
.media-discovery-gallery-video{
  position:relative!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  overflow:hidden!important;
  border-radius:14px!important;
  background:#05070a!important;
  box-shadow:0 12px 34px rgba(0,0,0,.18)!important;
}
.media-discovery-gallery-video iframe{
  display:block!important;
  width:100%!important;
  height:100%!important;
  border:0!important;
}
.media-discovery-video-expand{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  z-index:4!important;
  width:42px!important;
  height:42px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:10px!important;
  background:rgba(4,10,16,.76)!important;
  color:#fff!important;
  font-size:23px!important;
  line-height:1!important;
  cursor:pointer!important;
  backdrop-filter:blur(6px)!important;
}
.media-discovery-video-expand:hover,
.media-discovery-video-expand:focus-visible{
  background:#087fd1!important;
  border-color:#65c7ff!important;
  outline:none!important;
}
.media-discovery-video-caption{
  display:block!important;
  width:100%!important;
  margin:8px 0 0!important;
  padding:0 4px!important;
  border:0!important;
  background:transparent!important;
  color:inherit!important;
  font:inherit!important;
  font-size:15px!important;
  font-weight:700!important;
  line-height:1.3!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  cursor:pointer!important;
}
.media-discovery-video-caption:hover,
.media-discovery-video-caption:focus-visible{color:#087fd1!important;outline:none!important}

.media-discovery-news-story{
  flex:0 0 91%!important;
  min-height:430px!important;
  scroll-snap-align:center!important;
  scroll-snap-stop:always!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  padding:42px 46px!important;
  border:1px solid rgba(72,95,112,.28)!important;
  border-radius:16px!important;
  background:linear-gradient(145deg,#fff 0%,#f6f9fb 100%)!important;
  color:#17212a!important;
  text-align:left!important;
  box-shadow:0 12px 34px rgba(21,39,54,.10)!important;
  cursor:pointer!important;
}
.media-discovery-news-story:hover,
.media-discovery-news-story:focus-visible{
  border-color:#2aa8ee!important;
  box-shadow:0 14px 38px rgba(21,92,137,.17)!important;
  outline:none!important;
}
.media-discovery-news-kicker{
  margin-bottom:16px!important;
  color:#5b6c78!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
.media-discovery-news-story strong{
  display:block!important;
  max-width:940px!important;
  font-size:clamp(27px,2.25vw,42px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.media-discovery-news-summary{
  display:-webkit-box!important;
  max-width:900px!important;
  margin-top:20px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  font-size:17px!important;
  line-height:1.55!important;
  color:#4e5e69!important;
}
.media-discovery-news-open{
  margin-top:26px!important;
  color:#087fd1!important;
  font-size:14px!important;
  font-weight:800!important;
}
html[data-blog-theme="dark"] .media-discovery-news-story,
body[data-blog-theme="dark"] .media-discovery-news-story{
  background:linear-gradient(145deg,#10161d 0%,#151d25 100%)!important;
  color:#f2f7fa!important;
  border-color:rgba(128,163,186,.28)!important;
}
html[data-blog-theme="dark"] .media-discovery-news-summary,
body[data-blog-theme="dark"] .media-discovery-news-summary{color:#b8c5ce!important}
html[data-blog-theme="dark"] .media-discovery-news-kicker,
body[data-blog-theme="dark"] .media-discovery-news-kicker{color:#91a7b5!important}

@media(max-width:899px){
  .media-discovery-rail.is-video-gallery,
  .media-discovery-rail.is-news-gallery{gap:12px!important;padding:5px 3% 12px!important}
  .media-discovery-video-slide,
  .media-discovery-news-story{flex-basis:94%!important}
  .media-discovery-news-story{min-height:330px!important;padding:28px 24px!important}
  .media-discovery-news-summary{font-size:15px!important;-webkit-line-clamp:3!important}
  .media-discovery-video-expand{width:38px!important;height:38px!important;font-size:20px!important}
}

/* ============================================================
   ThetaWire v1.9.99w — direct media gallery
   Topic click -> playable videos / large news, no intermediate cards.
   ============================================================ */
.media-discovery-rail.is-mixed-gallery{
  display:flex!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  padding:6px 4.5% 14px!important;
  align-items:stretch!important;
}
.media-discovery-rail.is-mixed-gallery .media-discovery-video-slide,
.media-discovery-rail.is-mixed-gallery .media-discovery-news-story{
  flex:0 0 91%!important;
  scroll-snap-align:center!important;
  scroll-snap-stop:always!important;
}
@media(max-width:899px){
  .media-discovery-rail.is-mixed-gallery{gap:12px!important;padding:5px 3% 12px!important}
  .media-discovery-rail.is-mixed-gallery .media-discovery-video-slide,
  .media-discovery-rail.is-mixed-gallery .media-discovery-news-story{flex-basis:94%!important}
}

/* ============================================================
   ThetaWire v1.9.99x — 740px Media Discovery viewport
   Desktop-only geometry enlargement. The established shared top
   baseline remains unchanged; the workspace grows downward only.
   ============================================================ */
@media (min-width:900px){
  .public-content-column > .media-discovery-workspace,
  .public-page-main > .media-discovery-workspace{
    height:740px!important;
    min-height:740px!important;
    max-height:740px!important;
  }

  /* Use the taller workspace for the real playable-video/news rail. */
  .media-discovery-rail-shell{
    top:112px!important;
    bottom:0!important;
    min-height:0!important;
  }

  .media-discovery-rail.is-video-gallery,
  .media-discovery-rail.is-news-gallery,
  .media-discovery-rail.is-mixed-gallery{
    height:100%!important;
    max-height:100%!important;
    align-items:center!important;
  }

  .media-discovery-video-slide{
    min-height:0!important;
    align-self:center!important;
  }

  .media-discovery-gallery-video{
    width:100%!important;
    aspect-ratio:16/9!important;
    max-height:100%!important;
  }

  .media-discovery-news-story{
    min-height:560px!important;
    max-height:100%!important;
    align-self:center!important;
  }
}

/* ============================================================
   ThetaWire v1.9.99y — DarkLow-style cinema video viewing
   Gallery returns to a comfortable browsing height. Selecting/
   expanding a video moves the existing player into a near-full-
   viewport 16:9 cinema surface. Also supports Gaming Videos topic.
   ============================================================ */
@media (min-width:900px){
  .public-content-column > .media-discovery-workspace,
  .public-page-main > .media-discovery-workspace{
    height:590px!important;
    min-height:590px!important;
    max-height:590px!important;
  }
  .media-discovery-news-story{
    min-height:430px!important;
  }
}

body.media-discovery-cinema-open{
  overflow:hidden!important;
}
body.media-discovery-cinema-open .media-discovery-player:not([hidden]){
  position:fixed!important;
  inset:0!important;
  z-index:100000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:clamp(18px,3vh,34px) clamp(18px,3vw,48px)!important;
  background:rgba(3,7,11,.97)!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.media-discovery-cinema-open .media-discovery-player-frame{
  position:relative!important;
  width:min(94vw,calc(94vh * 16 / 9))!important;
  height:auto!important;
  max-width:94vw!important;
  max-height:94vh!important;
  aspect-ratio:16/9!important;
  margin:0!important;
  padding:0!important;
  background:#000!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:0 18px 70px rgba(0,0,0,.55)!important;
}
body.media-discovery-cinema-open .media-discovery-live-stage,
body.media-discovery-cinema-open .media-discovery-live-stage iframe,
body.media-discovery-cinema-open .media-discovery-player-frame iframe{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
}
/* Restore the existing Back control in cinema mode only. */
body.media-discovery-cinema-open .media-discovery-player-copy{
  display:block!important;
  position:fixed!important;
  top:18px!important;
  left:22px!important;
  z-index:100002!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
}
body.media-discovery-cinema-open .media-discovery-player-copy > *:not([data-media-discovery-player-back]){
  display:none!important;
}
body.media-discovery-cinema-open [data-media-discovery-player-back]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:9px 15px!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:8px!important;
  background:rgba(8,14,20,.82)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
body.media-discovery-cinema-open [data-media-discovery-player-back]:hover,
body.media-discovery-cinema-open [data-media-discovery-player-back]:focus-visible{
  border-color:#2aa8ee!important;
  background:#087fd1!important;
  outline:none!important;
}
@media(max-width:899px){
  body.media-discovery-cinema-open .media-discovery-player:not([hidden]){
    padding:56px 10px 14px!important;
  }
  body.media-discovery-cinema-open .media-discovery-player-frame{
    width:96vw!important;
    max-width:96vw!important;
  }
  body.media-discovery-cinema-open .media-discovery-player-copy{
    top:10px!important;
    left:10px!important;
  }
}

/* ============================================================
   ThetaWire 4.7.3+ — Direct Tech Video Discovery
   No Topics/Back/card browsing. Start opens random technology
   videos. Search returns videos. Selected video uses the main
   left content player; the existing Stop control ends Discovery.
   ============================================================ */
.media-discovery-workspace-actions [data-media-discovery-home],
.media-discovery-workspace-actions [data-media-discovery-back],
[data-media-discovery-player-back]{display:none!important}

/* Undo the older modal/cinema state completely. */
body.media-discovery-cinema-open{overflow:auto!important}
body.media-discovery-cinema-open .media-discovery-player:not([hidden]),
.media-discovery-player:not([hidden]){
  position:relative!important;inset:auto!important;z-index:auto!important;
  display:block!important;width:100%!important;height:auto!important;
  max-width:none!important;max-height:none!important;margin:0!important;
  padding:0!important;background:transparent!important;border:0!important;
  border-radius:0!important;box-shadow:none!important
}
body.media-discovery-cinema-open .media-discovery-player-frame,
.media-discovery-player-frame{
  position:relative!important;width:100%!important;height:auto!important;
  max-width:none!important;max-height:none!important;aspect-ratio:16/9!important;
  margin:5px 0 0!important;padding:0!important;background:#000!important;
  border-radius:10px!important;overflow:hidden!important;box-shadow:none!important
}
body.media-discovery-cinema-open .media-discovery-live-stage,
body.media-discovery-cinema-open .media-discovery-live-stage iframe,
body.media-discovery-cinema-open .media-discovery-player-frame iframe,
.media-discovery-live-stage,.media-discovery-live-stage iframe,
.media-discovery-player-frame iframe{
  width:100%!important;height:100%!important;max-width:none!important;
  max-height:none!important;margin:0!important;border:0!important;border-radius:0!important
}
.media-discovery-player-copy{display:none!important}

/* The rail is video-first: no captions or card chrome. */
.media-discovery-video-caption{display:none!important}
.media-discovery-rail.is-video-gallery{align-items:center!important}
.media-discovery-video-slide{background:transparent!important;border:0!important;box-shadow:none!important}
.media-discovery-gallery-video{width:100%!important;aspect-ratio:16/9!important;background:#000!important}

/* Remove the old fixed 740/590 experiments. Let 16:9 media size the experience. */
@media (min-width:900px){
  .public-content-column > .media-discovery-workspace,
  .public-page-main > .media-discovery-workspace{
    height:auto!important;min-height:0!important;max-height:none!important
  }
  .media-discovery-rail-shell{position:relative!important;top:auto!important;bottom:auto!important;min-height:0!important}
  .media-discovery-rail.is-video-gallery{height:auto!important;max-height:none!important}
}


/* ============================================================
   ThetaWire 4.7.3 — DarkLow Space-TV player architecture fix
   One contained video per browsing viewport. Playing replaces the
   browse rail with a dedicated main-column 16:9 screen; sidebar is
   the remote and its existing Stop control exits Discovery.
   ============================================================ */
.media-discovery-breadcrumb,
.media-discovery-instruction,
.media-discovery-video-caption,
.media-discovery-video-expand,
.media-discovery-workspace-actions [data-media-discovery-home],
.media-discovery-workspace-actions [data-media-discovery-back],
[data-media-discovery-player-back]{display:none!important}

.public-content-column>.media-discovery-workspace,
.public-page-main>.media-discovery-workspace{
  height:auto!important;min-height:0!important;max-height:none!important;
  overflow:hidden!important
}
.media-discovery-workspace-header{position:relative!important}
.media-discovery-rail-shell{
  position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  width:100%!important;height:auto!important;min-height:0!important;
  margin:0!important;padding:10px 48px 12px!important;overflow:hidden!important
}
.media-discovery-rail.is-video-gallery{
  display:flex!important;width:100%!important;height:auto!important;max-height:none!important;
  gap:0!important;padding:0!important;overflow-x:auto!important;overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;scroll-behavior:smooth!important;align-items:stretch!important
}
.media-discovery-rail.is-video-gallery .media-discovery-video-slide{
  flex:0 0 100%!important;width:100%!important;min-width:100%!important;max-width:100%!important;
  margin:0!important;padding:0!important;scroll-snap-align:start!important;scroll-snap-stop:always!important;
  background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important
}
.media-discovery-gallery-video{
  position:relative!important;display:block!important;width:100%!important;height:auto!important;
  aspect-ratio:16/9!important;margin:0!important;padding:0!important;background:#030304!important;
  border:0!important;border-radius:12px!important;overflow:hidden!important
}
.media-discovery-gallery-video iframe{
  display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important
}
.media-discovery-arrow{z-index:5!important;top:50%!important;transform:translateY(-50%)!important}
.media-discovery-arrow.is-prev{left:6px!important}.media-discovery-arrow.is-next{right:6px!important}

/* Playing state: reproduce DarkLow's dedicated 16:9 main-column screen. */
.media-discovery-workspace.is-video-playing .media-discovery-workspace-header,
.media-discovery-workspace.is-video-playing .media-discovery-rail-shell{display:none!important}
.media-discovery-workspace.is-video-playing .media-discovery-player:not([hidden]){
  display:block!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;
  margin:0!important;padding:0!important;background:#030304!important;border:0!important;border-radius:0!important;
  box-shadow:none!important;overflow:hidden!important
}
.media-discovery-workspace.is-video-playing .media-discovery-player-frame{
  display:block!important;position:relative!important;width:100%!important;height:auto!important;
  aspect-ratio:16/9!important;margin:0!important;padding:0!important;background:#030304!important;
  border:0!important;border-radius:0!important;overflow:hidden!important;box-shadow:none!important
}
.media-discovery-workspace.is-video-playing .media-discovery-live-stage,
.media-discovery-workspace.is-video-playing .media-discovery-live-stage iframe,
.media-discovery-workspace.is-video-playing .media-discovery-player-frame iframe{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important
}
.media-discovery-workspace.is-video-playing .media-discovery-live-status{display:none!important}
.media-discovery-workspace.is-video-playing .media-discovery-player-copy{display:none!important}

@media(max-width:899px){
  .media-discovery-rail-shell{padding:8px 34px 10px!important}
  .media-discovery-gallery-video{border-radius:8px!important}
}

/* ============================================================
   ThetaWire 4.7.3 — Media Discovery video top-gap correction
   Requirement: browsing video begins 3px below the toolbar.
   This overrides the retired 740px experiment's vertical centering.
   ============================================================ */
.media-discovery-workspace > .media-discovery-rail-shell,
.media-discovery-rail-shell{
  position:relative!important;
  top:auto!important;
  bottom:auto!important;
  margin-top:3px!important;
  margin-bottom:0!important;
  padding:0 48px 12px!important;
  min-height:0!important;
  height:auto!important;
}
.media-discovery-rail.is-video-gallery{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-items:flex-start!important;
  padding-top:0!important;
  margin-top:0!important;
}
.media-discovery-rail.is-video-gallery .media-discovery-video-slide{
  align-self:flex-start!important;
  margin-top:0!important;
  padding-top:0!important;
}
.media-discovery-gallery-video{
  margin-top:0!important;
}

@media(max-width:899px){
  .media-discovery-workspace > .media-discovery-rail-shell,
  .media-discovery-rail-shell{
    margin-top:3px!important;
    padding:0 34px 10px!important;
  }
}

/* ============================================================
   ThetaWire 4.7.3 — Video 12px top gap + hidden gallery scrollbar
   Based on the verified 3px working checkpoint.
   Keeps horizontal swipe/trackpad/arrow scrolling functional.
   ============================================================ */
.media-discovery-workspace > .media-discovery-rail-shell,
.media-discovery-rail-shell{
  margin-top:12px!important;
}
.media-discovery-rail.is-video-gallery{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.media-discovery-rail.is-video-gallery::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
@media(max-width:899px){
  .media-discovery-workspace > .media-discovery-rail-shell,
  .media-discovery-rail-shell{
    margin-top:12px!important;
  }
}

/* ThetaWire 4.7.5 — Modern Discovery controller */
.media-discovery-launcher{box-shadow:none!important}
.media-discovery-launcher-actions{display:grid!important;grid-template-columns:1fr 1fr!important;width:78%!important;max-width:300px!important;gap:10px!important;margin:0 auto 18px!important}
.media-discovery-launcher .space-tv-power-button{width:100%!important;min-height:52px!important;box-shadow:none!important}
.media-discovery-launcher .space-tv-power-button[hidden]{display:flex!important;opacity:.45!important;pointer-events:none!important}
.media-discovery-launcher .space-tv-power-button.is-stop{display:flex!important}
body.media-discovery-active .media-discovery-launcher .space-tv-power-button:not(.is-stop){opacity:.45!important;pointer-events:none!important}
body:not(.media-discovery-active) .media-discovery-launcher .space-tv-power-button.is-stop{opacity:.45!important;pointer-events:none!important}
.discovery-modern-controls{border-top:1px solid #dce4eb;padding-top:16px;margin-top:4px}
.discovery-mode-label,.discovery-source-title{font-size:11px;font-weight:800;letter-spacing:.12em;color:#6d7782;text-align:left;margin:0 0 9px}
.discovery-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.discovery-mode-card{appearance:none;border:1px solid #d7e0e8;background:#fff;border-radius:13px;padding:12px 8px 11px;min-width:0;cursor:pointer;color:#18212a;text-align:center;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.discovery-mode-card:hover,.discovery-mode-card:focus-visible{border-color:#79c8ed;outline:none;transform:translateY(-1px)}
.discovery-mode-card.is-selected{border-color:#00a9e8;background:#f3fbff;box-shadow:inset 0 0 0 1px rgba(0,169,232,.12)}
.discovery-mode-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;margin:0 auto 7px;border-radius:10px;background:#f0f4f7;color:#53606c;font-size:16px}
.discovery-mode-card.is-selected .discovery-mode-icon{background:#e1f6ff;color:#008dcc}
.discovery-mode-card strong{display:block;font-size:13px;letter-spacing:.06em}.discovery-mode-card small{display:block;margin-top:4px;color:#7a858f;font-size:10px;white-space:nowrap}
.discovery-source-panel{margin-top:15px}.discovery-source-panel[hidden]{display:none!important}.discovery-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.discovery-source-switch{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #e0e6eb;border-radius:10px;background:#fff;padding:9px 9px 9px 11px;font-size:11px;font-weight:700;color:#303943;cursor:pointer}
.discovery-source-switch input{position:absolute;opacity:0;pointer-events:none}.discovery-source-switch i{position:relative;display:block;flex:0 0 31px;width:31px;height:18px;border-radius:20px;background:#cbd3da;transition:background .16s ease}.discovery-source-switch i:after{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;border-radius:50%;background:#fff;transition:transform .16s ease}.discovery-source-switch input:checked+i{background:#00a9e8}.discovery-source-switch input:checked+i:after{transform:translateX(13px)}
.media-discovery-hint{margin-top:14px!important}.media-discovery-preferences{display:none!important}
@media(max-width:899px){.media-discovery-launcher-actions{width:min(88%,300px)!important}.discovery-mode-card small{white-space:normal}}

/* ============================================================
   ThetaWire 4.7.5 — Discovery visual refinement
   Presentation-only override. Keeps existing Discovery behavior.
   ============================================================ */
.media-discovery-launcher{
  background:#fff!important;
  border-color:#cbd9e5!important;
  color:#18232d!important;
  box-shadow:none!important;
}
.media-discovery-launcher-copy{
  color:#3f4b56!important;
  font-weight:500!important;
}
.media-discovery-launcher-state{
  color:#505b66!important;
  border-color:#cdbddd!important;
  background:#fff!important;
  font-weight:850!important;
  letter-spacing:.07em!important;
}

/* Start/Stop: clear, high-contrast primary controls. */
.media-discovery-launcher .space-tv-power-button:not(.is-stop){
  border:1px solid #008bc9!important;
  background:linear-gradient(180deg,#18b5f3 0%,#0798dc 55%,#078ac9 100%)!important;
  color:#fff!important;
  font-weight:850!important;
  text-shadow:0 1px 0 rgba(0,0,0,.08)!important;
  box-shadow:none!important;
}
.media-discovery-launcher .space-tv-power-button:not(.is-stop):hover,
.media-discovery-launcher .space-tv-power-button:not(.is-stop):focus-visible{
  border-color:#0077ae!important;
  background:linear-gradient(180deg,#31c2fa 0%,#08a4e9 55%,#0786c2 100%)!important;
  outline:3px solid rgba(0,169,232,.16)!important;
  outline-offset:2px!important;
}
.media-discovery-launcher .space-tv-power-button.is-stop{
  border:1px solid #6f3437!important;
  background:linear-gradient(180deg,#2c1719 0%,#211012 100%)!important;
  color:#fff!important;
  font-weight:850!important;
  box-shadow:none!important;
}
.media-discovery-launcher .space-tv-power-button.is-stop:hover,
.media-discovery-launcher .space-tv-power-button.is-stop:focus-visible{
  background:linear-gradient(180deg,#3b1e21 0%,#281214 100%)!important;
  border-color:#8b4549!important;
  outline:3px solid rgba(111,52,55,.13)!important;
  outline-offset:2px!important;
}
/* Disabled state remains obvious without looking washed out. */
.media-discovery-launcher .space-tv-power-button[hidden],
body.media-discovery-active .media-discovery-launcher .space-tv-power-button:not(.is-stop),
body:not(.media-discovery-active) .media-discovery-launcher .space-tv-power-button.is-stop{
  opacity:.62!important;
  filter:saturate(.78)!important;
}

.discovery-modern-controls{
  border-top:2px solid #d9e4ec!important;
  padding-top:18px!important;
}
.discovery-mode-label,.discovery-source-title{
  color:#4c5966!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
  margin-bottom:11px!important;
}
.discovery-mode-grid{gap:11px!important}
.discovery-mode-card{
  border:2px solid #d3dee7!important;
  background:#fff!important;
  border-radius:14px!important;
  padding:13px 9px 12px!important;
  color:#17222c!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.discovery-mode-card:hover,.discovery-mode-card:focus-visible{
  border-color:#35b8ee!important;
  background:#f7fcff!important;
  outline:3px solid rgba(0,169,232,.12)!important;
  outline-offset:2px!important;
}
.discovery-mode-card.is-selected{
  border-color:#00a9e8!important;
  background:linear-gradient(180deg,#f4fcff 0%,#eaf8ff 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(0,169,232,.18)!important;
}
.discovery-mode-icon{
  width:38px!important;height:38px!important;
  background:#eaf0f5!important;
  color:#43515e!important;
  font-size:18px!important;
  font-weight:900!important;
}
.discovery-mode-card.is-selected .discovery-mode-icon{
  background:#d9f4ff!important;
  color:#008dcc!important;
}
.discovery-mode-card strong{
  color:#15212b!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
}
.discovery-mode-card small{
  color:#566573!important;
  font-size:11px!important;
  font-weight:700!important;
}

/* Source controls: brighter cards, stronger labels and switches. */
.discovery-source-panel{margin-top:18px!important}
.discovery-source-grid{gap:10px!important}
.discovery-source-switch{
  min-height:58px!important;
  border:2px solid #d7e2ea!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  padding:11px 12px!important;
  color:#17222c!important;
  font-size:13px!important;
  font-weight:850!important;
  box-shadow:none!important;
  transition:border-color .16s ease,background .16s ease,transform .16s ease!important;
}
.discovery-source-switch:hover,
.discovery-source-switch:focus-within{
  border-color:#58c2ee!important;
  background:#f5fcff!important;
  transform:translateY(-1px)!important;
}
.discovery-source-switch span{
  color:#17222c!important;
  opacity:1!important;
}
.discovery-source-switch i{
  flex-basis:36px!important;
  width:36px!important;
  height:21px!important;
  background:#aebbc6!important;
  border:1px solid #9eacb8!important;
  box-shadow:inset 0 1px 2px rgba(20,40,55,.10)!important;
}
.discovery-source-switch i:after{
  width:17px!important;
  height:17px!important;
  left:1px!important;
  top:1px!important;
  box-shadow:0 1px 2px rgba(0,0,0,.18)!important;
}
.discovery-source-switch input:checked+i{
  background:linear-gradient(180deg,#16b7f3 0%,#009de2 100%)!important;
  border-color:#008dcb!important;
}
.discovery-source-switch input:checked+i:after{
  transform:translateX(15px)!important;
}
.discovery-source-switch:has(input:checked){
  border-color:#b9ddea!important;
  background:#fff!important;
}
.media-discovery-hint{
  color:#687581!important;
  font-weight:600!important;
}


/* 4.7.5 source-icon repair: icons inside the bottom Media/Financial source switches. */
.discovery-source-label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
}
.discovery-source-label>span{
  color:inherit!important;
  white-space:nowrap!important;
}
.discovery-source-icon{
  display:block!important;
  flex:0 0 22px!important;
  width:22px!important;
  height:22px!important;
  color:#566573!important;
}
.discovery-source-icon-youtube{color:#ff0000!important}
.discovery-source-icon-twitch{color:#9146ff!important}
.discovery-source-icon-live{color:#e93444!important}
.discovery-source-icon-markets{color:#008dcc!important}
.discovery-source-icon-companies{color:#526270!important}
.discovery-source-icon-filings{color:#526270!important}

/* ==========================================================================
   ThetaWire 5.1 — Approved prepared Discovery toolbars
   The supplied PNGs remain the complete visible UI.
   Code below adds invisible interaction regions only.
   ========================================================================== */

.media-discovery-launcher{
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.discovery-toolbar-stage{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  aspect-ratio:815 / 1930;
  overflow:hidden!important;
  background:transparent!important;
  border:0!important;
}

.discovery-toolbar-stage:has(.discovery-toolbar-mode-financial.is-selected){
  aspect-ratio:821 / 1916;
}

.discovery-toolbar-art{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  object-fit:fill!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}

.discovery-toolbar-art-financial{visibility:hidden!important}
.discovery-toolbar-stage:has(.discovery-toolbar-mode-financial.is-selected) .discovery-toolbar-art-media{visibility:hidden!important}
.discovery-toolbar-stage:has(.discovery-toolbar-mode-financial.is-selected) .discovery-toolbar-art-financial{visibility:visible!important}

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

.discovery-toolbar-hotspot,
.discovery-toolbar-source{
  position:absolute!important;
  z-index:5!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
  color:transparent!important;
  cursor:pointer!important;
}

.discovery-toolbar-hotspot:hover,
.discovery-toolbar-hotspot:focus,
.discovery-toolbar-source:hover,
.discovery-toolbar-source:focus-within{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}

.discovery-toolbar-hotspot:focus-visible,
.discovery-toolbar-source:focus-within{
  outline:3px solid #00a9e8!important;
  outline-offset:2px!important;
  border-radius:10px!important;
}

.discovery-toolbar-hotspot[hidden]{display:none!important}

/* Same Start/Stop and mode regions as the already-approved prepared-toolbar demo. */
.discovery-toolbar-start{left:15.2%!important;top:36.1%!important;width:34.5%!important;height:6.6%!important}
.discovery-toolbar-stop{left:51.8%!important;top:36.1%!important;width:34.5%!important;height:6.6%!important}

.discovery-toolbar-controls,
.discovery-toolbar-mode-grid{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  pointer-events:none!important;
}

.discovery-toolbar-mode{pointer-events:auto!important}
.discovery-toolbar-mode-media{left:6.8%!important;top:51.0%!important;width:43.0%!important;height:15.1%!important}
.discovery-toolbar-mode-financial{left:51.8%!important;top:51.0%!important;width:43.0%!important;height:15.1%!important}

/* Invisible source-card hit areas preserve the existing checkbox logic.
   They do not paint, redraw, or alter any part of the supplied PNG. */
.discovery-toolbar-source-panel{
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  pointer-events:none!important;
}

.discovery-toolbar-source-panel[hidden]{display:none!important}
.discovery-toolbar-source{pointer-events:auto!important;border-radius:10px!important}
.discovery-toolbar-source input{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  opacity:0!important;
  cursor:pointer!important;
}

/* Media source cards. */
.discovery-toolbar-source-panel-media .discovery-toolbar-source-1{left:6.8%!important;top:71.7%!important;width:42.0%!important;height:8.8%!important}
.discovery-toolbar-source-panel-media .discovery-toolbar-source-2{left:51.8%!important;top:71.7%!important;width:42.0%!important;height:8.8%!important}
.discovery-toolbar-source-panel-media .discovery-toolbar-source-3{left:6.8%!important;top:80.9%!important;width:42.0%!important;height:9.0%!important}
.discovery-toolbar-source-panel-media .discovery-toolbar-source-4{left:51.8%!important;top:80.9%!important;width:42.0%!important;height:9.0%!important}

/* Financial source cards. */
.discovery-toolbar-source-panel-financial .discovery-toolbar-source-1{left:6.8%!important;top:70.0%!important;width:42.0%!important;height:8.8%!important}
.discovery-toolbar-source-panel-financial .discovery-toolbar-source-2{left:51.8%!important;top:70.0%!important;width:42.0%!important;height:8.8%!important}
.discovery-toolbar-source-panel-financial .discovery-toolbar-source-3{left:6.8%!important;top:79.2%!important;width:42.0%!important;height:9.0%!important}
.discovery-toolbar-source-panel-financial .discovery-toolbar-source-4{left:51.8%!important;top:79.2%!important;width:42.0%!important;height:9.0%!important}

@media(max-width:899px){
  .media-discovery-launcher{width:100%!important;max-width:100%!important}
}

/* ==========================================================================
   ThetaWire 5.1 — prepared-toolbar CSS collision hotfix
   Neutralizes all inherited button/card styling on the invisible overlay.
   The supplied PNG remains the only visible toolbar interface.
   ========================================================================== */

[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute!important;
  z-index:10!important;
  margin:0!important;
  padding:0!important;
  min-width:0!important;
  min-height:0!important;
  width:auto;
  height:auto;
  border:0!important;
  outline:0;
  border-radius:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  color:transparent!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
  transition:none!important;
  font-size:0!important;
  line-height:0!important;
  letter-spacing:0!important;
  text-indent:0!important;
}

[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot::before,
[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot::after,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source::before,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source::after{
  content:none!important;
  display:none!important;
}

[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot:hover,
[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot:active,
[data-media-discovery-launcher] .discovery-toolbar-stage button.discovery-toolbar-hotspot:focus,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source:hover,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source:active,
[data-media-discovery-launcher] .discovery-toolbar-stage label.discovery-toolbar-source:focus-within{
  border:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}

/* Keep the approved hotspot geometry intact after the hard reset above. */
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-start{
  left:15.2%!important;top:36.1%!important;width:34.5%!important;height:6.6%!important;
}
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-stop{
  left:51.8%!important;top:36.1%!important;width:34.5%!important;height:6.6%!important;
}
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-mode-media{
  left:6.8%!important;top:51.0%!important;width:43.0%!important;height:15.1%!important;
}
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-mode-financial{
  left:51.8%!important;top:51.0%!important;width:43.0%!important;height:15.1%!important;
}

[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-hotspot[hidden],
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-source-panel[hidden]{
  display:none!important;
}

/* ==========================================================================
   ThetaWire prepared toolbar — exact source-scale service state
   Source reference:
     Media:     815 x 1930, READY capital height 35 px
     Financial: 821 x 1916, READY capital height 35 px
   Runtime service-state typography is rendered at 38 source px with .10em
   tracking so READY and ACTIVE remain fully inside the approved indicator.
   ========================================================================== */

[data-media-discovery-launcher] .discovery-toolbar-runtime-state{
  position:absolute!important;
  z-index:20!important;

  /* Media: centered text replacement box around the measured READY glyphs. */
  left:37.42%!important;          /* 305 / 815 */
  top:30.52%!important;           /* 589 / 1930 */
  width:25.77%!important;         /* 210 / 815 */
  height:2.18%!important;         /* 42 / 1930 */

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;

  /* Covers only the lettering area; original pill artwork remains visible. */
  background:#fff!important;
  box-shadow:none!important;

  color:#737c8b!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:var(--toolbar-state-font-px)!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:var(--toolbar-state-track-px)!important;
  text-align:center!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;

  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
}

/* Financial uses its own source-image coordinates and dimensions. */
[data-media-discovery-launcher] .discovery-toolbar-stage:has(.discovery-toolbar-mode-financial.is-selected)
.discovery-toolbar-runtime-state{
  left:37.27%!important;          /* 306 / 821 */
  top:30.53%!important;           /* 585 / 1916 */
  width:25.58%!important;         /* 210 / 821 */
  height:2.19%!important;         /* 42 / 1916 */
}

/* Invisible interaction regions must never alter the approved artwork. */
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-hotspot:focus,
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-hotspot:focus-visible,
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-hotspot:active,
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-source:focus,
[data-media-discovery-launcher] .discovery-toolbar-stage .discovery-toolbar-source:focus-within{
  outline:none!important;
  outline-offset:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
