:root{--k400-wine:#8b101b;--k400-wine-dark:#5d0b12;--k400-gold:#b88a2b;--k400-ink:#30231d;--k400-muted:#6d5b50;--k400-cream:#f7eddc;--k400-paper:#fffaf2;--k400-line:rgba(96,61,40,.19);--k400-shadow:0 16px 42px rgba(45,28,17,.09)}
.k400-page{width:100%;max-width:none;margin:0;overflow-x:hidden;background:#fbf5ea;color:var(--k400-ink)}
.k400-hero{position:relative;width:100%;max-width:none;margin:0;min-height:clamp(500px,46vw,720px);display:grid;align-items:end;padding:clamp(42px,6vw,88px) clamp(22px,4vw,72px);box-sizing:border-box;background:linear-gradient(90deg,rgba(21,10,8,.91),rgba(70,19,19,.72) 47%,rgba(54,25,15,.18) 84%),url('../img/library-3.04/catholic-library-hero.png') center center/cover no-repeat;color:#fff8eb;border-bottom:1px solid rgba(244,212,123,.24)}
.k400-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 48%,rgba(251,245,234,.06));pointer-events:none}.k400-hero-copy{position:relative;z-index:1;width:min(1080px,76vw);padding:clamp(24px,3vw,46px);border:1px solid rgba(255,226,154,.29);border-radius:28px;background:linear-gradient(135deg,rgba(75,14,20,.88),rgba(20,12,9,.64));box-shadow:0 24px 70px rgba(0,0,0,.35);backdrop-filter:blur(3px)}
.k400-eyebrow,.k400-kicker{margin:0 0 .65rem;color:#e7bd59;font:900 .76rem/1.2 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase}.k400-hero h1{margin:0 0 1rem;color:#fff8eb;font-size:clamp(2.65rem,5vw,5.9rem);line-height:.95;letter-spacing:-.045em}.k400-hero p{max-width:950px;margin:.5rem 0 0;color:#fff1dc;font-size:clamp(1.02rem,1.25vw,1.24rem);line-height:1.7}.k400-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:1.35rem}.k400-hero-actions a{display:inline-flex;align-items:center;justify-content:center;padding:.78rem 1.05rem;border-radius:999px;background:#fff4df;color:#78131b;border:1px solid rgba(255,226,154,.35);text-decoration:none;font-weight:900}.k400-hero-actions a.secondary{background:rgba(49,18,14,.72);color:#fff6e9}.k400-hero-actions a[hidden]{display:none}
.k400-content{width:97%;max-width:none;margin:0 auto;padding:clamp(28px,4vw,62px) 0 72px;box-sizing:border-box}.k400-section{width:100%;box-sizing:border-box;margin:0 0 24px;padding:clamp(22px,3vw,38px);border:1px solid var(--k400-line);border-radius:26px;background:rgba(255,250,242,.96);box-shadow:var(--k400-shadow)}.k400-section h2{margin:.1rem 0 .8rem;color:#2a1714;font-size:clamp(1.65rem,2.7vw,2.65rem);line-height:1.08}.k400-section h3{margin:.1rem 0 .55rem;color:var(--k400-wine-dark)}.k400-section p,.k400-section li{line-height:1.72}.k400-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:1rem}.k400-small-state{color:var(--k400-muted);font-size:.88rem;font-weight:700;text-align:right}
.k400-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.k400-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.k400-metrics-six{grid-template-columns:repeat(6,minmax(0,1fr))}.k400-card{min-width:0;padding:20px;border:1px solid var(--k400-line);border-radius:20px;background:#fffdf8;box-shadow:0 10px 26px rgba(45,28,17,.06)}.k400-card p:last-child{margin-bottom:0}.k400-card a{color:var(--k400-wine);font-weight:850}.k400-metric strong{display:block;color:var(--k400-wine-dark);font-size:clamp(1.7rem,2.9vw,3rem);line-height:1}.k400-metric span{display:block;margin-top:.5rem;color:var(--k400-muted);font-size:.84rem;font-weight:850}.k400-class-card{cursor:pointer;text-align:left}.k400-class-card:hover{border-color:rgba(139,16,27,.4);transform:translateY(-1px)}
.k400-callout{margin-top:1.2rem;padding:16px 18px;border-left:5px solid var(--k400-gold);border-radius:14px;background:#fff2d2;line-height:1.6}.k400-badge{display:inline-flex;align-items:center;max-width:100%;padding:.38rem .62rem;border-radius:999px;background:#e7f4e9;color:#285a32;font:900 .72rem/1.2 system-ui,sans-serif}.k400-badge.review{background:#f6e7c3;color:#6a4714}.k400-badge.gap{background:#f7dddd;color:#7d1717}.k400-badge.fallback{background:#ece8e1;color:#66584e}
.k400-view-tabs{display:flex;gap:8px;margin:0 0 16px;padding:5px;border:1px solid var(--k400-line);border-radius:16px;background:#f2e4ca;width:max-content;max-width:100%}.k400-view-tabs button{border:0;border-radius:12px;padding:.72rem 1rem;background:transparent;color:#5e4435;font-weight:900;cursor:pointer}.k400-view-tabs button.active{background:#fffdf8;color:var(--k400-wine);box-shadow:0 7px 18px rgba(45,28,17,.09)}
.k400-browser-controls{display:grid;grid-template-columns:2fr repeat(3,minmax(180px,1fr));gap:12px;margin-bottom:14px}.k400-field label{display:block;margin:0 0 .35rem;color:#5f4639;font:850 .76rem/1.2 system-ui,sans-serif}.k400-field input,.k400-field select{width:100%;min-height:44px;box-sizing:border-box;border:1px solid rgba(83,56,40,.25);border-radius:12px;background:#fffdf9;padding:.7rem .8rem;color:#2f231d;font:inherit}.k400-preserved-toggle{display:flex;align-items:center;gap:16px;margin:0 0 15px;padding:14px;border:1px dashed rgba(83,56,40,.26);border-radius:16px;background:#fff8e9}.k400-preserved-toggle p{margin:0;color:var(--k400-muted);font-size:.9rem}.k400-button{border:1px solid var(--k400-wine);border-radius:999px;padding:.66rem .95rem;background:var(--k400-wine);color:white;font-weight:900;cursor:pointer}.k400-button.ghost{background:#fffaf1;color:var(--k400-wine)}.k400-button:disabled{opacity:.45;cursor:not-allowed}
.k400-table-wrap{width:100%;overflow:auto;border:1px solid var(--k400-line);border-radius:18px;background:#fffdf9}.k400-table{width:100%;min-width:900px;border-collapse:collapse}.k400-table th,.k400-table td{padding:13px 14px;border-bottom:1px solid var(--k400-line);vertical-align:top;text-align:left}.k400-table th{position:sticky;top:0;z-index:1;background:#eedbb6;color:#4c3026;font-size:.75rem;letter-spacing:.035em;text-transform:uppercase}.k400-table tr:last-child td{border-bottom:0}.k400-table code{font-size:.72rem;overflow-wrap:anywhere}.k400-table a{color:var(--k400-wine);font-weight:850}.k400-source-path{display:block;max-width:460px;overflow-wrap:anywhere;color:#6a584e;font-size:.76rem}.k400-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:13px}.k400-pager-buttons{display:flex;gap:8px}.k400-empty{padding:25px;text-align:center;color:#6f5e54;border:1px dashed rgba(83,56,40,.28);border-radius:15px;background:#fffaf1}
.k400-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.k400-detail-list{margin:0;padding:20px;border:1px solid var(--k400-line);border-radius:18px;background:#fffdf8}.k400-detail-list dt{margin-top:1rem;color:#705044;font-size:.72rem;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.k400-detail-list dt:first-child{margin-top:0}.k400-detail-list dd{margin:.22rem 0 0;overflow-wrap:anywhere}.k400-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.k400-access-card{padding:18px;border:1px solid var(--k400-line);border-radius:18px;background:#fffdf8}.k400-access-card code{display:block;overflow-wrap:anywhere;font-size:.76rem}.k400-work-hero{min-height:clamp(430px,40vw,620px)}
@media(max-width:1280px){.k400-metrics-six{grid-template-columns:repeat(3,minmax(0,1fr))}.k400-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.k400-browser-controls{grid-template-columns:1fr 1fr}.k400-hero-copy{width:88%}}
@media(max-width:760px){.k400-content{width:calc(100% - 20px)}.k400-hero{padding-left:10px;padding-right:10px;min-height:520px}.k400-hero-copy{width:100%;padding:22px;border-radius:22px}.k400-grid,.k400-grid.three,.k400-metrics-six,.k400-browser-controls,.k400-detail-grid,.k400-access-grid{grid-template-columns:1fr}.k400-section{padding:18px;border-radius:20px}.k400-section-head,.k400-preserved-toggle,.k400-pager{align-items:flex-start;flex-direction:column}.k400-small-state{text-align:left}.k400-view-tabs{width:100%}.k400-view-tabs button{flex:1}.k400-table{min-width:820px}}

.k400-access-card strong{display:block;margin-bottom:.45rem;color:var(--k400-wine-dark)}
.k400-badge.support{background:#e5e8f2;color:#38466e}
