.sg-platform{width:min(1180px,calc(100% - 40px));margin:36px auto 80px;color:#243e38}.sg-platform-nav,.sp-actions,.sp-tabs{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.sg-platform-nav a,.sp-tabs button{background:#fff;padding:12px 18px;border:1px solid #dce6df;border-radius:30px;text-decoration:none;color:inherit}.sg-platform-hero{padding:40px;border-radius:32px;background:linear-gradient(120deg,#e5f4e7,#fff0ce);margin:24px 0}.sg-platform h1{font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-.02em;max-width:850px;margin:12px 0 20px}.sg-platform p{line-height:1.65}.sp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:24px 0}.sp-card,.sp-panel{background:#fff;border:1px solid #dce6df;border-radius:24px;padding:24px;min-width:0}.sp-panel{margin:24px 0}.sp-card h2,.sp-panel h2{font-size:24px;line-height:1.35;margin:10px 0 16px}.sp-card h3{font-size:20px;line-height:1.4}.sp-card img{width:100%;height:220px;object-fit:contain;border-radius:16px;background:#f5f5ed}.sp-card small{color:#556e64}.sp-actions button,.sp-actions a,.sp-primary,.sp-panel button{min-height:44px;padding:12px 18px;border:0;border-radius:16px;background:#285f49;color:white;font:inherit;text-decoration:none;cursor:pointer;display:inline-block}.sp-actions .sp-soft,.sp-tabs button{background:#edf3e9;color:#285f49}.sp-tabs [aria-selected=true]{background:#285f49;color:#fff}.sg-platform button:disabled{opacity:.5;cursor:wait}.sg-platform :focus-visible{outline:3px solid #e3a619;outline-offset:4px}.sp-panel label,.sp-card label{display:block;margin:16px 0;line-height:1.5}.sp-panel input:not([type=checkbox]),.sp-panel textarea,.sp-panel select{width:100%;max-width:700px;border:1px solid #b5c7bc;border-radius:12px;padding:12px;font:inherit;background:white}.sp-panel input[type=checkbox],.sp-step input{width:22px;height:22px;margin:0 10px 0 0;vertical-align:middle;accent-color:#285f49}.sp-step{padding:20px;border-radius:18px;background:#f5f7ef;margin:15px 0}.sp-step h3{line-height:1.4;margin:0 0 10px}.sp-step p{margin:8px 0}.sp-empty{padding:24px;background:#f6f3e9;border-radius:18px;line-height:1.6}.sp-profile{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:#f1f5ec;padding:20px;border-radius:20px;margin:20px 0}.sp-profile select{font:inherit;min-height:44px;padding:10px;border-radius:12px;border:1px solid #b5c7bc}.sp-notice{min-height:24px;color:#835711;font-weight:600}.sp-status{display:inline-block;border-radius:30px;background:#fff0ce;padding:6px 14px}.sg-save-controls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.sg-save-controls button{border:1px solid #b5c7bc;padding:12px 16px;border-radius:14px;background:white;color:#285f49;font:inherit;min-height:44px}.sg-profile-choice{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.sg-profile-choice select{margin-left:12px;padding:10px;border-radius:12px;font:inherit}.sg-family-program-spot{max-width:1180px;margin:30px auto;padding:30px;background:#eff6e7;border-radius:24px;box-sizing:border-box}.sg-family-program-spot h2{line-height:1.4}.sp-count{font-size:28px;font-weight:700;color:#285f49}.sp-note{font-size:14px;color:#5b7066}.sp-print-choice{display:flex;gap:12px;align-items:center}.sp-print-choice input{width:22px;height:22px}.sp-privacy{border-left:4px solid #d6a931;padding-left:16px}.sp-gallery img{background:white}.sp-gallery figcaption{line-height:1.55;margin-top:12px}.sp-gallery figure{margin:0}.sp-page{display:flex;justify-content:center;gap:16px;margin:24px 0}
@media(max-width:900px){.sp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sg-platform-hero{padding:28px}.sg-family-program-spot{margin:24px 20px}}
@media(max-width:600px){.sg-platform{width:calc(100% - 28px);margin-top:20px}.sp-grid{grid-template-columns:1fr}.sg-platform-hero{padding:24px}.sp-card,.sp-panel{padding:20px}.sg-platform-nav a{padding:10px 14px}.sp-tabs{gap:8px}.sp-tabs button{padding:10px 14px}}
@media print{body:has(.sp-teachers) header,body:has(.sp-teachers) footer,body:has(.sp-teachers) .sg-platform-nav,body:has(.sp-teachers) .sg-platform-hero,body:has(.sp-teachers) .sp-actions,body:has(.sp-teachers) .sp-print-choice,body:has(.sp-teachers) #platform-status{display:none!important}.sp-teachers .sp-card:not(.sp-print-selected){display:none}.sp-teachers .sp-grid{display:block}.sp-teachers .sp-card{break-after:page;border:0;padding:0}.sp-teachers .sp-card img{height:180px}.sg-platform{width:100%;margin:0}.sp-step{break-inside:avoid}}

.sg-kids-mode .sg-family-program-spot{display:none}

.sg-sync-status{font-size:14px;line-height:1.5;background:#fff0ce;color:#674b16;padding:12px 16px;border-radius:12px;margin:12px 0}
