:root{font-family:IBM Plex Sans,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#112033;background:radial-gradient(circle at top left,rgba(72,154,255,.16),transparent 30%),linear-gradient(180deg,#f6f9fc,#eef3f8)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:transparent;color:#112033}a{color:inherit}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid #cbd7e6;border-radius:14px;padding:.8rem .95rem;background:#fff}textarea{resize:vertical}label{display:grid;gap:.45rem;font-size:.95rem;color:#30465f}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.85rem .7rem;border-bottom:1px solid #e1e8f0;font-size:.95rem}th{color:#5a6f86;font-weight:700}pre{margin:0;white-space:pre-wrap;word-break:break-word}.shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{display:flex;flex-direction:column;justify-content:flex-start;gap:2rem;padding:2rem 1.5rem;background:#0b1c2df0;color:#f6fbff;position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto}.sidebar h2{margin:.1rem 0 .2rem;font-size:1.25rem}.sidebar-note{margin:0;color:#f6fbffc2}.sidebar-nav{display:grid;gap:.4rem}.sidebar-nav a{padding:.8rem .95rem;border-radius:14px;text-decoration:none;color:#f6fbffd1}.sidebar-nav a.active,.sidebar-nav a:hover{background:#ffffff1f;color:#fff}.content{padding:2rem}.page-stack{display:grid;gap:1.25rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.page-header h1{margin:0;font-size:2rem}.page-header p{margin:.35rem 0 0;color:#5a6f86}.section-card{background:#ffffffeb;border:1px solid rgba(203,215,230,.9);border-radius:24px;padding:1.35rem;box-shadow:0 20px 50px #1c365414}.section-card h2,.section-card h3{margin-top:0}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.two-column-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem}.task-practice-grid{align-items:start}.three-column-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.admin-block-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:end}.admin-block-selector{max-width:520px}.admin-editor-panel{display:grid;gap:1rem;padding:1rem 1.1rem;border-radius:20px;border:1px solid #d9e4f0;background:#fbfdff}.right-rail{display:grid;gap:1rem;align-content:start}.inline-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.button-row{display:flex;flex-wrap:wrap;gap:.75rem}.stats-row{display:flex;flex-wrap:wrap;gap:.85rem;color:#30465f}.form-stack,.result-stack{display:grid;gap:1rem}.submission-summary-card{display:grid;gap:1rem;padding:1.1rem 1.15rem;border-radius:22px;border:1px solid #d9e4f0}.submission-summary-card.solved{background:linear-gradient(180deg,#f3fff8,#ecfbf3);border-color:#bfe8cb}.submission-summary-card.failed{background:linear-gradient(180deg,#fff7f7,#fff1f1);border-color:#f1c2c2}.submission-summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.submission-summary-copy h3,.result-section-heading h3,.submission-summary-copy p,.result-section-heading p,.public-test-meta,.public-test-ok{margin:0}.submission-summary-eyebrow{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#5a6f86;margin-bottom:.3rem}.submission-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.submission-metric-card{display:grid;gap:.3rem;padding:.85rem .95rem;border-radius:16px;background:#ffffffb8;border:1px solid rgba(203,215,230,.9)}.submission-metric-card span{color:#5a6f86;font-size:.9rem}.submission-metric-card strong{font-size:1.15rem}.result-detail-section{display:grid;gap:.85rem}.result-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.public-tests-list{display:grid;gap:.85rem}.public-test-card{display:grid;gap:.75rem;padding:1rem 1.05rem;border:1px solid #d9e4f0;border-radius:20px;background:#fbfdff}.public-test-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.public-test-meta{color:#62768d;font-size:.9rem}.public-test-label{margin:0;font-size:.92rem;font-weight:700;color:#30465f}.public-test-ok{color:#136c3f;font-weight:600}.public-test-diff,.technical-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.public-test-diff>div,.public-test-error,.technical-detail-card{display:grid;gap:.55rem}.public-test-card pre,.technical-detail-card pre{padding:.9rem 1rem;border-radius:16px;background:#0f1724;color:#edf3fb}.section-divider{border:0;border-top:1px solid #e1e8f0;margin:1.25rem 0}.task-nav-list{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.task-subgroup-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.task-subgroup-button,.task-subgroup-card{display:grid;gap:.55rem;padding:.95rem 1rem;border-radius:18px;border:1px solid #d7e1ec;background:#f8fbff}.task-subgroup-button{text-align:left;color:#112033;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.task-subgroup-button:hover{border-color:#9fc2f6;background:#f2f7ff;transform:translateY(-1px)}.task-subgroup-button.active{border-color:#0d5bd4;background:#eef5ff}.task-subgroup-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.task-subgroup-head h4{margin:.15rem 0 0}.task-nav-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;justify-items:start;gap:.55rem;flex:0 0 150px;min-width:150px;padding:.8rem .9rem;border:1px solid #d7e1ec;border-radius:16px;text-decoration:none;background:#f8fbff;color:#112033;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.task-nav-link:hover{border-color:#9fc2f6;background:#f2f7ff;transform:translateY(-1px)}.task-nav-link.active{border-color:#0d5bd4;background:#eef5ff}.task-nav-link.compact{flex:0 0 48px;min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:.3rem;border-radius:12px}.task-nav-link.compact .task-nav-number{font-size:1.4rem}.task-nav-link.compact.task-status-not_started{background:#eef2f6;border-color:#ccd5df;color:#4b5563}.task-nav-link.compact.task-status-attempted{background:#fee2e2;border-color:#f3b1b1;color:#b42318}.task-nav-link.compact.task-status-solved{background:#dcfce7;border-color:#9ed8b4;color:#136c3f}.task-nav-link.compact.active{box-shadow:inset 0 0 0 1px #0d5bd42e}.task-nav-number{font-size:1.35rem;line-height:1}.task-nav-title{font-weight:700}.task-nav-status{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .65rem;border-radius:999px;font-size:.8rem;font-weight:700}.task-nav-status.solved{background:#dcfce7;color:#136c3f}.task-nav-status.pending{background:#e5e7eb;color:#4b5563}.course-topic-workspace{display:grid;gap:1rem}.course-topic-nav{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:thin}.course-topic-button{flex:0 0 220px;min-width:220px;display:grid;gap:.45rem;justify-items:start;text-align:left;padding:.95rem 1rem;border:1px solid #d7e1ec;border-radius:18px;background:#f8fbff;color:#112033;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.course-topic-button:hover{border-color:#9fc2f6;background:#f2f7ff;transform:translateY(-1px)}.course-topic-button.active{border-color:#0d5bd4;background:#eef5ff;box-shadow:inset 0 0 0 1px #0d5bd41f}.course-topic-number{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#5a6f86}.course-topic-meta{color:#62768d;font-size:.9rem}.topic-stage-card{display:grid;gap:1rem;padding:1.1rem;border-radius:22px;border:1px solid #d9e4f0;background:#fbfdff}.topic-stage-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.topic-stage-head h3,.topic-support-head h4{margin:.15rem 0 0}.topic-tab-row{display:flex;flex-wrap:wrap;gap:.75rem}.topic-tab-button{border:1px solid #d7e1ec;border-radius:999px;padding:.65rem 1rem;background:#fff;color:#30465f;cursor:pointer;font-weight:600;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.topic-tab-button:hover{border-color:#9fc2f6;background:#f5f9ff}.topic-tab-button.active{border-color:#0d5bd4;background:#eef5ff;color:#0d5bd4}.topic-stage-content,.topic-theory-stack,.topic-support-section{display:grid;gap:1rem}.topic-reading-card{display:grid;gap:.9rem;padding:1rem 1.05rem;border:1px solid #d9e4f0;border-radius:20px;background:#fff}.topic-support-section{padding-top:1rem;border-top:1px solid #e1e8f0}.topic-support-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.topic-flow-nav{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;padding-top:.25rem}.embedded-task-summary{padding:.95rem 1rem;border-radius:18px;border:1px solid #d9e4f0;background:#fff}.embedded-task-surface{display:grid;gap:.95rem;padding:1rem 1.05rem;border-radius:20px;border:1px solid #d9e4f0;background:#fff}.embedded-task-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.embedded-task-head h3,.embedded-task-surface h3{margin:.15rem 0 0}.embedded-task-samples{display:grid;gap:.85rem}.course-content-layout{display:grid;gap:1rem}.topic-blocks-list,.topic-block-materials-list,.course-admin-list{display:grid;gap:.9rem}.topic-block-card,.markdown-viewer-card,.admin-material-card{display:grid;gap:.9rem;padding:1rem 1.1rem;border-radius:20px;border:1px solid #d9e4f0;background:#fbfdff}.topic-block-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.topic-block-head h3,.markdown-viewer-head h3{margin:.15rem 0 0}.topic-block-index{margin:0;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#5a6f86}.material-count-badge,.material-type-badge{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .65rem;border-radius:999px;background:#e8f1ff;color:#0d5bd4;font-size:.8rem;font-weight:700}.topic-materials-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.topic-block-task-list{display:grid;gap:.75rem}.topic-block-task-list h4{margin:0}.material-tile,.course-admin-item{width:100%;display:grid;gap:.45rem;justify-items:start;text-align:left;padding:.95rem 1rem;border-radius:18px;border:1px solid #d7e1ec;background:#f8fbff;color:#112033;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.material-tile:hover,.course-admin-item:hover{border-color:#9fc2f6;background:#f2f7ff;transform:translateY(-1px)}.material-tile.active,.course-admin-item.active{border-color:#0d5bd4;background:#eef5ff}.course-admin-item{grid-template-columns:minmax(0,1fr) auto;align-items:center}.markdown-viewer-card{min-height:240px}.admin-markdown-preview-card{align-self:start;max-height:min(72vh,760px);grid-template-rows:auto minmax(0,1fr);overflow:hidden}.markdown-viewer-head{display:grid;gap:.25rem}.markdown-content{color:#21354b}.admin-markdown-preview-scroll{min-height:0;overflow:auto;padding-right:.35rem}.markdown-content>:first-child{margin-top:0}.markdown-content h1,.markdown-content h2,.markdown-content h3{margin-top:1.2rem;margin-bottom:.6rem}.markdown-content p,.markdown-content ul,.markdown-content ol,.markdown-content pre,.markdown-content blockquote{margin:.65rem 0}.markdown-content code{font-family:IBM Plex Mono,Cascadia Code,monospace;font-size:.92em;background:#eff4fb;padding:.12rem .32rem;border-radius:6px}.markdown-content pre{padding:.95rem 1rem;border-radius:16px;background:#0f1724;color:#edf3fb;overflow-x:auto}.markdown-content pre code{background:transparent;padding:0;color:inherit}.admin-markdown-preview{max-height:320px;overflow:auto}.empty-state-card{display:grid;gap:.45rem;place-items:start;padding:1rem;border-radius:18px;border:1px dashed #c5d6ea;background:#f8fbff}.empty-state-card h3,.empty-state-card p{margin:0}.inline-link{color:#0d5bd4;text-decoration:none;font-weight:600}.inline-link:hover{text-decoration:underline}.primary-button,.secondary-button,.secondary-outline-button,.danger-outline-button{border:none;border-radius:14px;padding:.85rem 1.1rem;cursor:pointer}.primary-button{background:linear-gradient(135deg,#0d5bd4,#1c7df3);color:#fff}.primary-button:disabled{opacity:.65;cursor:not-allowed}.secondary-button{background:#ffffff1f;color:#fff}.secondary-outline-button{border:1px solid #cbd7e6;background:#fff;color:#112033}.secondary-outline-button:hover{border-color:#9fc2f6;background:#f5f9ff}.danger-outline-button{border:1px solid #f3c2c2;background:#fff;color:#b42318}.danger-outline-button:hover{border-color:#e58f8f;background:#fff4f4}.sidebar .secondary-button{margin-top:auto}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.3rem .7rem;border-radius:999px;font-size:.82rem;font-weight:700}.status-accepted,.status-solved{background:#dcfce7;color:#136c3f}.status-attempted,.status-running,.status-queued{background:#dbeafe;color:#0b53ad}.status-not_started{background:#e5e7eb;color:#4b5563}.status-wrong_answer,.status-runtime_error,.status-compilation_error,.status-time_limit_exceeded,.status-memory_limit_exceeded{background:#fee2e2;color:#b42318}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:#6d8198}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:2rem}.auth-card{width:min(440px,100%);display:grid;gap:1rem;padding:2rem;border-radius:26px;background:#fffffff5;border:1px solid rgba(203,215,230,.9);box-shadow:0 20px 60px #1c36541f}.auth-card h1{margin:0}.muted-text{margin:0;color:#62768d}.error-text{margin:0;color:#b42318;font-weight:600}.success-text{margin:0;color:#136c3f;font-weight:600}.info-panel{display:grid;gap:.35rem;padding:.95rem 1rem;border-radius:16px;border:1px solid #bfdbfe;background:#eff6ff;color:#12365f}.info-panel strong,.info-panel span{margin:0}.centered-message{min-height:40vh;display:grid;place-items:center;color:#5a6f86}.sample-box,.code-block{padding:1rem;background:#0f1724;color:#edf3fb;border-radius:18px}.sample-box{display:grid;gap:.85rem}.sample-io-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem}.sample-io-block{display:grid;gap:.45rem}.sample-io-label{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#9fb2c8}.compact-input{min-width:180px}.table-actions{display:flex;flex-wrap:wrap;gap:.55rem}.code-editor{min-height:420px;font-family:IBM Plex Mono,Cascadia Code,monospace;background:#0f1724;color:#edf3fb;border-color:#20324a}.preserve-linebreaks{white-space:pre-wrap}.checkbox-row{display:flex;gap:1rem;flex-wrap:wrap}.checkbox-row label{display:flex;align-items:center;gap:.5rem}.checkbox-row input{width:auto}.table-wrapper{overflow-x:auto}.admin-task-list-card{min-height:0}.admin-task-list-scroll{max-height:72vh;overflow:auto}.admin-task-table{min-width:760px}.admin-task-row.is-editing{background:#0d5bd40f}.admin-task-row td:last-child{width:1%;white-space:nowrap}.admin-task-actions{display:flex;gap:.55rem;justify-content:flex-end;flex-wrap:wrap}.test-editor-section{display:grid;gap:1rem}.test-editor-card{padding:1rem 1.1rem;border:1px solid #d9e3f2;border-radius:1rem;background:#f8fbff}.test-editor-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.test-editor-toolbar strong{display:block;margin-bottom:.2rem}.test-editor-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.test-editor-counter{min-width:4.25rem;text-align:center;font-weight:700;color:#58769d}.test-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.quiz-option-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.75rem;align-items:center}.quiz-task-hint{padding:1rem 1.1rem;border:1px solid #d9e3f2;border-radius:1rem;background:#f7faff}.quiz-options-list,.quiz-review-list{display:grid;gap:.9rem}.quiz-option-card,.quiz-review-card{display:flex;gap:.8rem;align-items:flex-start;padding:.95rem 1rem;border:1px solid #d9e3f2;border-radius:1rem;background:#f8fbff}.quiz-option-card.selected{border-color:#3755ff;background:#3755ff14}.quiz-option-card input{width:auto;margin-top:.2rem}.quiz-option-index{font-weight:700;color:#58769d}.quiz-review-card{display:block}.quiz-review-card.selected{border-color:#3755ff}.quiz-review-card.correct{background:#28b67514;border-color:#28b67547}.quiz-review-head{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:.6rem}@media(max-width:960px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;overflow:visible;padding-bottom:1rem}.content{padding:1rem}.two-column-grid,.three-column-grid,.admin-block-toolbar,.inline-form-grid,.quiz-option-row{grid-template-columns:1fr}.test-editor-toolbar,.test-editor-actions{flex-direction:column;align-items:stretch}.test-editor-grid,.submission-metrics-grid,.public-test-diff,.technical-details-grid,.sample-io-grid{grid-template-columns:1fr}.topic-stage-head,.topic-flow-nav{flex-direction:column;align-items:stretch}.course-topic-button{flex-basis:190px;min-width:190px}}
