.module-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;margin-top:24px}.module-rail{display:flex;flex-direction:column;position:sticky;top:95px;align-self:start;border-right:1px solid var(--line,#dce2e7);padding-right:22px}.module-rail a{padding:9px 0;color:var(--muted,#607080);text-decoration:none}.module-rail a[aria-current="page"]{color:var(--ink,#203040);font-weight:700}.module-rail .archive-link{border-top:1px solid #dce2e7;margin-top:14px;font-size:12px}.plan-row{display:grid;grid-template-columns:42px minmax(0,1fr) 145px;gap:18px;padding:22px 0;border-bottom:1px solid #dce2e7;text-decoration:none;color:inherit}.plan-row:hover h2{text-decoration:underline;text-underline-offset:4px}.plan-id{color:#7b858b;font-size:12px;padding-top:4px}.plan-row h2{font-size:18px;margin:0 0 8px}.plan-row p{margin:0 0 9px;line-height:1.7;color:#56616b}.plan-row small{color:#7b858b;font-size:12px}.plan-row-status{display:flex;flex-direction:column;text-align:right;gap:8px;padding-top:3px;font-size:13px}.plan-document{max-width:980px;margin:auto}.plan-document header h1{font-size:32px;line-height:1.5}.plan-document header>p{max-width:780px;line-height:1.85}.plan-state{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.plan-section{margin:32px 0;max-width:800px}.plan-section h2{font-size:20px;border-bottom:1px solid #dce2e7;padding-bottom:12px}.plan-section li+li{margin-top:10px}.plan-section li,.plan-section p{line-height:1.8}.card-contract{padding:18px 0;border-bottom:1px solid #dce2e7}.card-contract summary{cursor:pointer;font-weight:600;padding:9px 0}.card-contract table{margin-top:14px}.card-contract th[scope="row"]{min-width:130px;font-weight:400;color:#677580}.plan-document .download-item small{display:block}.plan-document .download-item{gap:14px}.plan-document .info-bar{line-height:1.75}.library-tabs{flex-wrap:wrap}.library-tabs button{white-space:nowrap}.filter-row label{font-size:12px;color:#687480}.plan-row a:focus-visible,.module-rail a:focus-visible{outline:2px solid #698c94;outline-offset:5px}
@media(min-width:1101px){.content.outline-expanded>.plan-document{margin-left:224px;margin-right:0;max-width:none}}
@media(max-width:760px){.module-layout{display:block}.module-rail{position:static;display:flex;flex-direction:row;gap:16px;overflow-x:auto;border-right:0;border-bottom:1px solid #dce2e7;padding:0 0 10px;margin-bottom:16px}.module-rail a{white-space:nowrap}.module-rail .archive-link{border:0;margin:0}.plan-row{grid-template-columns:35px minmax(0,1fr);gap:11px}.plan-row-status{grid-column:2;text-align:left;flex-direction:row;flex-wrap:wrap}.plan-document header h1{font-size:25px}.plan-section{margin:26px 0}.card-contract th[scope="row"]{min-width:95px}.filter-row{gap:10px;flex-wrap:wrap}.plan-document .download-item{flex-wrap:wrap}.module-directory{min-width:0}}

/* Shared library directory and plan cards. */
.catalog-file-icon{color:#a8804f;padding-top:4px}.catalog-file-icon .icon{width:22px;height:22px}
.detail-nav{flex-wrap:wrap}.detail-body .download-item{min-width:0}.detail-body .download-item>div{min-width:0}.detail-body .download-item strong{overflow-wrap:anywhere}
.detail-body .resource-bundle{border-color:#b8cdc8;background:var(--teal-soft,#edf4f3);padding:20px;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.resource-download-copy{flex:1;min-width:0}.resource-download-copy small{display:block;color:var(--muted,#607080);line-height:1.7;margin-top:4px}
.detail-body .resource-bundle strong{font-size:14px;line-height:1.65}.resource-bundle>.icon{flex-shrink:0}.resource-download-access{max-width:100%;line-height:1.7;overflow-wrap:anywhere}
.resource-files{border-top:1px solid var(--line,#dce2e7);border-bottom:1px solid var(--line,#dce2e7)}
.resource-files>summary{display:flex;align-items:center;gap:12px;padding:15px 0;cursor:pointer;color:var(--ink,#203040);font-size:13px;line-height:1.7;list-style:none}
.resource-files>summary::-webkit-details-marker{display:none}.resource-files>summary small{color:var(--muted,#607080);font-size:11px;margin-left:auto}.resource-files>summary>.icon{width:17px;height:17px;flex-shrink:0}.resource-files[open]>summary>.icon{transform:rotate(180deg)}
.resource-files>summary:focus-visible,.resource-bundle .btn:focus-visible,.resource-file-list .btn:focus-visible{outline:2px solid var(--teal,#46726d);outline-offset:4px}
.resource-file-list{padding:2px 0 6px}.resource-file-list .download-item{flex-wrap:wrap}.resource-repository{margin-top:20px}
@media(max-width:580px){.detail-body .resource-bundle{padding:16px;gap:10px}.detail-body .resource-bundle strong{font-size:13px}.resource-bundle>.btn{flex-basis:100%;margin-left:0}.resource-bundle>.resource-download-access{flex-basis:100%}.resource-file-list .download-item>.btn{margin-left:auto}.resource-files>summary{gap:8px}.resource-files>summary small{white-space:nowrap}}
.catalog-directory,.catalog-directory .plan-row,.catalog-directory .plan-row>div,.catalog-card,.catalog-card .weapon-main{min-width:0}
.catalog-directory .plan-row h2,.catalog-directory .plan-row p,.catalog-directory .plan-row small,.catalog-directory .plan-row-status,.catalog-card .weapon-title,.catalog-card .weapon-summary,.catalog-card .weapon-tools{overflow-wrap:anywhere}
.catalog-directory .plan-row-status>*{min-width:0;max-width:100%;line-height:1.6}
.catalog-card .weapon-top{flex-wrap:wrap;gap:8px}
.catalog-card .pill{max-width:100%;white-space:normal;overflow-wrap:anywhere}
.catalog-card-status{display:flex;flex-wrap:wrap;gap:6px 12px;margin:0 24px;padding:12px 0;border-top:1px solid var(--line,#dce2e7);font-size:12px;line-height:1.6;color:var(--muted,#607080)}
.catalog-card-status>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
@media(max-width:580px){.catalog-card-status{margin-left:22px;margin-right:22px}}

.catalog-directory .plan-row h3{font-size:18px;margin:0 0 8px;overflow-wrap:anywhere}
.catalog-directory .plan-row:hover h3{text-decoration:underline;text-underline-offset:4px}
.catalog-group+.catalog-group{margin-top:34px}
.catalog-group>.catalog-module-title{font-size:20px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.catalog-group>.weapons-grid{margin-top:18px}
@media(max-width:760px){
 .catalog-group+.catalog-group{margin-top:28px}
 .results-head{flex-wrap:wrap;gap:10px 16px}
 .results-head>span,.results-head>.row{min-width:0;max-width:100%}
 .results-head>span{overflow-wrap:anywhere}
 .results-head>.row{flex-wrap:wrap}
 .results-head>.row>.btn{max-width:100%;white-space:normal}
 .results-head>.row>.view-toggle{flex-shrink:0}
}
