:root{color:#233047;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#233047;--muted:#78849a;--line:#e6eaf1;--purple:#6854dd;--purple-dark:#5845ca;--lavender:#f1efff;--green:#219870;--shadow:0 12px 35px #2936530e;background:#f5f7fb;font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;scroll-padding-top:92px}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #6854dd5c}.app-shell{min-height:100vh}.topbar{border-bottom:1px solid var(--line);z-index:10;background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{color:#fff;letter-spacing:-.8px;background:#252e46;border-radius:12px;place-items:center;width:40px;height:40px;font:800 15px/1 system-ui,sans-serif;display:grid}.brand-mark span{color:#9a8cff}.brand-copy{gap:2px;display:grid}.brand-copy strong{color:#202b42;letter-spacing:-.2px;font:800 14px system-ui,sans-serif}.brand-copy small{color:#8a94a7;font-size:11px}.topbar-right{align-items:center;gap:18px;display:flex}.free-badge{color:#328568;background:#f4fbf7;border:1px solid #dcefe7;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:700}.free-badge span{color:#35af7e;margin-right:6px;font-size:8px}.menu-toggle{display:none}.workspace{min-height:calc(100vh - 76px);display:flex}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;flex:0 0 242px;width:242px;padding:27px 15px 20px;display:flex}.nav-caption{color:#9aa4b5;letter-spacing:1.1px;margin:0 0 10px;padding:0 11px;font-size:9px;font-weight:800}.nav-caption-spaced{margin-top:25px}.nav-link{color:#68758b;border-radius:8px;align-items:center;gap:11px;min-height:41px;margin:2px 0;padding:0 10px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav-link:hover{color:var(--purple);background:#f8f7ff}.nav-link.is-active{color:var(--purple);background:#f1efff;font-weight:700}.nav-icon{text-align:center;color:#8d98aa;width:17px;font-size:14px}.is-active .nav-icon{color:var(--purple)}.nav-level{color:#a0a9b8;letter-spacing:.4px;margin-left:auto;font-size:8px;font-weight:800}.nav-level.level-advanced{color:#cf8a50}.nav-level.level-intermediate{color:#5389bb}.sidebar-note{background:#faf9ff;border:1px solid #ebe8ff;border-radius:11px;margin:auto 2px 20px;padding:15px}.note-icon{width:25px;height:25px;color:var(--purple);background:#efedff;border-radius:8px;place-items:center;margin-bottom:9px;font-size:14px;display:grid}.sidebar-note strong{color:#3b4560;margin-bottom:5px;font-size:11px;display:block}.sidebar-note p{color:#818ba0;margin:0;font-size:10px;line-height:1.55}.sidebar-foot{color:#9aa4b5;border-top:1px solid #eef0f5;padding:13px 8px 0;font-size:10px}.sidebar-foot span{float:right;color:#69a88e}.main-content{flex:1;min-width:0;max-width:1400px;margin:0 auto;padding:30px 42px 0}.welcome-banner{color:#fff;background:linear-gradient(112deg,#272e49 1%,#35365e 60%,#51447f 100%);border-radius:16px;justify-content:space-between;align-items:center;min-height:273px;padding:35px 47px;display:flex;position:relative;overflow:hidden}.welcome-banner:after{content:"";pointer-events:none;border:1px solid #ffffff14;border-radius:50%;width:280px;height:280px;position:absolute;top:-180px;right:10%;box-shadow:0 0 0 30px #ffffff06,0 0 0 70px #ffffff05}.eyebrow{color:#8992a5;letter-spacing:1.25px;margin:0 0 10px;font-size:9px;font-weight:800}.welcome-banner .eyebrow{color:#b0a7ee}.welcome-banner h1{color:#fff;letter-spacing:-1.7px;margin:0;font:800 clamp(32px,3.5vw,43px)/1.12 system-ui,sans-serif}.welcome-banner h1 span{color:#aa9dff}.welcome-copy{color:#d0d2e1;max-width:455px;margin:13px 0 21px;font-size:12px;line-height:1.7}.button{cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:39px;padding:0 14px;font-size:11px;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.button:not(:disabled):active{transform:translateY(1px)}.button-primary{color:#fff;background:var(--purple)}.button-primary:hover:not(:disabled){background:var(--purple-dark)}.welcome-banner .button-primary{background:#8b79f0}.welcome-banner .button-primary:hover{background:#9b8af5}.button-secondary{color:#58657d;background:#fff;border-color:#e0e5ed}.button-secondary:hover:not(:disabled){color:var(--purple);background:#fcfbff;border-color:#b9afea}.button:disabled{color:#aeb5c2;cursor:not-allowed;background:#f3f5f8;border-color:#eaedf2}.button-small{min-height:32px;padding:0 11px;font-size:10px}.welcome-art{z-index:1;width:38%;min-width:260px;max-width:350px;position:relative}.art-window{background:#131628ab;border:1px solid #ffffff2e;border-radius:9px;padding-bottom:13px;overflow:hidden;transform:rotate(-2deg);box-shadow:0 15px 35px #0e0f202e}.art-window-top{border-bottom:1px solid #ffffff1a;align-items:center;gap:5px;height:32px;padding:0 11px;display:flex}.art-window-top i{background:#f28b79;border-radius:50%;width:6px;height:6px;display:block}.art-window-top i:nth-child(2){background:#eec674}.art-window-top i:nth-child(3){background:#77c6a0}.art-window-top span{color:#a6a8ba;margin-left:9px;font:9px ui-monospace,monospace}.art-code{color:#e3e2f1;white-space:nowrap;padding:15px 11px 11px;font:10px/2 ui-monospace,monospace}.art-code>span{color:#697089;width:25px;display:inline-block}.art-code b{color:#d5aaff;font-weight:500}.art-code em{color:#86d6c4;font-style:normal}.art-code q{color:#f1c47e}.art-check{color:#9fdfc0;background:#45a47924;border-radius:5px;margin:0 12px;padding:7px 9px;font-size:9px}.art-sparkle{color:#aaa0ff;position:absolute}.sparkle-one{font-size:25px;top:-19px;right:-14px}.sparkle-two{color:#f4bd77;font-size:17px;bottom:7px;left:-22px}.page-heading{margin:31px 0 18px}.overview-heading{justify-content:space-between;align-items:end;display:flex}.page-heading h2{color:var(--ink);letter-spacing:-.55px;margin:0;font:800 22px system-ui,sans-serif}.section-subtitle{color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.65}.exercise-count{color:#97a1b0;letter-spacing:.7px;margin-bottom:4px;font-size:9px;font-weight:800}.overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.overview-card{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:197px;padding:17px 18px 15px;text-decoration:none;transition:box-shadow .16s,transform .16s,border-color .16s;box-shadow:0 3px 12px #29365305}.overview-card:hover{box-shadow:var(--shadow);border-color:#d6cffb;transform:translateY(-2px)}.card-symbol{color:#705dde;background:#f0edff;border-radius:9px;place-items:center;width:32px;height:32px;margin-bottom:13px;font-size:15px;display:grid}.symbol-1{color:#449a85;background:#e9f7f2}.symbol-2{color:#dc9b4a;background:#fff5e7}.symbol-3{color:#538cc1;background:#eaf4fc}.symbol-4{color:#b06495;background:#fbecf5}.symbol-5{color:#c77853;background:#fff0e9}.overview-card-top{justify-content:space-between;align-items:center;display:flex}.difficulty-pill{color:#7461d6;background:#f1efff;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700}.difficulty-intermediate{color:#4d81ad;background:#ecf5fc}.difficulty-advanced{color:#b87942;background:#fff3e8}.card-arrow{color:#a0a9b8;font-size:14px}.overview-card h3{color:#2f3b52;margin:10px 0 5px;font:700 13px system-ui,sans-serif}.overview-card p{color:#8490a3;min-height:33px;margin:0;font-size:10px;line-height:1.6}.card-action{color:#6957d7;align-items:center;gap:7px;margin-top:12px;font-size:10px;font-weight:700;display:flex}.framework-note{color:#828ca0;background:#fbfaff;border:1px solid #e8e6f9;border-radius:9px;align-items:flex-start;gap:10px;margin:19px 0 32px;padding:13px 15px;display:flex}.framework-note>span{color:#8170df;margin-top:1px;font-size:17px}.framework-note p{margin:0;font-size:10px;line-height:1.6}.framework-note strong{color:#4b5670}.exercise-heading{margin:5px 0 19px}.breadcrumb{color:#9aa4b3;align-items:center;gap:9px;margin:0 0 20px;font-size:10px;display:flex}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{color:var(--purple)}.heading-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.heading-row h1{color:var(--ink);letter-spacing:-1px;margin:0;font:800 29px system-ui,sans-serif}.heading-row>.difficulty-pill{flex-shrink:0;margin-right:3px}.objective{color:#757f96;background:#faf9ff;border:1px solid #ebe9fc;border-radius:8px;align-items:flex-start;gap:9px;margin-top:18px;padding:12px 14px;display:flex}.objective>span{color:var(--purple)}.objective p{margin:0;font-size:10px;line-height:1.6}.objective strong{color:#49546b;margin-right:6px}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.exercise-card{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0;padding:17px 18px;box-shadow:0 3px 12px #29365305}.exercise-grid>.exercise-card:only-child,.exercise-grid>.exercise-card:last-child:nth-child(odd){grid-column:1/-1}.exercise-card-head{border-bottom:1px solid #eff1f5;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:13px;display:flex}.exercise-card-head h2{color:#344057;margin:0;font:700 13px system-ui,sans-serif}.exercise-card-head p{color:#8993a5;margin:5px 0 0;font-size:10px;line-height:1.5}.task-count{color:#a4adbb;letter-spacing:.8px;flex-shrink:0;margin-top:1px;font-size:8px;font-weight:800}.task-prompt{color:#68758b;gap:8px;padding:11px 0 12px;display:flex}.task-check{color:#7663dc;border:1px solid #d9d4f8;border-radius:50%;flex:0 0 16px;place-items:center;width:16px;height:16px;margin-top:1px;font-size:9px;display:grid}.task-prompt p{margin:0;font-size:10px;line-height:1.55}.task-prompt strong{color:#4b5870;margin-bottom:2px;font-size:10px;display:block}.exercise-card-body{gap:13px;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{color:#59667c;gap:6px;min-width:0;font-size:10px;font-weight:700;display:grid}.field input,.field select,.field textarea{color:#354158;background:#fff;border:1px solid #dfe4ec;border-radius:6px;width:100%;min-width:0;min-height:37px;padding:9px 10px;font-size:10px;font-weight:400}.field textarea{resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#adb5c2}.field input:disabled{color:#9da6b4;background:#f3f5f8}.field input[readonly]{color:#647188;background:#f8f9fb}.field-narrow{max-width:280px}.result-box{color:#4d5a72;background:#f8f9fc;border:1px solid #e9edf2;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;min-height:40px;padding:9px 11px;font-size:10px;line-height:1.5;display:flex}.result-label{color:#8d98a9}.result-box strong{color:#46536a;font-weight:600}.hint-line{color:#939dad;font-size:9px}.hint-line span{color:#8491a5;margin-right:5px}.choice-fieldset{border:0;min-width:0;margin:0;padding:0}.choice-fieldset legend{color:#59667c;margin-bottom:10px;font-size:10px;font-weight:700}.choice-list{flex-wrap:wrap;gap:8px 17px;display:flex}.choice-list-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.choice{color:#59667c;cursor:pointer;align-items:center;gap:7px;font-size:10px;display:flex}.choice input{width:14px;height:14px;accent-color:var(--purple);margin:0}.result-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.result-actions .result-box{flex:1}.button-demo-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.text-button{color:#7362d9;cursor:pointer;background:0 0;border:0;width:fit-content;padding:2px 0;font-size:10px;font-weight:700}.text-button:hover{text-decoration:underline}.callout{border:1px solid;border-radius:8px;align-items:flex-start;gap:10px;margin-top:15px;padding:12px 14px;display:flex}.callout>span{margin-top:1px;font-size:14px}.callout p{margin:0;font-size:10px;line-height:1.6}.callout strong{margin-right:4px}.callout-blue{color:#7185a2;background:#f7f9fe;border-color:#e2eafa}.callout-blue>span,.callout-blue strong{color:#5c79ab}.callout-amber{color:#917c62;background:#fffcf6;border-color:#f5ead8}.callout-amber>span,.callout-amber strong{color:#bc8a48}.registration-form{gap:15px;display:grid}.registration-form .field-grid{gap:13px}.field-error input{border-color:#dc777a}.error-message{color:#c64e58;font-size:9px;font-weight:500}.terms-choice{width:fit-content}.form-actions{gap:9px;display:flex}.success-message{color:#4b8d71;background:#f3fbf6;border:1px solid #d4ede2;border-radius:7px;gap:10px;padding:12px;display:flex}.success-message>span{background:#dff3e8;border-radius:50%;flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:11px;display:grid}.success-message strong{color:#35815f;font-size:11px}.success-message p{color:#71917f;margin:3px 0 0;font-size:10px}.table-toolbar{justify-content:space-between;align-items:end;gap:12px;display:flex}.search-field{width:min(100%,330px);position:relative}.search-field input{padding-right:30px}.search-icon{color:#8793a6;font-size:17px;font-weight:400;position:absolute;bottom:8px;right:11px}.table-scroll{border:1px solid #edf0f4;border-radius:7px;width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}thead{background:#f8f9fc}th,td{color:#69768b;border-bottom:1px solid #edf0f4;padding:10px 11px;font-size:9px}thead th{color:#8a95a6;letter-spacing:.35px;font-size:8px;font-weight:800}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tbody tr:hover{background:#fcfbff}.sort-button{color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;background:0 0;border:0;padding:0}.sort-button:hover{color:var(--purple)}.employee-id{color:#7d70c7;font:9px ui-monospace,monospace}.employee-name{color:#425069;font-weight:700}.status-pill{color:#42836b;background:#eef8f2;border-radius:99px;align-items:center;gap:5px;padding:4px 7px;font-size:8px;font-weight:700;display:inline-flex}.status-pill i{background:#47ae7d;border-radius:50%;width:5px;height:5px}.status-away{color:#ae8250;background:#fff6e9}.status-away i{background:#d6a252}.row-action{color:#7063c5;cursor:pointer;background:#fff;border:1px solid #e7e8f1;border-radius:5px;padding:5px 7px;font-size:8px;font-weight:700}.row-action:hover{background:#faf9ff;border-color:#cfc9f2}.table-foot{color:#8a95a5;justify-content:space-between;gap:8px;font-size:9px;display:flex}.table-foot strong{color:#59667d}.empty-state{color:#79869a;text-align:center;background:#f8f9fc;border-radius:6px;padding:18px;font-size:10px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading-result{color:#748096;background:#f8f9fc;border:1px solid #e9edf2;border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:9px 11px;font-size:10px;display:flex}.loading-result.is-loading{color:#725fd2;background:#faf9ff;border-color:#e6e2fb}.spinner{border:2px solid #d9d3fa;border-top-color:#7968dc;border-radius:50%;width:13px;height:13px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.success-icon{color:#33946d;background:#e5f5ed;border-radius:50%;flex:0 0 17px;place-items:center;width:17px;height:17px;font-size:10px;display:inline-grid}.revealed-panel{background:#f5fbf7;border:1px solid #d9eee4;border-radius:7px;align-items:center;gap:9px;padding:11px;display:flex}.revealed-panel strong{color:#418363;font-size:10px}.revealed-panel p{color:#82968b;margin:3px 0 0;font-size:9px}.progress-track{background:#eeeff4;border-radius:9px;height:6px;overflow:hidden}.progress-fill{border-radius:inherit;background:#8b7ae5;width:8%;height:100%;transition:width .3s;display:block}.progress-processing{width:54%}.progress-complete{background:#4aae81;width:100%}.process-status{color:#8b96a7;justify-content:space-between;font-size:9px;display:flex}.process-status strong{color:#526078}.small-muted{color:#99a2b1;margin:0;font-size:9px}.reset-bar{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:15px 0 27px;padding:13px 15px;display:flex}.reset-bar p{color:#8792a4;margin:0;font-size:10px}.reset-bar strong{color:#556178}.modal-dialog{width:min(100%,390px);max-width:calc(100% - 40px);max-height:calc(100% - 40px);color:inherit;background:#fff;border:1px solid #edeef4;border-radius:13px;margin:auto;padding:25px;position:relative;overflow-y:auto;box-shadow:0 25px 80px #181d2f3b}.modal-dialog::backdrop{background:#1c22346b}.modal-close{color:#8c96a6;cursor:pointer;background:0 0;border:0;border-radius:6px;width:28px;height:28px;font-size:20px;position:absolute;top:12px;right:13px}.modal-close:hover{color:#45516a;background:#f4f5f8}.modal-icon{width:35px;height:35px;color:var(--purple);background:var(--lavender);border-radius:10px;place-items:center;margin-bottom:13px;display:grid}.modal-dialog h2{color:#303b52;margin:0;font:800 17px system-ui,sans-serif}.modal-dialog p{color:#778399;margin:8px 0 20px;font-size:11px;line-height:1.65}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.toast-message{z-index:30;color:#3f8b64;background:#f7fcf8;border:1px solid #d7eddf;border-radius:8px;align-items:center;gap:9px;max-width:calc(100vw - 32px);padding:12px 13px;animation:.2s ease-out toast-in;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 9px 30px #203f2f1f}.toast-message>span{background:#e1f3e7;border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.toast-message strong{font-size:10px}.toast-message button{color:#739580;cursor:pointer;background:0 0;border:0;margin-left:5px;font-size:17px}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pagination-toolbar,.pagination-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-size-field{align-items:center;gap:8px;display:flex}.page-size-field select{width:auto;min-height:32px;padding:6px 25px 6px 9px}.pagination-footer{padding-top:4px}.record-range{color:#7c8799;font-size:9px}.record-range strong{color:#4d5a72}.pagination-controls{align-items:center;gap:4px;display:flex}.page-button{color:#68758b;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:5px;min-width:29px;height:29px;padding:0 6px;font-size:10px}.page-button:hover:not(:disabled),.page-button.page-active{color:#6553d1;background:#f3f1ff;border-color:#e5e1fb}.page-button:disabled{color:#c1c7d0;cursor:not-allowed;background:#f8f9fb}.page-button.page-active{font-weight:800}.filter-panel{background:#fafbfc;border:1px solid #edf0f4;border-radius:8px;grid-template-columns:minmax(180px,1.6fr) repeat(2,minmax(130px,1fr)) minmax(115px,.8fr) auto;align-items:end;gap:10px;padding:13px;display:grid}.filter-search{position:relative}.clear-filters{margin-bottom:1px}.filter-summary{color:#8792a4;font-size:10px}.filter-summary strong{color:#4c5a72}.filter-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.product-result{background:#fff;border:1px solid #edf0f4;border-radius:7px;justify-content:space-between;align-items:center;gap:9px;min-width:0;padding:12px;display:flex}.product-result h3{color:#46536a;margin:0 0 4px;font-size:10px}.product-result>div>span{color:#8a95a5;font-size:9px}.product-price{color:#4d5b72;flex:none;font-size:10px}.date-range-error{color:#b04f55;background:#fff7f7;border:1px solid #f1d8d9;border-radius:6px;padding:10px 11px;font-size:10px}.mouse-hover-target,.mouse-double-target{color:#6654cf;cursor:pointer;background:#f7f6ff;border:1px solid #dcd7f6;border-radius:7px;width:fit-content;min-height:42px;padding:0 16px;font-size:10px;font-weight:700;position:relative}.mouse-hover-target:hover,.mouse-hover-target:focus-visible,.mouse-double-target:hover{background:#f0edff;border-color:#b9afea}.mouse-tooltip{z-index:2;color:#fff;opacity:0;pointer-events:none;background:#303850;border-radius:5px;width:max-content;max-width:210px;padding:7px 9px;font-size:9px;font-weight:500;transition:opacity .12s,transform .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,3px);box-shadow:0 5px 14px #19203229}.mouse-hover-target:hover .mouse-tooltip,.mouse-hover-target:focus-visible .mouse-tooltip{opacity:1;transform:translate(-50%)}.context-target{color:#526078;background:#fafbfc;border:1px dashed #d9dfea;border-radius:7px;align-content:center;justify-items:center;gap:5px;min-height:85px;padding:12px;font-size:10px;display:grid;position:relative}.context-menu{z-index:4;background:#fff;border:1px solid #e6e9ef;border-radius:7px;width:160px;padding:5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 9px 25px #24304724}.context-menu button{color:#536078;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:4px;width:100%;padding:8px;font-size:10px}.context-menu button:hover,.context-menu button:focus-visible{color:#6553d1;background:#f4f2ff}.keyboard-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.uploaded-file-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.uploaded-file-list li{background:#fafbfc;border:1px solid #edf0f4;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.uploaded-file-list li>span{gap:3px;min-width:0;display:grid}.uploaded-file-list strong{color:#556178;text-overflow:ellipsis;font-size:10px;overflow:hidden}.uploaded-file-list small{color:#909aaa;font-size:9px}.upload-errors{color:#ae5258;background:#fff7f7;border:1px solid #f1d8d9;border-radius:6px;padding:10px 12px;font-size:10px}.upload-errors ul{margin:6px 0 0;padding-left:17px;line-height:1.6}.upload-progress{color:#7562d7;align-items:center;gap:9px;font-size:9px;font-weight:700;display:flex}.upload-progress .progress-track{flex:1}.upload-progress .progress-fill{background:#7461dc;transition:width .15s linear}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.download-card{cursor:pointer;text-align:left;background:#fff;border:1px solid #e8ebf1;border-radius:8px;align-items:center;gap:10px;min-width:0;padding:12px;display:flex}.download-card:hover{background:#fcfbff;border-color:#cfc8f2}.download-file-icon{color:#6c59d6;background:#f1efff;border-radius:6px;flex:0 0 31px;place-items:center;width:31px;height:34px;font-size:17px;display:grid}.download-card>span:nth-child(2){gap:4px;min-width:0;display:grid}.download-card strong{color:#4c5870;text-overflow:ellipsis;font-size:10px;overflow:hidden}.download-card small{color:#929cad;font-size:9px}.download-arrow{color:#8c96a6;margin-left:auto}.task-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.task-column{background:#f8f9fc;border:1px solid #e8ebf1;border-radius:8px;min-width:0;min-height:180px;padding:10px;transition:border-color .15s,background .15s}.task-column.accepts-drop{background:#f5f3ff;border-style:dashed;border-color:#b7adee}.task-column-head{justify-content:space-between;align-items:center;margin-bottom:9px;display:flex}.task-column-head h3{color:#4c5971;margin:0;font-size:10px}.task-column-head>span{color:#768298;text-align:center;background:#fff;border-radius:99px;min-width:19px;padding:3px 5px;font-size:9px}.task-column-content{gap:7px;display:grid}.draggable-task{cursor:grab;background:#fff;border:1px solid #e7eaf0;border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:5px 7px;padding:9px;display:grid}.draggable-task:active{cursor:grabbing}.draggable-task.task-dragging{opacity:.5}.drag-handle{color:#a4adbb;font-size:13px}.draggable-task strong{color:#58657c;font-size:9px;line-height:1.5}.draggable-task select{color:#788398;background:#fff;border:1px solid #e4e8ef;border-radius:4px;grid-column:2;width:100%;min-width:0;padding:5px;font-size:8px}.drop-empty{color:#a2abba;text-align:center;margin:12px 0;font-size:9px}.auth-form{gap:14px;max-width:620px;display:grid}.auth-session{background:#f6fbf7;border:1px solid #dcefe5;border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.auth-avatar{color:#368060;background:#e4f4e9;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.auth-session>div{flex:1}.auth-session strong{color:#3f795f;font-size:10px}.auth-session p{color:#84978c;margin:3px 0 0;font-size:9px}.credential-note{color:#78849a;background:#f8f9fc;border:1px solid #e9edf2;border-radius:6px;gap:5px;padding:11px 12px;font-size:9px;display:grid}.credential-note strong{color:#58657c;font-size:10px}.credential-note code{color:#6755cc;background:#efedff;border-radius:3px;padding:1px 4px;font-size:9px}.network-controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.network-controls .field{width:min(100%,270px)}.network-result{border:1px solid;border-radius:7px;align-items:flex-start;gap:10px;padding:12px;display:flex}.network-result strong{font-size:10px}.network-result p{margin:4px 0 0;font-size:10px;line-height:1.5}.network-success{color:#428063;background:#f5fbf7;border-color:#d7ede1}.network-error{color:#a9585b;background:#fff8f8;border-color:#f0dcdc}.challenge-notice{margin:0 0 15px}.challenge-selector{color:#5f50bf;cursor:pointer;background:#f7f6ff;border:1px solid #dcd7f6;border-radius:6px;min-height:39px;padding:0 12px;font-size:10px;font-weight:700}.challenge-class-0{background:#f7f6ff}.challenge-class-1{color:#3b8668;background:#f1faf5;border-color:#cce9dc}.challenge-class-2{color:#ae793f;background:#fff9f0;border-color:#f1dfc5}.challenge-hidden-message{color:#6755c8;background:#f8f7ff;border:1px solid #e8e4fb;border-radius:6px;margin:0;padding:10px;font-size:10px;display:none}.challenge-hidden-message.challenge-message-visible{display:block}.moving-target-stage{background:#fafbfc;border:1px dashed #e1e5ec;border-radius:7px;min-height:120px;position:relative}.moving-target{color:#6754d0;cursor:pointer;background:#f4f2ff;border:1px solid #dcd7f6;border-radius:5px;min-height:31px;padding:0 9px;font-size:9px;font-weight:700;transition:left .2s,top .2s;position:absolute}.moving-position-0{top:9px;left:9px}.moving-position-1{top:9px;right:9px}.moving-position-2{bottom:9px;left:9px}.moving-position-3{bottom:9px;right:9px}.challenge-list{color:#68758b;background:#fafbfc;border:1px solid #edf0f4;border-radius:6px;margin:0;padding:9px 9px 9px 29px;font-size:9px;line-height:1.8}.practice-iframe{background:#fff;border:1px solid #e5e9ef;border-radius:8px;width:100%;min-height:340px;display:block}.calendar-widget{gap:11px;width:min(100%,340px);display:grid}.calendar-heading{justify-content:space-between;align-items:center;display:flex}.calendar-heading strong{color:#4d5a72;font-size:11px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.calendar-weekday{color:#969faf;text-align:center;padding:5px 0;font-size:8px;font-weight:700}.calendar-day,.calendar-blank{aspect-ratio:1;place-items:center;min-width:0;display:grid}.calendar-day{color:#5b6880;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:5px;padding:0;font-size:9px}.calendar-day:hover:not(:disabled),.calendar-day.calendar-selected{color:#6250ce;background:#f1efff;border-color:#d8d1fa}.calendar-day:disabled{color:#c5cad2;cursor:not-allowed;background:#f5f6f8;text-decoration:line-through}.page-footer{color:#9aa4b4;border-top:1px solid #e7eaf0;justify-content:space-between;align-items:center;gap:10px;margin:29px 0 0;padding:17px 0 20px;font-size:9px;display:flex}.page-footer a{color:#7a6bd4;font-weight:700;text-decoration:none}.page-footer a:hover{text-decoration:underline}.footer-dot{color:#c0c6d0;padding:0 4px}@media (width>=1450px){.main-content{width:100%}}@media (width<=1100px){.main-content{padding:25px 25px 0}.sidebar{flex-basis:220px;width:220px}.welcome-banner{padding:31px}.overview-grid,.filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.task-board{grid-template-columns:1fr}}@media (width<=760px){.topbar{height:66px;padding:0 17px}.brand-mark{width:36px;height:36px}.brand-copy small{display:none}.topbar-right{gap:10px}.free-badge{padding:6px 8px;font-size:9px}.menu-toggle{color:#59667d;background:#fff;border:1px solid #e2e6ee;border-radius:6px;justify-content:center;align-items:center;min-height:34px;padding:0 10px;font-size:10px;font-weight:700;display:inline-flex}.workspace{min-height:calc(100vh - 66px)}.sidebar{z-index:9;width:270px;transition:transform .2s;position:fixed;top:66px;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:10px 0 30px #23304714}.sidebar.sidebar-open{transform:translate(0)}.main-content{width:100%;padding:19px 18px 0}.welcome-banner{min-height:240px;padding:25px 23px}.welcome-art{width:40%;min-width:190px}.welcome-banner h1{font-size:34px}.welcome-copy{font-size:11px}.overview-heading{align-items:flex-start}.overview-grid{gap:10px}.overview-card{min-height:190px;padding:14px}.exercise-grid{gap:11px}}@media (width<=560px){.free-badge{display:none}.main-content{padding:14px 13px 0}.welcome-banner{min-height:0;padding:23px 20px}.welcome-art{display:none}.welcome-banner h1{font-size:33px}.welcome-copy{margin:10px 0 16px}.overview-heading{margin-top:25px}.page-heading h2{font-size:19px}.overview-grid{grid-template-columns:1fr}.overview-card{grid-template-columns:40px 1fr auto;align-items:center;column-gap:11px;min-height:0;padding:12px;display:grid}.overview-card .card-symbol{grid-area:1/1/span 3;margin:0}.overview-card-top{grid-area:1/2/auto/4}.overview-card h3{grid-area:2/2;margin:7px 0 2px}.overview-card p{grid-area:3/2/auto/4;min-height:0}.overview-card .card-action{grid-column:2/4;margin-top:8px}.card-arrow{margin-left:auto}.exercise-heading{margin-top:1px}.breadcrumb{margin-bottom:15px}.heading-row h1{font-size:25px}.exercise-grid{grid-template-columns:1fr}.exercise-grid>.exercise-card:only-child,.exercise-grid>.exercise-card:last-child:nth-child(odd){grid-column:auto}.exercise-card{padding:14px}.field-grid{grid-template-columns:1fr;gap:10px}.choice-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table-toolbar{flex-direction:column;align-items:stretch}.search-field{width:100%}.table-toolbar>.button{align-self:flex-start}.table-foot{flex-direction:column;gap:3px}.pagination-footer{flex-direction:column;align-items:flex-start}.pagination-controls{flex-wrap:wrap;width:100%}.filter-panel,.filter-results,.download-grid,.keyboard-form{grid-template-columns:1fr}.reset-bar,.page-footer{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
