/* RC128: responsive, local-first formative project workshops and language missions. */
:is(.sk128-defense,.sk128-language-mission){--sk128-bg:#f4f9ff;--sk128-surface:#fff;--sk128-ink:#1a314d;--sk128-muted:#39516e;--sk128-border:#b9cce3;--sk128-link:#1458a1;--sk128-outline:#087fc8;background:var(--sk128-bg)!important;color:var(--sk128-ink)!important;border:1px solid var(--sk128-border)!important;border-radius:23px!important;box-shadow:0 13px 36px rgba(18,48,80,.08);padding:clamp(17px,3vw,27px)!important;margin:20px 0!important;min-width:0;overflow-wrap:anywhere}
:is(.sk128-defense,.sk128-language-mission) *{box-sizing:border-box}
:is(.sk128-defense,.sk128-language-mission) :is(h2,h3,label,strong,summary){color:var(--sk128-ink)!important}
:is(.sk128-defense,.sk128-language-mission) :is(p,small){color:var(--sk128-muted)!important;line-height:1.6}
:is(.sk128-defense,.sk128-language-mission) :focus-visible{outline:3px solid var(--sk128-outline)!important;outline-offset:3px}
.sk128-eyebrow{display:block;color:var(--sk128-link)!important;letter-spacing:.12em;font-weight:850;font-size:.77rem;margin-bottom:8px}
.sk128-defense h2,.sk128-language-mission h3{font-size:clamp(1.36rem,2.6vw,1.94rem);line-height:1.32;margin:9px 0}
.sk128-defense-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:17px 0}
.sk128-defense-panel{position:relative;background:var(--sk128-surface);border:1px solid var(--sk128-border);border-radius:17px;padding:17px;min-width:0}
.sk128-defense-panel.is-ready{border-color:#168c73;border-width:2px}
.sk128-defense-index{display:grid;place-items:center;font-weight:900;border-radius:10px;width:42px;height:42px;background:#dceefe;color:#174a7f;margin-bottom:8px}
.sk128-defense-panel h3{font-size:1.13rem;margin:8px 0}
.sk128-defense-panel p{font-size:.93rem}
.sk128-defense-scenario{padding:12px;background:var(--sk128-bg);border-radius:11px}
.sk128-defense-panel label,.sk128-language-mission>label{display:flex;flex-direction:column;gap:8px;margin:14px 0;font-size:.92rem;font-weight:750}
:is(.sk128-defense,.sk128-language-mission) textarea{width:100%;max-width:100%;min-height:96px;resize:vertical;padding:12px;font:inherit;border:1px solid #849dbb!important;border-radius:12px!important;background:var(--sk128-surface)!important;color:var(--sk128-ink)!important;line-height:1.55}
:is(.sk128-defense,.sk128-language-mission) :is(details,.sk128-mission-brief){background:var(--sk128-surface);border:1px solid var(--sk128-border);border-radius:12px;padding:13px;margin:13px 0}
:is(.sk128-defense,.sk128-language-mission) summary{cursor:pointer;font-weight:750;line-height:1.5}
.sk128-check,.sk128-mission-checks label{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:9px;font-weight:600!important;line-height:1.5}
.sk128-check input,.sk128-mission-checks input{width:20px;height:20px;flex:0 0 20px;accent-color:#1e6caf;margin-top:3px}
.sk128-defense-panel [data-sk128-panel-feedback]{min-height:42px;background:var(--sk128-bg);padding:10px;border-radius:10px}
.sk128-defense-summary{display:flex;gap:18px;align-items:center;margin:17px 0}
.sk128-defense-summary>span{font-weight:800;white-space:nowrap}
.sk128-defense-summary [data-sk128-meter],.sk128-mission-meter{height:12px;flex:1;border-radius:99px;background:#d1e2f3;overflow:hidden}
.sk128-defense-summary [data-sk128-meter-fill],.sk128-mission-meter>span{display:block;height:100%;width:0;background:linear-gradient(90deg,#1465bc,#1d8878);transition:width .18s ease}
:is(.sk128-defense,.sk128-language-mission) button{background:#155b9d!important;color:#fff!important;border:1px solid #155b9d!important;border-radius:12px!important;font:inherit;font-weight:760!important;padding:12px 16px!important;min-height:44px;max-width:100%;cursor:pointer;margin:4px 8px 4px 0}
:is(.sk128-defense,.sk128-language-mission) button:is([data-sk128-reset],[data-sk128-mission-reset]){background:var(--sk128-surface)!important;color:var(--sk128-ink)!important;border-color:var(--sk128-border)!important}
.sk128-defense-output{display:flex;flex-direction:column;gap:8px;margin:15px 0;font-weight:700}
.sk128-defense-output[hidden]{display:none!important}
.sk128-language-mission>header{margin-bottom:15px}
.sk128-language-mission .sk128-mission-brief{font-size:1.06rem;color:var(--sk128-ink)!important}
.sk128-mission-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:16px 0}
.sk128-mission-checks label{background:var(--sk128-surface);border:1px solid var(--sk128-border);border-radius:12px;padding:13px;min-width:0}
.sk128-mission-meter{width:100%;margin:14px 0}
.sk128-language-mission [data-sk128-mission-feedback]{background:var(--sk128-surface);border:1px solid var(--sk128-border);padding:12px;border-radius:11px;font-weight:710;color:var(--sk128-ink)!important}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) :is(.sk128-defense,.sk128-language-mission){--sk128-bg:#14253b;--sk128-surface:#203953;--sk128-ink:#f4f7ff;--sk128-muted:#cbdaef;--sk128-border:#5b769a;--sk128-link:#a8d4ff;--sk128-outline:#92cbff;box-shadow:none}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) .sk128-defense-index{background:#345d82;color:#eff8ff}
:is(html.lessonsky-dark,html[data-theme=dark],body.lessonsky-dark,body.sk-dark,body.lessonsky-theme-dark) .sk128-defense-panel.is-ready{border-color:#80dec1}
@media(max-width:1000px){.sk128-defense-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.sk128-defense-grid,.sk128-mission-checks{grid-template-columns:1fr}.sk128-defense,.sk128-language-mission{border-radius:16px!important;padding:15px!important}}
@media(max-width:480px){.sk128-defense :is([data-sk128-export],[data-sk128-reset]){width:100%}}
@media(prefers-reduced-motion:reduce){.sk128-defense-summary [data-sk128-meter-fill],.sk128-mission-meter>span{transition:none}}
