.apt-app{--apt-blue:#07549b;--apt-navy:#07315b;--apt-cyan:#007b99;box-sizing:border-box;width:min(1240px,calc(100% - 32px));margin:32px auto 56px;color:#18364b;font:16px/1.65 system-ui,sans-serif}.apt-app *{box-sizing:border-box}.apt-app [hidden]{display:none!important}.apt-app a{color:#07549b}.apt-hero{padding:clamp(24px,4vw,48px);border-radius:18px;background:linear-gradient(115deg,#07315b,#07549b);color:#fff;margin:0 0 28px}.apt-app .apt-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.15;color:#fff;margin:12px 0 18px}.apt-hero p{color:#e7f6ff;max-width:780px}.apt-eyebrow{font-size:12px;font-weight:750;letter-spacing:1.4px;text-transform:uppercase}.apt-hero .apt-eyebrow{color:#99e8ff}.apt-stats{display:flex;gap:12px;flex-wrap:wrap}.apt-stats span{border:1px solid #70b2dd;border-radius:30px;padding:5px 14px;font-size:14px}.apt-filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;margin:26px 0}.apt-app label,.apt-code-runner label{display:block;font-weight:600}.apt-app input,.apt-app select,.apt-app textarea,.apt-code-runner select,.apt-code-runner textarea{max-width:100%;width:100%;border:1px solid #9eb9ce!important;background:#fff!important;color:#18364b!important;border-radius:8px;padding:12px;font-size:16px}.apt-app input[type=radio]{width:auto}.apt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.apt-chapter{margin:30px 0}.apt-app h2{font-size:26px;line-height:1.3;color:#07315b}.apt-app h3{color:#07315b;font-size:20px;line-height:1.35}.apt-card{display:flex;flex-direction:column;text-decoration:none!important;background:#fff;border:1px solid #c7dbe9;border-top:4px solid #007b99;border-radius:12px;padding:24px;box-shadow:0 4px 18px #07315b08}.apt-card:hover{border-color:#07549b;box-shadow:0 6px 22px #07315b18}.apt-card .apt-eyebrow{color:#006d89}.apt-card p{color:#405d70;flex:1}.apt-card strong{font-size:14px}.apt-content,.apt-quiz,.apt-code-runner,.apt-progress{padding:24px;border:1px solid #c7dbe9;border-radius:12px;background:#f5faff;color:#18364b;margin:24px 0}.apt-content h2:first-child{margin-top:0}.apt-app pre,.apt-code-runner pre{background:#09263e!important;color:#eef8ff!important;padding:20px;border-radius:10px;white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;font:14px/1.65 ui-monospace,monospace;max-height:600px}.apt-app pre code{background:transparent;color:inherit;font:inherit}.apt-editor{font:14px/1.6 ui-monospace,monospace!important;tab-size:4}.apt-code-runner label{margin:16px 0}.apt-app button,.apt-code-runner button,.apt-submit-quiz{background:#07549b;color:white;border:0;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:700;cursor:pointer}.apt-app button:disabled{opacity:.65;cursor:default}.apt-app :focus-visible{outline:3px solid #0083a8;outline-offset:3px}.apt-navigation{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0}.apt-question{margin-bottom:24px}.apt-question label{font-weight:400}.apt-quiz-result{font-weight:700;margin-top:16px}@media(max-width:900px){.apt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.apt-grid,.apt-filters{grid-template-columns:1fr}.apt-app{width:calc(100% - 24px);margin-top:18px}.apt-content,.apt-code-runner,.apt-quiz{padding:18px}}
.apt-token.apt-keyword{color:#a9d4ff}.apt-token.apt-string{color:#b0e9bc}.apt-token.apt-comment{color:#b6c6d3}.apt-token.apt-preprocessor{color:#f3d8a4}.apt-token.apt-number{color:#dfc1ff}
/* Practice Lab: scoped so the surrounding TCS theme keeps its own styling. */
.apt-practice{overflow:hidden;background:#fff}.apt-lab-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.apt-lab-heading .apt-eyebrow{color:#006d89}.apt-lab-heading h3{font-size:28px;margin:6px 0}.apt-lab-language{white-space:nowrap;color:#07549b;background:#edf7ff;padding:6px 12px;border-radius:30px;font-size:13px;font-weight:700}.apt-lab-description{color:#405d70}.apt-editor-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 10px}.apt-practice .apt-editor-actions button,.apt-practice .apt-use-input{font-size:13px;padding:8px 12px;background:#e9f3fc;color:#074677;border:1px solid #b4cfe2}.apt-practice .apt-editor-label{margin-bottom:8px}.apt-practice .CodeMirror{border:1px solid #9eb9ce;border-radius:8px;height:360px;font:14px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;background:#fff;color:#18364b;max-width:100%;font-weight:400}.apt-practice .CodeMirror pre.CodeMirror-line,.apt-practice .CodeMirror pre.CodeMirror-line-like{background:transparent!important;color:inherit!important;padding:0 4px!important;border-radius:0;white-space:pre!important;overflow-wrap:normal;overflow:visible;font:inherit;max-height:none}.apt-practice .CodeMirror-gutters{background:#f0f6fb;border-right:1px solid #cfdeea}.apt-practice .CodeMirror-linenumber{color:#56738b}.apt-practice .CodeMirror textarea{padding:0!important;border:0!important;font:inherit!important;min-height:0!important}.apt-editor-help,.apt-draft-status{font-size:12px;color:#405d70;margin:8px 0}.apt-draft-status{min-height:24px;font-weight:600}.apt-io-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:18px 0}.apt-practice .apt-io-grid label{margin-top:0}.apt-example{padding:16px;border-radius:8px;background:#f0f7fc}.apt-example h4{margin:0 0 12px;color:#07315b;font-size:16px}.apt-example span{display:block;font-size:12px;font-weight:700;margin-top:12px}.apt-practice .apt-example pre{margin:6px 0;font-size:13px;padding:12px;max-height:180px}.apt-practice .apt-stdin{font:14px/1.6 ui-monospace,monospace}.apt-action-status{font-size:13px;color:#07549b;min-height:22px}@media(max-width:650px){.apt-io-grid{grid-template-columns:1fr}.apt-lab-heading{align-items:flex-start;flex-direction:column;gap:4px}.apt-practice .CodeMirror{height:300px}.apt-editor-actions{gap:6px}}
.apt-debug-panel{margin-top:16px;padding:18px;border:1px solid #b7d3e7;border-left:5px solid #07549b;border-radius:8px;background:#f5faff}.apt-debug-panel[hidden]{display:none}.apt-debug-panel h4{margin:0 0 8px;color:#07315b}.apt-debug-summary{font-weight:700;color:#294d68}.apt-debug-findings{margin:12px 0 0 22px}.apt-debug-findings li{padding:8px 10px;margin:7px 0;border-radius:6px;background:#fff}.apt-debug-findings button{padding:0;background:transparent!important;border:0!important;color:#07549b!important;text-align:left;font-weight:700;cursor:pointer}.apt-debug-findings p{margin:5px 0 0;color:#405d70}.apt-debug-error{border-left:4px solid #c62828}.apt-debug-warning{border-left:4px solid #e28a00}.apt-debug-line{background:#fff3cd!important}
.apt-assessment-bar{position:sticky;top:10px;z-index:3;display:flex;justify-content:space-between;gap:15px;padding:14px 18px;margin-bottom:20px;border-radius:8px;background:#07315b;color:#fff}.apt-assessment fieldset{margin:18px 0;padding:18px;border:1px solid #c7dbe9;border-radius:10px;background:#fff}.apt-assessment legend{font-weight:750;color:#07315b;padding:0 8px}.apt-assessment-result{white-space:pre-wrap;margin-top:18px;padding:18px;border-radius:8px;background:#eef8ff;font-weight:600}
.apt-visualizer{margin-top:20px;padding:20px;border:1px solid #9fc8df;border-radius:12px;background:#f5faff}.apt-visualizer[hidden]{display:none}.apt-visualizer header h4{margin:0;color:#07315b}.apt-visualizer header p{color:#526d80}.apt-v-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:15px 0}.apt-v-controls label{display:flex;align-items:center;gap:8px;margin:0}.apt-v-controls input{width:130px!important}.apt-v-grid{display:grid;grid-template-columns:1fr 2fr;gap:16px}.apt-v-stack,.apt-v-memory{display:grid;gap:8px}.apt-v-frame,.apt-v-cell{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:12px;border:1px solid #c7dbe9;border-radius:8px;background:#fff}.apt-v-frame.active{border-color:#007b99;background:#e7f8ff}.apt-v-cell.pointer{border-left:5px solid #7b3fb3}.apt-v-cell code{color:#56738b}.apt-v-cell em{color:#7b3fb3;font-weight:700}.apt-v-array{display:flex;flex-basis:100%;gap:4px;overflow:auto}.apt-v-array span{padding:5px;border:1px solid #9eb9ce;border-radius:4px;white-space:nowrap}.apt-v-note{margin-top:14px;padding:12px;border-radius:8px;background:#07315b;color:#fff;font-weight:700}@media(max-width:700px){.apt-v-grid{grid-template-columns:1fr}}
.apt-answer{margin:14px 0;padding:16px;border:1px solid #c7dbe9;border-radius:10px;background:#fff}.apt-answer.accepted{border:2px solid #16834b;background:#effbf4}.apt-answer header,.apt-answer footer{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.apt-answer header span{margin-left:auto;color:#16834b;font-weight:700}.apt-answer footer button{padding:7px 11px;font-size:13px}.apt-ask{margin:20px 0;padding:20px;border:1px solid #c7dbe9;border-radius:10px;background:#fff}
.apt-achievement-stats{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin:20px 0}.apt-achievement-stats span{padding:16px;border-radius:10px;background:#07315b;color:#fff;text-align:center}.apt-achievement-stats strong{display:block;font-size:25px}.apt-badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.apt-badge{padding:18px;border:1px solid #c7dbe9;border-radius:12px;background:#fff}.apt-badge>span{font-size:32px}.apt-badge h3{margin:8px 0}.apt-badge.locked{filter:grayscale(1);opacity:.58}.apt-badge.earned{border-color:#16834b;background:#effbf4}.apt-leaderboard-choice{display:inline-flex;gap:8px;align-items:center;margin:12px 8px 18px 0}.apt-ranking{padding:0;list-style:none;counter-reset:rank}.apt-ranking li{counter-increment:rank;display:flex;justify-content:space-between;gap:16px;padding:13px;border-bottom:1px solid #d7e3eb}.apt-ranking li:before{content:counter(rank);font-weight:800;color:#07549b}.apt-ranking li strong{margin-right:auto}@media(max-width:650px){.apt-achievement-stats{grid-template-columns:1fr 1fr}.apt-ranking li{flex-wrap:wrap}}
.apt-insight{margin:18px 0;padding:18px;border-left:5px solid #07549b;border-radius:8px;background:#edf7ff}.apt-insight p{margin-bottom:0}
