:where(.site-shell) .visual-path{padding:32px;margin:36px 0;background:#f3f6ef;border:1px solid #dce4d9;border-radius:12px}
:where(.site-shell) .visual-path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:28px 0}
:where(.site-shell) .visual-path-grid li{position:relative;padding:22px 18px;background:#fff;border:1px solid #dce4d9;border-radius:8px}
:where(.site-shell) .step-number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:#102d31;background:#d4ef8b;font-size:16px;font-weight:800}
:where(.site-shell) .visual-path-grid h3{font-size:19px;line-height:1.3;margin:18px 0 12px}
:where(.site-shell) .visual-path-grid p{font-size:15px;line-height:1.65;margin:0}
:where(.site-shell) .visual-path-grid a{text-decoration:underline;text-underline-offset:4px}
:where(.site-shell) .learning-widget{margin:36px 0;padding:28px;background:#f5f7f2;border:1px solid #dce4d9;border-radius:12px}
:where(.site-shell) .learning-widget h2{margin-top:12px}
:where(.site-shell) .learning-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
:where(.site-shell) .learning-inputs label{display:block;font-weight:700;font-size:15px}
:where(.site-shell) .learning-inputs input{display:block;width:100%;min-height:48px;padding:10px 12px;margin-top:8px;border:1px solid #a9b9b3;background:white;border-radius:6px;font:inherit;color:#102d31;box-sizing:border-box}
:where(.site-shell) .learning-inputs input[aria-invalid=true]{border:2px solid #a52a24}
:where(.site-shell) .learning-result{display:block;padding:24px;background:#102d31;color:white;border-radius:8px}
:where(.site-shell) .learning-result strong{display:block;font-size:clamp(25px,4vw,36px);line-height:1.3;color:#d4ef8b;overflow-wrap:anywhere}
:where(.site-shell) .learning-result span{display:block;margin-top:12px;line-height:1.6;font-size:16px}
:where(.site-shell) .learning-meter{height:12px;margin:20px 0;background:#dde5d8;border-radius:8px;overflow:hidden}
:where(.site-shell) .learning-meter span{display:block;height:100%;width:13.85%;background:#4b7373}
:where(.site-shell) .guide-checklist ul{list-style:none;padding:0}
:where(.site-shell) .guide-checklist li{display:block;padding:0;margin:0}
:where(.site-shell) .guide-checklist label{display:flex;gap:12px;align-items:flex-start;padding:12px 0;cursor:pointer;line-height:1.6}
:where(.site-shell) .guide-checklist input[type=checkbox]{flex:0 0 auto;width:22px;height:22px;margin:2px 0 0;accent-color:#214d43}
:where(.site-shell) .guide-checklist input:checked+span{color:#385d52;text-decoration:line-through}
:where(.site-shell) .checklist-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:20px 0}
:where(.site-shell) .checklist-controls[hidden]{display:none}
:where(.site-shell) .checklist-controls output{font-weight:700;flex:1 0 100%}
:where(.site-shell) .checklist-controls .btn{font-size:14px;padding:12px 18px;min-height:44px}
:where(.site-shell) .seasonal-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:48px}
:where(.site-shell) .seasonal-grid .context-photo{margin:0}
:where(.site-shell) .seasonal-grid .context-photo img{border-radius:12px;width:100%;height:auto}
:where(.site-shell) .seasonal-links{padding-left:20px;margin:24px 0}
:where(.site-shell) .seasonal-links li{margin:12px 0}
:where(.site-shell) .seasonal-links a{text-decoration:underline;text-underline-offset:4px}
:where(.site-shell) .documentary-note{margin:36px 0}
:where(.site-shell) .documentary-note .context-photo{margin:20px 0}
@media(max-width:1000px){:where(.site-shell) .visual-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){:where(.site-shell) .visual-path,:where(.site-shell) .learning-widget{padding:20px}:where(.site-shell) .seasonal-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:460px){:where(.site-shell) .visual-path-grid,:where(.site-shell) .learning-inputs{grid-template-columns:1fr}}
@media print{.learning-inputs,.checklist-controls,.learning-meter{display:none!important}.visual-path-grid{grid-template-columns:repeat(2,1fr)!important}.learning-result{background:white!important;color:black!important;border:1px solid #888}.learning-result strong{color:black!important}.guide-checklist input:checked+span{text-decoration:none!important}.learning-widget,.guide-checklist,.visual-path-grid li{break-inside:avoid}}
