:root{--room-art:url('/skins/vault55/room-learning.webp')}
body[data-room=video]{--room-art:url('/skins/vault55/room-video.webp')}
body[data-room=audio]{--room-art:url('/skins/vault55/room-audio.webp')}
body[data-room=text]{--room-art:url('/skins/vault55/room-text.webp')}
#vault-room{isolation:isolate;position:relative;max-width:1600px;margin:auto;overflow:hidden;border-bottom:1px solid #75d79840;color:#e6f2e8;background:#05100b}
.vault-room-art,.vault-room-shade{position:absolute;inset:0;z-index:-2}
.vault-room-art{background:var(--room-art) center 48%/cover;opacity:.8;animation:room-breathe 22s ease-in-out infinite alternate}
.vault-room-shade{z-index:-1;background:linear-gradient(90deg,#040c09e8 0%,#04100a72 64%,#04100a26),linear-gradient(0deg,#040d0bf5,transparent 55%)}
.vault-room-top{display:flex;justify-content:space-between;align-items:center;padding:22px 4%;gap:20px}
.vault-home{display:flex;align-items:center;gap:12px;text-decoration:none;color:#d9fce1}
.vault-home>span{border:2px solid #8bffb080;border-radius:50%;font:700 22px/1 monospace;padding:10px}
.vault-home b{font:700 15px/1.3 monospace;letter-spacing:.18em}
.vault-home small{display:block;font-size:9px;margin-top:5px;color:#a0bea9;letter-spacing:.14em}
.vault-room-top>div{display:flex;gap:20px;align-items:center}
.vault-deck{color:#c5d5ca;font:12px/1.4 monospace;text-decoration:none}
.vault-room-copy{padding:28px 5% 42px;max-width:820px;min-height:240px}
.vault-room-copy>p:first-child{font:10px/1.5 monospace;letter-spacing:.24em;color:#8bffb0}
.vault-room-copy h1{font-size:clamp(38px,5vw,70px);letter-spacing:-.055em;line-height:1.05;margin:16px 0}
.vault-room-copy>p:last-child{max-width:540px;color:#c1d0c5;font-size:16px;line-height:1.65}
.vault-room-nav{display:flex;gap:6px;padding:0 4% 20px;overflow-x:auto}
.vault-room-nav a{display:flex;align-items:center;gap:10px;white-space:nowrap;text-decoration:none;padding:13px 18px;color:#b4cabc;border:1px solid #b0ffd61c;border-radius:9px;background:#06100cb3;font-size:13px}
.vault-room-nav a small{font:10px monospace;color:#83aa8e}
.vault-room-nav a[aria-current]{background:#87ffac18;border-color:#8bffb080;color:#baffcd}
html[data-vault55] .library-main{padding-top:28px}
html[data-vault55] .library-main>.library-hero:first-child{display:none}
html[data-vault55] .archive-briefing,html[data-vault55] .feature-banner{display:none}
html[data-vault55] .site-header .brand,html[data-vault55] .primary-nav>a{display:none}
html[data-vault55] .site-header{position:relative;top:auto}
html[data-vault55] .login-copy,html[data-vault55] .login-header,html[data-vault55] .login-vessel,html[data-vault55] .login-card>p:has(a){display:none}
html[data-vault55] .login-main{display:block;min-height:0;padding:40px 24px 70px}
html[data-vault55] .login-card{max-width:600px;margin:auto}
.vault-room-compact .vault-room-copy{min-height:0;padding-top:0;padding-bottom:12px}
.vault-room-compact .vault-room-copy h1{font-size:30px}
.vault-room-compact .vault-room-copy>p{display:none}
.vault-room-compact .vault-room-art{opacity:.4}
.vault-subjects{display:flex;flex-direction:column;gap:5px;color:#a4c2ae;font-size:10px;text-transform:uppercase;letter-spacing:.08em;min-width:160px}
.vault-subjects select{background:#0a1b12;color:#daf7e2;border:1px solid #6f977b66;border-radius:8px;padding:9px;font:13px inherit}
html[data-vault55] .library-toolbar{flex-wrap:wrap}
.vault-motion-paused .vault-room-art{animation-play-state:paused}
.vault-motion-paused #matrix-rain{visibility:hidden}
@keyframes room-breathe{from{transform:scale(1)}to{transform:scale(1.035)}}
@media(prefers-reduced-motion:reduce){.vault-room-art{animation:none}}
@media(max-width:650px){.vault-room-top{padding:16px}.vault-home small{font-size:8px}.vault-room-top>div{gap:8px;flex-direction:column;align-items:flex-end}.vault-room-copy{padding:26px 20px 32px;min-height:220px}.vault-room-copy>p:last-child{font-size:14px}.vault-room-nav{padding:0 16px 16px}.vault-room-nav a{padding:12px}.vault-room-compact .vault-room-copy{padding-left:20px}.vault-subjects{width:100%}}

/* Compact library chrome and an author/title index. */
.vault-room-library .vault-room-top{padding:12px 4%;gap:12px}
.vault-room-library .vault-home{gap:9px}
.vault-room-library .vault-home>span{font-size:17px;padding:8px;border-width:1px}
.vault-room-library .vault-home b{font-size:12px;letter-spacing:.13em}
.vault-room-library .vault-home small{font-size:8px;margin-top:3px}
.vault-room-library .vault-room-copy{padding:0 4% 10px;min-height:0;max-width:none}
.vault-room-library .vault-room-copy h1{font-size:23px;line-height:1.2;margin:0;letter-spacing:-.025em}
.vault-room-library .vault-room-copy>p{display:none}
.vault-room-library .vault-room-nav{padding:0 4% 12px;gap:6px}
.vault-room-library .vault-room-nav a{padding:6px 12px;min-height:32px;border-radius:5px;font-size:12px}
.vault-room-library .vault-room-art{opacity:.3}
html[data-vault55] .vault-room-library .site-header{height:42px;min-height:42px;display:flex;padding:0 4%;gap:12px}
.vault-room-library .primary-nav{margin:0;gap:23px;height:100%}
.vault-room-library .nav-button{font-size:12px}
html[data-vault55] .vault-room-library .library-main{padding:16px 4% 26px}
.vault-room-library .section-heading{margin-bottom:10px;gap:10px}
.vault-room-library .section-heading h2{font-size:21px}
.vault-room-library .section-heading h2 .count{font-size:10px;margin-left:9px}
.vault-room-library .section-heading .button{min-height:32px;padding:5px 10px;font-size:11px}
.vault-room-library .continue-section{margin-bottom:20px}
.vault-room-library .continue-section .section-heading h2{font-size:14px;font-weight:500;letter-spacing:0}
.vault-room-library .continue-section .text-button{font-size:11px}
.vault-room-library .continue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.vault-room-library .continue-card{min-height:64px;padding:10px 12px;grid-template-columns:24px minmax(0,1fr) 18px;gap:10px;border-radius:6px}
.vault-room-library .continue-card h3{font-size:12px;line-height:1.4;margin:0 0 3px}
.vault-room-library .continue-card p{font-size:10px}
.vault-room-library .continue-card .item-type-icon{width:24px;height:24px;border-radius:5px}
.vault-room-library .continue-card .icon{width:18px;height:18px}
.vault-room-library .library-toolbar{display:flex;flex-flow:row wrap;align-items:flex-end;justify-content:flex-start;gap:10px;margin-bottom:12px}
.vault-room-library .filter-tabs{gap:3px;flex-shrink:0;align-items:center;min-height:34px}
.vault-room-library .filter-button{min-height:34px;padding:6px 10px;font-size:12px}
.vault-room-library .search-box{flex:1 1 220px;width:auto;min-width:180px;max-width:none;border-radius:6px;padding:0 10px;min-height:34px}
.vault-room-library .search-box input{padding:8px 0!important;font-size:12px}
.vault-room-library .vault-subjects{flex:0 1 250px;min-width:180px;max-width:100%;gap:3px;font-size:9px}
.vault-room-library .vault-subjects select{min-width:0;max-width:100%;min-height:34px;padding:6px 8px;font-size:12px;border-radius:6px}
.vault-room-library .collection-filter{font-size:11px;margin-bottom:10px}
.vault-room-library .collection-filter:empty{display:none}

.library-table-wrap{max-height:min(65vh,720px);overflow:auto;border:1px solid var(--line);border-radius:8px;background:#0a1711d9;scrollbar-color:#3a6148 #0a1711;scrollbar-width:thin;overscroll-behavior:contain}
.library-table-wrap:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.library-program-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:12px;line-height:1.45;text-align:left}
.library-program-table th{position:sticky;top:0;z-index:1;background:#142e20;border-bottom:1px solid #42664e;padding:0 12px;height:42px;color:#b5d0be;font-size:11px;font-weight:500;letter-spacing:.025em;text-align:left}
.library-program-table th:nth-child(1){width:22%}
.library-program-table th:nth-child(2){width:49%}
.library-program-table th:nth-child(3){width:17%}
.library-program-table th:nth-child(4){width:12%;text-align:right}
.library-sort-button{display:flex;align-items:center;gap:8px;width:100%;min-height:42px;padding:0;border:0;background:transparent;color:inherit;text-align:left;font-size:12px;font-weight:600}
.library-sort-button:hover{color:var(--green)}
.library-sort-button:focus-visible{outline:2px solid var(--green);outline-offset:-3px;border-radius:3px}
.library-program-table th[aria-sort]{color:var(--green)}
.library-sort-button .icon{width:14px;height:14px}
.library-program-table td{padding:9px 12px;border-bottom:1px solid #213a2b99;vertical-align:middle;overflow-wrap:anywhere}
.library-program-table tr:last-child td{border-bottom:0}
.library-program-row:hover td{background:#23432d66}
.library-program-author{color:#9fb8a8;font-size:12px}
.library-program-title{display:flex;align-items:center;gap:8px;width:100%;min-height:28px;padding:0;border:0;background:transparent;color:#e0f1e6;text-align:left;font-size:13px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}
.library-program-title>span{flex:1;min-width:0}
.library-program-title>.icon{width:13px;height:13px;color:var(--green);flex:none}
.library-program-title:hover{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.library-program-title:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:3px}
.library-program-meta{font-size:10px;color:var(--muted)}
.library-program-meta>span{display:inline-block;margin:2px 9px 2px 0}
.library-program-meta .icon{width:12px;height:12px;margin-right:4px}
.library-program-status{color:#a1c5ab;font:10px/1.5 var(--mono);text-align:right}
.library-program-status .icon{width:13px;height:13px;margin-left:6px}
.vault-room-library .library-footer{margin-top:20px;padding-top:14px}
@media(max-width:750px){
 .vault-room-library .library-toolbar{align-items:center}
 .vault-room-library .filter-tabs{width:100%}
 .vault-room-library .vault-subjects{flex:1 1 200px;width:auto}
 .vault-room-library .search-box{align-self:flex-end;flex:1 1 200px}
 .vault-room-library .continue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .vault-room-library .continue-section .continue-card:nth-child(3){display:none}
 .library-program-table th:nth-child(1){width:26%}
 .library-program-table th:nth-child(2){width:56%}
 .library-program-table th:nth-child(3){width:18%}
 .library-program-table th:nth-child(4),.library-program-status{display:none}
 .library-program-table td,.library-program-table th{padding-left:10px;padding-right:10px}
}
@media(max-width:480px){
 .vault-room-library .vault-room-top{padding:10px 16px}
 .vault-room-library .vault-room-top>div{flex-direction:row;gap:10px}
 .vault-room-library .vault-deck{display:none}
 .vault-room-library .vault-room-copy{padding:0 16px 8px}
 .vault-room-library .vault-room-copy h1{font-size:21px}
 .vault-room-library .vault-room-nav{padding:0 16px 10px}
 .vault-room-library .vault-room-nav a{min-height:38px;padding:7px 10px;font-size:11px}
 html[data-vault55] .vault-room-library .site-header{padding:0 16px}
 html[data-vault55] .vault-room-library .library-main{padding:14px 16px 24px}
 .vault-room-library .primary-nav{gap:20px}
 .vault-room-library .continue-grid{grid-template-columns:minmax(0,1fr)}
 .vault-room-library .continue-card{min-height:58px}
 .vault-room-library .section-heading h2{font-size:19px}
 .vault-room-library .section-heading h2 .count{display:inline-block;font-size:9px;margin-left:6px}
 .vault-room-library .vault-subjects,.vault-room-library .search-box{flex-basis:100%;width:100%}
 .library-program-table th:nth-child(1){width:31%}
 .library-program-table th:nth-child(2){width:69%}
 .library-program-table th:nth-child(3),.library-program-meta{display:none}
 .library-program-title{font-size:12px}
 .library-program-author{font-size:11px}
 .library-program-table td{padding-top:8px;padding-bottom:8px}
}
