.mvc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.mvc-resource,.mvc-path,.mvc-tier,.mvc-status-grid>article{height:100%;padding:1.25rem;border:1px solid #dbe4f0;border-radius:1rem;background:#fff;box-shadow:0 10px 28px rgba(18,43,78,.055)}
.mvc-resource h3,.mvc-path h3,.mvc-status-grid h3{margin:.55rem 0;font-size:1.1rem;color:#162b49}
.mvc-resource p,.mvc-path p,.mvc-tier p,.mvc-status-grid p{color:#53647a;line-height:1.65}
.mvc-tag{display:inline-flex;padding:.28rem .6rem;border-radius:999px;background:#edf4fb;color:#175a9c;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.mvc-grid a{color:#155c9e;text-underline-offset:3px}
.mvc-audiences{grid-template-columns:repeat(2,minmax(0,1fr))}
.mvc-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}
.mvc-tier strong{display:block;margin:.8rem 0 .25rem;color:#172d4a;font-size:1.45rem}
.mvc-note,.mvc-status-grid{margin-top:1.4rem}
.mvc-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.mvc-passport{max-width:860px;padding:clamp(1rem,3vw,2rem);border:1px solid #d9e2ef;border-radius:1.2rem;background:#fff}
.mvc-passport>p{max-width:70ch;line-height:1.7;color:#506078}
.mvc-passport label[for="mvc-topic"]{display:block;margin:.8rem 0 .45rem;font-weight:700;color:#152d4b}
.mvc-passport select{width:100%;max-width:26rem;min-height:2.8rem;padding:.55rem .8rem;border:1px solid #9aabc0;border-radius:.55rem;background:#fff;color:#172d4a;font:inherit}
#mvc-passport-list{margin:1rem 0;padding:0;list-style:none}
#mvc-passport-list li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem .25rem;border-bottom:1px solid #e4eaf1}
#mvc-passport-list label{display:flex;gap:.6rem;align-items:center}
#mvc-passport-list input{width:1.15rem;height:1.15rem;accent-color:#1d67a8}
#mvc-status{min-height:1.5em;color:#315676;font-weight:600}
.mvc-passport button{cursor:pointer}
@media(max-width:900px){.mvc-grid,.mvc-tiers,.mvc-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.mvc-grid,.mvc-audiences,.mvc-tiers,.mvc-status-grid{grid-template-columns:1fr}#mvc-passport-list li{align-items:flex-start;flex-direction:column}}
@media print{.header,.footer,.utility,.mvc-passport select,.mvc-passport .mem-actions,.mvc-passport>p:first-child{display:none!important}.mvc-passport{border:0;padding:0}.mvc-passport a{color:#111;text-decoration:none}.mvc-passport input{appearance:none;border:1px solid #555;width:.9rem;height:.9rem}}
