.python-shell { padding-block:28px 60px; }
.python-shell .student-subject-banner { margin-top:22px; }
.python-summary,.python-reading,.python-workshop,.python-challenges,.python-lesson-card { border:1px solid transparent; border-radius:24px; background:var(--zylo-glass) padding-box,var(--zylo-edge) border-box; box-shadow:var(--zylo-shadow); padding:28px; color:#f4f8ff; }
.python-summary { display:flex; align-items:center; gap:28px; justify-content:space-between; margin-block:24px; }
.python-summary>div { max-width:760px; }
.python-shell p { color:#c9d8ed; }
.python-shell .helper { color:#bfd0e8; }
body.is-student .python-shell .eyebrow { color:#d9f56f; }
.python-shell .button-primary { background:#d9f56f; color:#16272c; box-shadow:0 4px 0 #819c43; }
.python-shell .button-secondary { background:#233d58; color:#f4f8ff; border:1px solid #7393b5; }
.python-shell button:disabled { opacity:.55; cursor:default; }
.python-lesson-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.python-lesson-card { display:flex; flex-direction:column; gap:14px; }
.python-lesson-card h2,.python-lesson-card p { margin:0; }
.python-lesson-card h2 { font-size:1.3rem; }
.python-lesson-card .button { margin-top:auto; }
.python-lesson-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.python-number { display:grid; place-items:center; width:44px; height:44px; background:#335875; border:1px solid #80bfcc; border-radius:14px; font-size:1.2rem; font-weight:800; }
.python-status { color:#d9f56f; font-size:.8rem; }
.python-shell details summary { cursor:pointer; color:#d4e4f8; }
.python-steps { display:flex; flex-wrap:wrap; gap:10px; margin-block:24px; }
.python-steps a { display:grid; place-items:center; min-width:44px; height:44px; padding:8px; background:#213a54; border:1px solid #7088ae; border-radius:12px; text-decoration:none; }
.python-steps a[aria-current=page] { background:#d9f56f; color:#16272c; border-color:#d9f56f; font-weight:800; }
.python-reading { max-width:900px; margin-block:24px; }
.python-reading p { line-height:1.75; }
.python-tip { border-left:3px solid #d9f56f; padding-left:16px; }
.python-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.python-workshop,.python-challenges { margin-block:24px; }
.python-label { display:block; margin-block:18px 10px; font-weight:750; }
.python-editor,.python-output,.python-code { color:#e6f2ff; background:#0c192c; border:1px solid #7088ae; border-radius:16px; font-family:ui-monospace,Consolas,monospace; font-size:16px; line-height:1.65; padding:20px; white-space:pre; overflow:auto; tab-size:4; }
.python-editor { width:100%; min-height:280px; resize:vertical; color-scheme:dark; }
.python-code { max-width:100%; }
.python-output { min-height:130px; max-height:360px; white-space:pre-wrap; overflow-wrap:anywhere; }
.python-tools { display:flex; flex-wrap:wrap; gap:12px; }
.python-inputs { margin-block:20px; }
.python-inputs textarea { background:#13243c; color:#f4f8ff; border-color:#7088ae; color-scheme:dark; min-height:90px; }
.python-output-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.python-challenges li { margin-bottom:16px; color:#e6f2ff; line-height:1.7; }
.python-lesson-nav { display:flex; flex-wrap:wrap; gap:20px; justify-content:space-between; }
.python-shell :focus-visible { outline:3px solid #d9f56f; outline-offset:4px; }
.python-shell iframe { display:none; }
.zylo-subject-art.zylo-art-programmering { display:grid; place-items:center; }
.zylo-python-icon { display:grid; place-items:center; width:76%; height:72%; border-radius:24%; transform:rotate(-10deg); background:linear-gradient(140deg,#b9fff2,#56c9d0 38%,#367cad 76%,#445b98); box-shadow:inset 3px 4px 4px #e8ffffaa,inset -6px -6px 6px #1b447a88,6px 9px 0 #07132666,0 12px 25px #02132955; border:1px solid #befff4aa; }
.zylo-python-icon svg { width:60%; height:60%; color:#102a43; filter:drop-shadow(0 1px 0 #d6fffa88); }
@media(max-width:900px) { .python-lesson-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .python-lesson-grid { grid-template-columns:minmax(0,1fr); } .python-summary,.python-section-heading,.python-output-heading { flex-direction:column; align-items:flex-start; gap:12px; } .python-summary,.python-reading,.python-workshop,.python-challenges,.python-lesson-card { padding:22px; } .python-tools .button { flex:1 1 auto; padding:10px; } .python-editor,.python-output,.python-code { padding:14px; } .python-steps { gap:8px; } }
