/* PNSS V166.55: school-wide systems with native, accessible disclosures. */
#main-content.ss55-main{--ss-ink:#10223f;--ss-muted:#52647c;--ss-blue:#146ef5;--ss-line:#dae4ef;background:#fff;color:var(--ss-ink);display:block!important;visibility:visible!important;opacity:1!important}
.ss55-main *{box-sizing:border-box}
.ss55-wrap{width:min(1180px,calc(100% - 56px));margin-inline:auto}
.ss55-main h1,.ss55-main h2,.ss55-main h3{color:var(--ss-ink);letter-spacing:-.025em}
.ss55-main p{color:var(--ss-muted);line-height:1.6}
.ss55-main a{overflow-wrap:anywhere}
.ss55-main a:focus-visible,.ss55-main summary:focus-visible{outline:3px solid #146ef5;outline-offset:5px}
.ss55-kicker{margin:0!important;color:#1760bd!important;font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.ss55-hero{padding:48px 0 42px;background:linear-gradient(125deg,#fff 45%,#f0f6fc);border-bottom:1px solid var(--ss-line)}
.ss55-hero-grid{display:grid;grid-template-columns:1.04fr 1fr;gap:44px;align-items:center}
.ss55-main h1{margin:12px 0 18px;font-size:3.25rem;font-size:clamp(2.3rem,3.8vw,3.5rem);font-weight:650;line-height:1.12;max-width:650px}
.ss55-lead{font-size:1.05rem;max-width:630px;margin:0}
.ss55-intro-note{font-size:.9rem;margin:16px 0 0;max-width:610px}
.ss55-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:24px}
.ss55-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border-radius:9px;background:var(--ss-blue);color:#fff!important;text-decoration:none;font-size:.9rem;font-weight:750;line-height:1.4}
.ss55-button:hover{background:#0756c9}
.ss55-text-link{display:inline-flex;align-items:center;min-height:44px;color:#1258b6;font-size:.9rem;font-weight:650;text-decoration:underline;text-underline-offset:4px}
.ss55-figure{margin:0;min-width:0}
.ss55-figure img{width:100%;height:auto;display:block;border:1px solid var(--ss-line);border-radius:16px;background:#edf3f8}
.ss55-figure figcaption{margin:10px 3px 0;font-size:.72rem;line-height:1.5;color:var(--ss-muted)}
.ss55-ecosystem{padding:42px 0 46px;scroll-margin-top:115px}
.ss55-section-head{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:24px}
.ss55-main h2{font-size:2.15rem;font-size:clamp(1.6rem,2.5vw,2.15rem);font-weight:650;line-height:1.2;margin:8px 0 0}
.ss55-section-head>p{max-width:420px;margin:0;font-size:.9rem}
.ss55-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.ss55-area{border:1px solid var(--ss-line);border-radius:14px;padding:22px 24px;background:#fff;min-width:0;scroll-margin-top:115px}
.ss55-area:has(details[open]){border-color:#accaf1;background:#fbfdff}
.ss55-category{margin:0 0 8px!important;font-size:.68rem;font-weight:750;text-transform:uppercase;letter-spacing:.1em;color:#1c62b9!important}
.ss55-main h3{font-size:1.18rem;line-height:1.3;font-weight:650;margin:0 0 9px}
.ss55-area>p:not(.ss55-category){font-size:.87rem;margin:0 0 10px}
.ss55-area details{border-top:1px solid #e8eef5;margin-top:15px}
.ss55-area summary{list-style:none;cursor:pointer;padding:13px 0 0;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.82rem;font-weight:700;color:#1258b6}
.ss55-area summary::-webkit-details-marker{display:none}
.ss55-area summary::marker{content:""}
.ss55-area summary svg{flex:0 0 18px;width:18px;height:18px;transition:transform .15s ease}
.ss55-area details[open] summary svg{transform:rotate(180deg)}
.ss55-detail-body{padding-top:16px}
.ss55-detail-body dl{margin:0}
.ss55-detail-body dl>div{margin:0 0 14px}
.ss55-detail-body dt{font-size:.86rem;font-weight:750;color:var(--ss-ink);line-height:1.45}
.ss55-detail-body dd{margin:4px 0 0;font-size:.84rem;line-height:1.6;color:var(--ss-muted)}
.ss55-related{display:flex;gap:10px 22px;flex-wrap:wrap;border-top:1px solid #e2ebf4;padding-top:8px;margin:8px 0 0}
.ss55-related a{font-size:.82rem;line-height:1.5;color:#1258b6;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.ss55-plan{padding:32px 0 36px;background:#f1f5fa;border-top:1px solid var(--ss-line)}
.ss55-plan-head{display:flex;gap:32px;justify-content:space-between;align-items:center}
.ss55-plan-head>div{max-width:780px}
.ss55-plan-head p:not(.ss55-kicker){font-size:.9rem;margin:12px 0 0}
.ss55-plan-head .ss55-button{flex-shrink:0}
.ss55-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:26px 0 0;padding:22px 0 0;border-top:1px solid #d5e0ed;list-style:none}
.ss55-steps strong{display:block;font-size:.88rem;margin-bottom:5px;color:var(--ss-ink)}
.ss55-steps span{display:block;color:var(--ss-muted);font-size:.83rem;line-height:1.55}
.ss55-scope-note{font-size:.77rem!important;margin:22px 0 0!important;max-width:1040px}
@media(max-width:980px){.ss55-hero-grid{grid-template-columns:1fr;gap:26px}.ss55-figure{max-width:740px}.ss55-hero{padding:36px 0}.ss55-section-head{display:block}.ss55-section-head>p{max-width:700px;margin-top:12px}.ss55-main h1{max-width:760px;font-size:2.8rem}.ss55-plan-head{display:block}.ss55-plan-head .ss55-button{margin-top:20px}}
@media(max-width:680px){.ss55-wrap{width:calc(100% - 36px)}.ss55-grid,.ss55-steps{grid-template-columns:1fr}.ss55-hero{padding:28px 0}.ss55-main h1{font-size:2.1rem;line-height:1.15}.ss55-lead{font-size:.97rem}.ss55-area{padding:19px}.ss55-main h3{font-size:1.08rem}.ss55-ecosystem{padding:30px 0}.ss55-hero-actions{gap:10px 20px}.ss55-steps{gap:17px}.ss55-plan{padding:28px 0}.ss55-figure figcaption{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.ss55-area summary svg{transition:none}}
