body{background:#f2f4f8;margin:0;padding:0;font-family:sans-serif;}  
main{background:#fff;max-width:800px;margin:2rem auto;padding:2rem;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.05);}  

#logo-bar{text-align:center;margin-bottom:1rem;}  
#logo-bar img{max-height:50px;max-width:45%;margin:.5rem;object-fit:contain;}  

h1{text-align:center;margin:2rem 0 .5rem;position:relative;padding:.5rem 0;}  
h1::before{content:"";display:block;width:12rem;height:3px;background:#e60e11;margin:0 auto .5rem;border-radius:2px;}  
h1::after{content:"";display:block;width:12rem;height:3px;background:#007B8A;margin:.5rem auto 0;border-radius:2px;}  
h2{font-size:1.25rem;margin:2rem 0 1rem;border-left:4px solid #007B8A;padding:.75rem;position:sticky;top:0;background:#fff;z-index:1;box-shadow:0 2px 4px rgba(0,0,0,0.05);}  

.radio-group{display:flex;align-items:center;flex-wrap:nowrap;gap:1rem;padding:.75rem;border-bottom:1px solid #eee;}  
.radio-group:last-child{border-bottom:none;}  
.criterion-text,.criterion-heading{flex:1;}  

.choice{margin-left:1rem;}  
.choice input[type="radio"]{position:absolute;opacity:0;width:0;height:0;}  
.choice span{display:inline-block;padding:.4rem .8rem;border-radius:.2rem;transition:background-color .2s,color .2s;}  
.choice.yes span{border:2px solid #28a745;color:#28a745;}  
.choice.no span{border:2px solid #dc3545;color:#dc3545;}  
.choice.yes input:checked+span{background-color:#28a745;color:#fff;}  
.choice.no input:checked+span{background-color:#dc3545;color:#fff;}  

.criterion-heading{position:relative;padding-left:1.2rem;cursor:pointer;}  
.criterion-heading::before{content:"▼";position:absolute;left:0;top:0;font-size:0.8em;line-height:1;transition:transform .2s ease;}  
.criterion-heading.collapsed::before{transform:rotate(-90deg);}  

#buttons{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;margin:1.5rem auto;max-width:800px;padding:0 1rem;}  
#buttons button{flex:1 1 0;min-width:0;padding:.75rem 1.25rem;font-size:1rem;cursor:pointer;border-radius:4px;transition:opacity .2s;}  
#buttons button:hover{opacity:.9;}  

.download-pdf-button{background:#007B8A;color:#fff;border:1px solid #007B8A;}  
.print-results-button{background:#007B8A;color:#fff;border:1px solid #007B8A;}  
.check-eligibility-button{background:#29baab;color:#fff;border:1px solid #29baab;}  
.reset-button{background:#e60e11;color:#fff;border:1px solid #e60e11;}  

#results{margin-top:2rem;padding:1rem;border:1px solid #ddd;border-radius:4px;}  
.met{color:green;}  
.fail{color:red;}  

@media (max-width: 600px) {
  .radio-group{flex-wrap:wrap;}                              /* allow children to wrap */
  .criterion-text,
  .criterion-heading{flex:1 1 100%;}                        /* label spans full row */
  .choice{flex:0 0 auto;}                                   /* buttons don’t stretch */
}

@media(max-width:480px){#logo-bar img{max-height:40px;margin:.25rem;}#buttons{flex-direction:column;}#buttons button{width:100%;}}  

.print-answer.yes{color:#28a745;font-weight:bold;}  
.print-answer.no{color:#dc3545;font-weight:bold;}  
.print-answer.not-answered{color:#ffc107;font-weight:bold;}  
